Contract dc7fbf08126a0eaa8122f27afd958e683a04c94a5eb1a65616494557414fa647

← Back to Index 📥 Download WASM

Meta

binver 0.6.0
rssdkver 25.0.2#59a2e01a26f9330f8d516690911cb2ca87a6f1b3
rsver 1.93.0

Instances

  • CA2J2ALAZ3DDTFTLZX5XRZ7M25L5MWRB42KDEKE7KBGJOPLBSUTDFQSK
  • CA77XHKTOMWDNCJ5U34G2CC7I2JG23PLEUBYP46J4RQWAQ5GLESFLK7E
  • CADZMALIOM7LU6HKCSLXL4GTPCRQDAY5USBLJPIGOB73LHQWLAKACJQY
  • CAES5AG54V2QERPL3HBQZLMICV3Z2JC6UAXWYMXKHF3CLB2PNIWZYFRV
  • CAFOQNMKPVT4P6TANQPOQRFQ6CVM7XX5WZTZOEMXD7SWW2IF27CMOSOS
  • CAIBLYJZ5ZVLR5ZILIKTAGMOJU4IW7TUQB3S7OJPFHC7ZW42LLZSD4U3
  • CAKULJC2EWEJVXXOYETYXVDR46QLBU6OXTWZPNOIVUH5JEGVHGCMEEUW
  • CAMAVDGQMO5HS3JO7ZCU535CCXZXSV4D27LZNDBNE6DL3UUGHMFVBBTX
  • CAMW3QWW43SUVGUIAAIKCZO32EEGCNBENOVVYPHY46FZSZMFSL63DQWG
  • CAOPC6BGQWEPXP2WHIWDXXSJXYKHAH3K4U66ZMP6DS33TURYL4J7SJCV
  • CAOWQMK2W3VOOS5R2HKTA7QAB7IUADO6BJ7I4XVAWPLMIOZG33SE2GWW
  • CAQQ7N4JVWIAFLC4KQ2RY2EIAKZ5WLSDBO3AK3ITV5XQRZVTFWUAUYQO
  • CAR4DNWW5KMTJ6KXL7UTXYFSQEWXS57TEGUJ5MAKMTMT32LXBMWGT45C
  • CASF3MOFSDHU7BGIIHZI7WYJV6RZ5XL4DVT4KMJHWMOUA254WUVOQ74D
  • CAT4I6AB2OQE55SA6FL2CUSH4U22YNB3ZS4MQHNYFUURR44ISMYHMIXM
  • CAWRLN5P5PSCJKASAJ7QLJVHSRPRG5M2QJO3SODJIXJMM55I6VRHMBQA
  • CAX77CLYGV4RZKFTR5LDI6FJ65NNVYG57LKGC4R2G35O7LBNHB4RYYZ3
  • CAYPLLA6G35TCD6PD7ZQRQJJZZTO3AVUSKQ2NT6G3CJWUFUEQNYXSPFN
  • CAYSZNRF7JHXNZWSMFTUO3FDNBDJJY4TURSE4QEWCQFXSBWTRPMZUPN6
  • CB274RQH34G66ZSURX4YR7JP4UBZASALUTFPLEM35BUHQTIJ6KNHZI4J
  • CB3EDBBTKQE4DQVXLOQHM3HTJ7ESOE2ZNN2MEF3ARMLHSNSWFRMDP7AG
  • CB3VKOOZ62AADKLCN7XPMSUSH6N656V36S44T7P2ACFZPMOPLUZYXCZM
  • CB4V5XEA4UEMPJ6FU6BWNEYWL4BP5OSVXKASBY4JCDER3PGXDFTW7CSH
  • CB5Y5X45PB3LGLVRQVGF4GCRANPSL4O3JYSYAQFVMKSNBBIGLTURBBZM
  • CB7Q3NVJT3FW2ZKNTFR675NQCQYPZ3753A55KJMKH4MLPFDKP4J733LC
  • CBAXHX2HQZQWHZYOEJTCJKTIKEZGV3KLPDMKTOM3STLTLXEXCJDB3YO4
  • CBCS4UBJ3RL6SX2OFEFF3F3BHOMRX7SCGQNDJWJC6VRJRSPOO2L7I2NH
  • CBCSDSYXEBPCMUQUI2PRXZWJPWWXXTHLQISZREXPW6UTC6HVFQKYQTCT
  • CBFKYZXL24NH5BNBDNS2R44ILLNFRCTFQW5VNLNXMVXBJ4WYRFO3RYU5
  • CBHRZLM3G4F6MHCAQ5OZYLDKMPJFB42XMROYPAC7YJUTB23TMHZ3QTQB
  • CBJLC65O6KYETFO2TD456COFXFGDSEDVQ4TTKWO6KXCQT4ZIANVT6FTL
  • CBLLTKTWFM7CQJKOY5EFCNWEIBTLIV6T7O2HD2YVN2O34QQX4XVPCZZD
  • CBNUBOAEYT2YERFQEQOBA4E7QFDBGV4YQMJ45HUU5ZIELT37NW62TZ7F
  • CBQTE377AF2QYDIXKF3BHGJYQNE2PEUSBCJEZ3BG4AJBZQHYOSDX6GRU
  • CBRYEKZLFRU6YSYZO2EMKQKLWTMISQL5EIJDKOQZNUNVPWCCDSDP7GG5
  • CBUVGRZFP5XD7672ZIHCQZPPA7AINXBU6PMJC272GIKTA3JNNTLJKGLX
  • CBV7P4QNP2QNTHP4OZT4NPBOSDQNUAS3I7HFLX6DKSSQNTIQYYK7NAO6
  • CBVFKDO3WPO5RQ6KXHXX4TZRO2CHPIUJN334QXSGGV2PCZZCUD3D4EOG
  • CBVUOYNKMMG6TDUMUD2YKUM6DYPCXNTUCGPVC6HUC22BA2LRV5L45D3I
  • CBWFDFTYWPHRXDKXWL53FQ33KHCUJHEG3TVYSQX4V5KEO5XVA2N7OGDQ
  • CC2X4LS2VUQVP2JO6SY3OJUXC7T7V7VJHPF7OEQNDQZKHP5VLAI5VC6H
  • CC343EQBPAPT553ZYWNT5WRMPD5Z4PAAPKAFKY4FE5EVESY7IYWQ4OKT
  • CC36GZNFKT2G74DXSM27IDBNPX5ODRBI4RBAL4VP4D7AHITZLQCCYUUT
  • CC37CL2KOVNVAWIUCRUK6HKYDI444WX5KOVQCTAS6FO2CUA45VR6FWCB
  • CC3FXG4UNWXLFWZBVHDNK55WZGKFFYKGWAN2H3UKBXWQCERBURAKZLAK
  • CC456SKRY2LCVLIXXPMVYWC2DUGM2P6LU2JYXEOL323II6VC5BFYU4W2
  • CC6YPJED6ELNMNMWZWLJCAYCV3AHTDS5DPJGECJ5BXDVFEB6VPBRGNWM
  • CCFXG5SCFZ6MGKPA7P2ZLQN4DMY4AIJ3DHGAM2ZQUSM6IXN55NUSLKQY
  • CCITQNGBY3RKQHAMSIGC44E2U2UQ2EWLRSMGPUS2I63LEBJJGS2YG3IP
  • CCIXCRE6XQ4JYMIUULU3DXBNFLZAKOB5OQIDJW5FJDIBHQOWLAQVXCVK
  • CCJ2DYUVSASCSENRXHXJ7CIKGGFRHQA7XWNZ5NOYBPC32JPCR5KAOX4I
  • CCKNY6RV7TUQ3NX4GSRNPPTD25TLMGTBHTLQ532UOV3MJIRJINUQ4DKA
  • CCKXZJLBYX3LMKAXQWEFTXREBF3UXJWOBZS2N562UMFTWQ4GLL4WCTWS
  • CCT7IL56C4K4UXBGWJUAFUETBBSP6TNGLXYZSDHGDOEORDTQR3LBZELX
  • CCVCTKFLAUARJDVLV5VWSP2MBXWFUTIRB5JQHECFXHWDCK2P2PJXBLV2
  • CCWMXAQBCLZ24TN7RTDM7FDQ6DJKD2MDTO53IP4DFQJESTMCLR6TFE7N
  • CCWZYXJ5PBC24UWKCX3MJ252BMLLGKJBBZBJGZEWEP3VHSBHUQYZ7F2Z
  • CCXBWSQDFQHBRTLGXZAMW5KXQ7KMSL65YGYYIKSS644QWVM7FYQHPYIL
  • CCXJWZF62YFS54G4W7TANZT45NTG2KI2WT7LIZS44YQQKCSJRKILRHWK
  • CCY36XAI5IDXI2OOLOPNQK3FTKMRLMB2DIMMQTWAPRNPFPQU42SBHQ3T
  • CCYCPLW7OYTZZ7LRMP2ORNOZA77C3J3DGQXKVZH6DINIMMKKCVR2B2ET
  • CD2TGQDFCZFAQBUENE6MPFNH4MOX6QCXJWZNLERVXT2LBNECY3MVRLNZ
  • CD2WB6VVTHOTX7CIZPM7XCOFPMRJJTK6ROKCABF7FO7TU4NCLWIHRQWM
  • CD3NPXM4OMUVHX5SLFRQ752Z6CF7LUQHEMMOFMZ3PSZ3KX6KVYP2XEWR
  • CD4AFFQFCVA6HBNOTK4HKQAFJCWCSVTNZ7Y5YVIDVJFKWSFDUB7FU4YA
  • CD67RL5CRVXGIKHQBHLHIFNU24AX45TOP2M462AJFYJLRMQLBK5SPEWJ
  • CDAHR77W4KL4L7ZJWCWF536XHYNLVLR3LAEKGQPBRAA5PVRCPEND6WJR
  • CDAWRJDPZFCMV5D6YDQTYF7F2QZMNWUEFFHZLHVICKPCAA6QV7SXLD4Z
  • CDB553BC4QLZYMRH54PEFX32TYV66PFGFM7F44BJ5T5ZZ4WQEEXYQWE7
  • CDBUP5MPZMHFD35TJ6WK2WBX2YDLQEE2UW3OZVQJUI6AIRMOEFVQHZJR
  • CDCYCKLAEPA7NFRX3WDQLDVLTQYRBROXSQKOUKHGUCJDOOT4LNXYYIT3
  • CDD62KBO2TFB4CKWASS2FSOZ24QICHHNH6LV75LX6DPNEZM3UPFSAG7A
  • CDD6MJN4KTRBH22RGWS6VC4NOOXYPXCQRMRV4FNCC7WJ3FPQG2POMZE7
  • CDGIMY3FDOGWQT66LHJ6IN2INMSMSF4B4HHPXIXOM6MPR2KISCQQOYS5
  • CDHA55NTGANQEOW42VEYMMH53PC33TFY7ULUIS2Y3QACA5LEWEUNZ4TP
  • CDHOX7EBBI6GMUU5MOQAUW2BARMWN2T67JTV4UJLIKZG3HFKODOIUHF4
  • CDHQZWQKPGHN2GSPW4BZTRBLSAYDKGXVLDMLZXEPYQDAKK3F54XCO6SW
  • CDHYLSOTMR4KFLPEMWFEZH4IR73KM56EA3IRZIIBB25WJBL7YBJ6V7G3
  • CDIN7TFUQHUMBA2MZ3VWBTJR77USHACK7ULZQSFFQ6TNXIVWTVSSCJKB
  • CDJ3ATFS5MIC2PKT4YFJE57FPX45Z4574RKDCK2Z3FSXRODC357FJB25
  • CDJOHZ4HABK4X5AK5IP4VCCK4O6R3XJMWNPN7WINJGSFPGI5KCGY2QSA
  • CDJVJLUKFBGJHX5ZTE5K64FBQ6INDX442XODMKWXMFC2U5EG5GPYQZB5
  • CDKNZGWSCRMVN73RWLUMUMI6MPEVQASHLWBJYQYL7MXTDPHE5GWN65JA
  • CDLBLQDJOFQMBPQV5ZCMHQGWT55QAZSN3IRYSP5IJ54X3N2DQCMDEGWK
  • CDMAJLWV3TJF5L5RJIFCTJEA3LGGDIZTC3L7IR5L2MJIBY2VORRONW5P
  • CDMEUW6YGSE3HWOBQ2P4OD7YWFMHIDSDFF3YFCY4F7LQ3PNPLXT6LKZF
  • CDNVLSFBHWJ73WBHYYCKVIAJQNPM432UCZ2O5XOA7RUODH25TMYPW263
  • CDOE35FX65TJUAFKN6KNGN5QHTSQYHYF3IEJENGVHZ5Y5PKPQ3YKTJ3H
  • CDORJMGCBZRHRRMH3SD6RXHWZ63ET6KBDUP6Y2ERT3C6AO63BBS2YCFU
  • CDPTWZKJ5663EXG4JYLOMOINBE7OBKVJKEC5XCEPWB62YKITT2RMWSM4
  • CDR2F6UXSDJTWEM2EPH3X5NE4OMB2TTG6B6PPKXVMZFJ7JAVG6XXLVEG
  • CDSNHCMQESNZJIB5L5DUKZBUM7WXJD2BIL2VIH6PGP3M737HTTKMSYVN
  • CDUBEBP4HLCEC6H2QYXSIUPDENOKACTRX2PMZ4OXXHIRF4PDJUZGYOV2
  • CDUH7ZY5TCYB6HGWKRHFZVNOZCKCNTISEAYOKXT4EX7OQDMC2IPXDSQR
  • CDV3BUN26J4LXETZJXBBPX5OK76XF7AE2AKABHLU3FAUPLO2WULA4A2V
  • CDYH4D37XXE3C5VXINLA4NAV5EUEIOCZJC4RZF4OILUBECH52SHRM6C4

Interface

Execute a function on a target contract.

This provides a secure mechanism for the smart account to invoke functions on other contracts, such as updating policy configurations. Requires smart account authorization.

Arguments

  • target - Address of the contract to invoke
  • target_fn - Function name to call on the target contract
  • target_args - Arguments to pass to the target function
fn execute(
    env: soroban_sdk::Env,
    target: soroban_sdk::Address,
    target_fn: soroban_sdk::Symbol,
    target_args: soroban_sdk::Vec,
)
fn upgrade(
    env: soroban_sdk::Env,
    new_wasm_hash: soroban_sdk::BytesN<32>,
    operator: soroban_sdk::Address,
)

Add a policy to an existing context rule.

Requires smart account authorization.

fn add_policy(
    env: soroban_sdk::Env,
    context_rule_id: u32,
    policy: soroban_sdk::Address,
    install_param: soroban_sdk::Val,
)

Add a signer to an existing context rule.

Requires smart account authorization.

fn add_signer(env: soroban_sdk::Env, context_rule_id: u32, signer: Signer)

Verify authorization for the smart account.

This function is called by the Soroban host when authorization is required. It validates signatures against the configured context rules and policies.

Arguments

  • signature_payload - Hash of the data that was signed
  • signatures - Map of signers to their signature data
  • auth_contexts - Contexts being authorized (contract calls, deployments, etc.)

Returns

  • Ok(()) if authorization succeeds
  • Err(SmartAccountError) if authorization fails
fn __check_auth(
    env: soroban_sdk::Env,
    signature_payload: soroban_sdk::BytesN<32>,
    signatures: Signatures,
    auth_contexts: soroban_sdk::Vec,
) -> Result<(), soroban_sdk::Error>

Creates a default context rule with the provided signers and policies.

Arguments

  • signers - Vector of signers (Delegated or External) that can authorize transactions
  • policies - Map of policy contract addresses to their installation parameters
fn __constructor(
    env: soroban_sdk::Env,
    signers: soroban_sdk::Vec,
    policies: soroban_sdk::Map,
)

Remove a policy from an existing context rule.

Requires smart account authorization.

fn remove_policy(
    env: soroban_sdk::Env,
    context_rule_id: u32,
    policy: soroban_sdk::Address,
)

Remove a signer from an existing context rule.

Requires smart account authorization.

fn remove_signer(env: soroban_sdk::Env, context_rule_id: u32, signer: Signer)

Add a new context rule to the smart account.

Requires smart account authorization.

fn add_context_rule(
    env: soroban_sdk::Env,
    context_type: ContextRuleType,
    name: soroban_sdk::String,
    valid_until: Option,
    signers: soroban_sdk::Vec,
    policies: soroban_sdk::Map,
) -> ContextRule

Retrieve a specific context rule by its ID.

fn get_context_rule(env: soroban_sdk::Env, context_rule_id: u32) -> ContextRule

Retrieve all context rules of a specific type.

fn get_context_rules(
    env: soroban_sdk::Env,
    context_rule_type: ContextRuleType,
) -> soroban_sdk::Vec

Remove a context rule from the smart account.

Requires smart account authorization.

fn remove_context_rule(env: soroban_sdk::Env, context_rule_id: u32)

Retrieve the number of all context rules, including the expired ones.

fn get_context_rules_count(env: soroban_sdk::Env) -> u32

Update the name of an existing context rule.

Requires smart account authorization.

fn update_context_rule_name(
    env: soroban_sdk::Env,
    context_rule_id: u32,
    name: soroban_sdk::String,
) -> ContextRule

Update the expiration time of an existing context rule.

Requires smart account authorization.

fn update_context_rule_valid_until(
    env: soroban_sdk::Env,
    context_rule_id: u32,
    valid_until: Option,
) -> ContextRule

Imports

WebAssembly Text (WAT) ▶