diff --git a/WALLET_DIRECTORY.md b/WALLET_DIRECTORY.md index 9f2cb68..3884c85 100644 --- a/WALLET_DIRECTORY.md +++ b/WALLET_DIRECTORY.md @@ -17,54 +17,54 @@ be unsupported, contradicting the wallet -- click the name for their evidence · ## Wallet Overview & Primary Canton Network Features -| Feature | [Askardex Wallet](wallets/askardex-wallet.yaml) | [Dfns](wallets/dfns.yaml) | [Send](wallets/send.yaml) | -|---|---|---|---| -| **Wallet Overview** | | | | -|     Website | [https://wallet.askardex.com](https://wallet.askardex.com) | [https://www.dfns.co](https://www.dfns.co) | [https://cantonwallet.com](https://cantonwallet.com) | -|     Added | 2026-07-25 | 2026-07-24 | 2026-07-24 | -| **Wallet Type** | | | | -|     Retail / Enterprise | Retail | enterprise | retail | -|     Custody Type | Self-custodial | self-custodial | self-custodial | -|     Form factor (Mobile / Browser / Desktop / Browser Extension / Hardware) | mobile | browser | browser, mobile, browser-extension | -|     Deployment Model (Self-hosted / SaaS / Hybrid) | saas | self-hosted, saas, hybrid | saas | -| **Canton Coin** | | | | -|     CC support (transfers and holding) | [✅](proofs/askardex-wallet/askardex-wallet-self-attestation.md#cc-support-transfers-and-holding-cc_support) | [✅](proofs/dfns/dfns-self-attestation.md#cc-support-transfers-and-holding-cc_support) | ✅ | -|     Pre-approvals for CC | [✅](proofs/askardex-wallet/askardex-wallet-self-attestation.md#pre-approvals-for-cc-preapprovals) | [✅](proofs/dfns/dfns-self-attestation.md#pre-approvals-for-cc-preapprovals) | ✅ | -| **Token Standard** | | | | -|     CIP-0056 token standard transfer support | [✅](proofs/askardex-wallet/askardex-wallet-self-attestation.md#cip-0056-token-standard-transfer-support-cip_0056_transfer) | [✅](proofs/dfns/dfns-self-attestation.md#cip-0056-token-standard-transfer-support-cip_0056_transfer) | ✅ | -|     CIP-0056 token standard allocation support | — | — | ✅ | -|     CIP-112 token standard v2 support | — | — | ✅ | -| **Interoperability** | | | | -|     CIP-0103 dApp API support | [✅](proofs/askardex-wallet/askardex-wallet-self-attestation.md#cip-0103-dapp-api-support-cip_0103_dapp_api) | — | ✅ | -|     Wallet Connect support | [✅](proofs/askardex-wallet/askardex-wallet-self-attestation.md#wallet-connect-support-walletconnect_support) | [✅](proofs/dfns/dfns-self-attestation.md#wallet-connect-support-walletconnect_support) | ✅ | -|     Memo tag support for transfers to exchanges | [✅](proofs/askardex-wallet/askardex-wallet-self-attestation.md#memo-tag-support-for-transfers-to-exchanges-memo_tag_support) | [✅](proofs/dfns/dfns-self-attestation.md#memo-tag-support-for-transfers-to-exchanges-memo_tag_support) | ✅ | +| Feature | [Askardex Wallet](wallets/askardex-wallet.yaml) | [Dfns](wallets/dfns.yaml) | [Send](wallets/send.yaml) | [Walley](wallets/walley.yaml) | +|---|---|---|---|---| +| **Wallet Overview** | | | | | +|     Website | [https://wallet.askardex.com](https://wallet.askardex.com) | [https://www.dfns.co](https://www.dfns.co) | [https://cantonwallet.com](https://cantonwallet.com) | [https://walley.cc](https://walley.cc) | +|     Added | 2026-07-25 | 2026-07-24 | 2026-07-24 | 2026-07-27 | +| **Wallet Type** | | | | | +|     Retail / Enterprise | Retail | enterprise | retail | retail | +|     Custody Type | Self-custodial | self-custodial | self-custodial | self-custodial | +|     Form factor (Mobile / Browser / Desktop / Browser Extension / Hardware) | mobile | browser | browser, mobile, browser-extension | browser | +|     Deployment Model (Self-hosted / SaaS / Hybrid) | saas | self-hosted, saas, hybrid | saas | saas | +| **Canton Coin** | | | | | +|     CC support (transfers and holding) | [✅](proofs/askardex-wallet/askardex-wallet-self-attestation.md#cc-support-transfers-and-holding-cc_support) | [✅](proofs/dfns/dfns-self-attestation.md#cc-support-transfers-and-holding-cc_support) | ✅ | [✅](proofs/walley/walley-self-attestation.md#cc-support-transfers-and-holding-cc_support) | +|     Pre-approvals for CC | [✅](proofs/askardex-wallet/askardex-wallet-self-attestation.md#pre-approvals-for-cc-preapprovals) | [✅](proofs/dfns/dfns-self-attestation.md#pre-approvals-for-cc-preapprovals) | ✅ | [✅](proofs/walley/walley-self-attestation.md#pre-approvals-for-cc-preapprovals) | +| **Token Standard** | | | | | +|     CIP-0056 token standard transfer support | [✅](proofs/askardex-wallet/askardex-wallet-self-attestation.md#cip-0056-token-standard-transfer-support-cip_0056_transfer) | [✅](proofs/dfns/dfns-self-attestation.md#cip-0056-token-standard-transfer-support-cip_0056_transfer) | ✅ | [✅](proofs/walley/walley-self-attestation.md#cip-0056-token-standard-transfer-support-cip_0056_transfer) | +|     CIP-0056 token standard allocation support | — | — | ✅ | [✅](proofs/walley/walley-self-attestation.md#cip-0056-token-standard-allocation-support-cip_0056_allocation) | +|     CIP-112 token standard v2 support | — | — | ✅ | [Not supported](wallets/walley.yaml) | +| **Interoperability** | | | | | +|     CIP-0103 dApp API support | [✅](proofs/askardex-wallet/askardex-wallet-self-attestation.md#cip-0103-dapp-api-support-cip_0103_dapp_api) | — | ✅ | [✅](proofs/walley/walley-self-attestation.md#cip-0103-dapp-api-support-cip_0103_dapp_api) | +|     Wallet Connect support | [✅](proofs/askardex-wallet/askardex-wallet-self-attestation.md#wallet-connect-support-walletconnect_support) | [✅](proofs/dfns/dfns-self-attestation.md#wallet-connect-support-walletconnect_support) | ✅ | [Not supported](wallets/walley.yaml) | +|     Memo tag support for transfers to exchanges | [✅](proofs/askardex-wallet/askardex-wallet-self-attestation.md#memo-tag-support-for-transfers-to-exchanges-memo_tag_support) | [✅](proofs/dfns/dfns-self-attestation.md#memo-tag-support-for-transfers-to-exchanges-memo_tag_support) | ✅ | [✅](proofs/walley/walley-self-attestation.md#memo-tag-support-for-transfers-to-exchanges-memo_tag_support) | ## Other Features -| Feature | [Askardex Wallet](wallets/askardex-wallet.yaml) | [Dfns](wallets/dfns.yaml) | [Send](wallets/send.yaml) | -|---|---|---|---| -| **App Specific** | | | | -|     Pre-approvals for DA Registry issued assets | — | [Not supported](wallets/dfns.yaml) | — | -|     Wallet Gateway signing driver | — | [✅](proofs/dfns/dfns-self-attestation.md#wallet-gateway-signing-driver-wallet_gateway_signing_driver) | — | -| **Party Specific** | | | | -|     Key generation method | Seed phrase (BIP-39 mnemonic, 24 words) | MPC/TSS -- keys generated as distributed shares across Dfns's signing network -- or HSM-based key generation; no seed phrases | — | -|     Key recovery | ✅ | ✅ | ✅ | -|     Social recovery | — | — | — | -|     Multi-address / account | — | ✅ | — | -|     Distributed parties | — | — | — | -| **Network relevant features** | | | | -|     UTXO merge delegation contract enabled | — | — | — | -| **Transaction Signing** | | | | -|     Policy workflows | — | ✅ | — | -|     Threshold Signature Scheme | — | ✅ | — | -|     Hardware wallet support | — | [✅](proofs/dfns/dfns-self-attestation.md#hardware-wallet-support-hardware_wallet_support) | ✅ | -| **Wallet Capabilities** | | | | -|     Compliance | — | ✅ | — | -|     Validator hosting (self-hosted / BYOV) | ✅ | ✅ | — | -|     Tokenization | — | — | — | -|     Reward minting | [✅](proofs/askardex-wallet/askardex-wallet-self-attestation.md#reward-minting-reward_minting) | — | — | -|     Transfer object / proof of transfer support | — | — | — | -|     Clear signing | [✅](proofs/askardex-wallet/askardex-wallet-self-attestation.md#clear-signing-clear_signing) | [✅](proofs/dfns/dfns-self-attestation.md#clear-signing-clear_signing) | — | -|     Integrated swaps | [Not supported](wallets/askardex-wallet.yaml) | — | ✅ | -|     Assets supported | CC, USDCx (CIP-0056), CBTC (CIP-0056), CETH (CIP-0056), HANDL (CIP-0056) | CC, Other CIP-0056 tokens on demand (token issuer provides an RPC node) | CC, CIP-0056 tokens | -|     Languages supported | English | English | English | +| Feature | [Askardex Wallet](wallets/askardex-wallet.yaml) | [Dfns](wallets/dfns.yaml) | [Send](wallets/send.yaml) | [Walley](wallets/walley.yaml) | +|---|---|---|---|---| +| **App Specific** | | | | | +|     Pre-approvals for DA Registry issued assets | — | [Not supported](wallets/dfns.yaml) | — | [✅](proofs/walley/walley-self-attestation.md#pre-approvals-for-da-registry-issued-assets-registry_preapprovals) | +|     Wallet Gateway signing driver | — | [✅](proofs/dfns/dfns-self-attestation.md#wallet-gateway-signing-driver-wallet_gateway_signing_driver) | — | [Not supported](wallets/walley.yaml) | +| **Party Specific** | | | | | +|     Key generation method | Seed phrase (BIP-39 mnemonic, 24 words) | MPC/TSS -- keys generated as distributed shares across Dfns's signing network -- or HSM-based key generation; no seed phrases | — | WebAuthn passkey PRF secret, expanded with HKDF-SHA512 into an Ed25519 signing key that is generated and held in the browser. A 24-word BIP-39 phrase backs up the same secret. | +|     Key recovery | ✅ | ✅ | ✅ | ✅ | +|     Social recovery | — | — | — | [Not supported](wallets/walley.yaml) | +|     Multi-address / account | — | ✅ | — | [Not supported](wallets/walley.yaml) | +|     Distributed parties | — | — | — | [Not supported](wallets/walley.yaml) | +| **Network relevant features** | | | | | +|     UTXO merge delegation contract enabled | — | — | — | [✅](proofs/walley/walley-self-attestation.md#utxo-merge-delegation-contract-enabled-utxo_merge_delegation) | +| **Transaction Signing** | | | | | +|     Policy workflows | — | ✅ | — | [Not supported](wallets/walley.yaml) | +|     Threshold Signature Scheme | — | ✅ | — | [Not supported](wallets/walley.yaml) | +|     Hardware wallet support | — | [✅](proofs/dfns/dfns-self-attestation.md#hardware-wallet-support-hardware_wallet_support) | ✅ | [Not supported](wallets/walley.yaml) | +| **Wallet Capabilities** | | | | | +|     Compliance | — | ✅ | — | — | +|     Validator hosting (self-hosted / BYOV) | ✅ | ✅ | — | [Not supported](wallets/walley.yaml) | +|     Tokenization | — | — | — | — | +|     Reward minting | [✅](proofs/askardex-wallet/askardex-wallet-self-attestation.md#reward-minting-reward_minting) | — | — | [Not supported](wallets/walley.yaml) | +|     Transfer object / proof of transfer support | — | — | — | [Not supported](wallets/walley.yaml) | +|     Clear signing | [✅](proofs/askardex-wallet/askardex-wallet-self-attestation.md#clear-signing-clear_signing) | [✅](proofs/dfns/dfns-self-attestation.md#clear-signing-clear_signing) | — | [✅](proofs/walley/walley-self-attestation.md#clear-signing-clear_signing) | +|     Integrated swaps | [Not supported](wallets/askardex-wallet.yaml) | — | ✅ | [✅](proofs/walley/walley-self-attestation.md#integrated-swaps-integrated_swaps) | +|     Assets supported | CC, USDCx (CIP-0056), CBTC (CIP-0056), CETH (CIP-0056), HANDL (CIP-0056) | CC, Other CIP-0056 tokens on demand (token issuer provides an RPC node) | CC, CIP-0056 tokens | CC, USDCx, CBTC, cETH, SBC, raUSD, HANDL, EDELx, USDM1, TRKX index tokens, Tradecraft LP tokens, any CIP-0056 token in the Walley registry (79 live at api.walley.cc/v1/tokens) | +|     Languages supported | English | English | English | English | diff --git a/proofs/walley/walley-self-attestation.md b/proofs/walley/walley-self-attestation.md new file mode 100644 index 0000000..2af801c --- /dev/null +++ b/proofs/walley/walley-self-attestation.md @@ -0,0 +1,258 @@ +# Walley — Self-Attestation Evidence + +Wallet name: `walley` +Last updated: 2026-07-27 + +Walley is a self-custodial browser wallet for CIP-0056 tokens on Canton +MainNet, operated by K2F Labs. Signing keys are derived in the browser from a +WebAuthn passkey PRF secret and never leave the device. + +The evidence below is drawn from publicly reachable sources: the product +documentation at [docs.walley.cc](https://docs.walley.cc), the public REST API +at `api.walley.cc` (including its Swagger UI at +), and the published dApp SDK package on +npm. Every claim is reproducible by a verifier against MainNet using the +registry's suggested test. Joel Lovera at Digital Asset is familiar with +Walley's feature support and can attest to the claims below. Transaction +update IDs are not published in this submission and can be supplied on +request. + +--- + +## CC support (transfers and holding) `cc_support` + +> Send, receive, and hold Canton Coin. +> +> Suggested test: Send CC to and from the wallet. Record the transaction +> update IDs and optionally provide screenshots of the holding, transfer, and +> party ID. + +- Transaction update ID(s): not published in this submission (see note above) +- Party ID(s): user parties take the form `walley-::` and are hosted on the K2F validator `k2f-validator-1::1220a0a64bd45fee105f5c80474842a4337bb09323ca748d7ea6dacc07fc6237572c` (returned by ) +- Explorer link(s): n/a +- Screenshot(s) / video: n/a +- Notes: Canton Coin is served as instrument `Amulet` (symbol `CC`, admin + `DSO::1220b1431ef217342db44d516bb9befde802be7d8899637d290895fa58880f19accc`) + from the public registry endpoint . Sending + and receiving CC is documented at + . The public API exposes + `GET /v1/balances`, `GET /v1/holdings`, `GET /v1/transfers`, and the + `POST /v1/transfers/prepare`, `/accept/prepare`, `/reject/prepare`, and + `/withdraw/prepare` command builders. + +## Pre-approvals for CC `preapprovals` + +> Auto-accept incoming CC without manual confirmation. Distinct from +> registry_preapprovals (App Specific) below -- the two used to share an id +> but now have different suggested tests. +> +> Suggested test: Enable pre-approvals for CC. Send CC to the wallet address. +> Confirm the transfer was auto-accepted. Record the transaction update IDs +> and optionally provide screenshots of the holding, transfer, and party ID. + +- Transaction update ID(s): not published in this submission (see note above) +- Party ID(s): as above +- Explorer link(s): n/a +- Screenshot(s) / video: n/a +- Notes: Transfer pre-approval is a user-enabled setting documented at + . Enabling it is itself + an on-ledger action the user reviews and signs, the status moves from + Pending Approval to Enabled, and the pre-approval expires and can be renewed + from the same Settings card. With it enabled, incoming transfers complete + without a per-transfer acceptance. The API exposes + `GET /v1/transfer-preapproval` and `POST /v1/transfer-preapproval/prepare`. + +## CIP-0056 token standard transfer support `cip_0056_transfer` + +> Send and receive any CIP-0056 token, not just Canton Coin. +> +> Suggested test: Send a CIP-0056-compatible token (not Canton Coin) to and +> from the wallet. Record the transaction update IDs and optionally provide +> screenshots of the holding, transfer, and party ID. + +- Transaction update ID(s): not published in this submission (see note above) +- Party ID(s): as above +- Explorer link(s): n/a +- Screenshot(s) / video: n/a +- Notes: returns 79 live instruments as of + 2026-07-27, of which 78 are non-CC CIP-0056 tokens, including USDCx, CBTC, + cETH, SBC, raUSD, HANDL, EDELx, USDM1, the TRKX index series, and Tradecraft + LP tokens. Each carries its instrument id, admin party, and where applicable + the registry operator party. Transfers use the token standard two-step offer + and accept flow, described at + , exercising + `TransferFactory_Transfer` and then `TransferInstruction_Accept`, + `_Reject`, or `_Withdraw`. + +## CIP-0056 token standard allocation support `cip_0056_allocation` + +> Support for the allocation half of the CIP-0056 standard, distinct from +> plain transfers. +> +> Suggested test: Create and settle a CIP-0056 allocation (distinct from a +> plain transfer). Record the transaction update ID(s) for the allocation and +> its settlement, and optionally provide screenshots of the allocation before +> and after settlement. + +- Transaction update ID(s): not published in this submission (see note above) +- Party ID(s): as above +- Explorer link(s): n/a +- Screenshot(s) / video: n/a +- Notes: Walley funds trades on the Tradecraft AMM venue with token standard + allocations rather than plain transfers. It exercises + `AllocationFactory_Allocate` to create the `Allocation` contract, the venue + executor settles it, and the sender-controlled `Allocation_Withdraw` choice + reclaims an allocation that was never settled. The public API exposes + `POST /v1/tradecraft/allocation/prepare` and + `POST /v1/tradecraft/allocation/withdraw/prepare`, both listed in + . + +## CIP-0103 dApp API support `cip_0103_dapp_api` + +> Connect to and sign transactions from a third-party dApp via CIP-0103. +> +> Suggested test: Connect to a dApp using a CIP-0103 connection. Initiate a +> transaction from within the dApp and sign it from the wallet. Confirm the +> successful transaction. Optionally provide screenshots or a video +> recording. + +- Transaction update ID(s): not published in this submission (see note above) +- Party ID(s): as above +- Explorer link(s): n/a +- Screenshot(s) / video: n/a +- Notes: Walley ships a published provider adapter, + [`@k2flabs/walley-dapp-sdk`](https://www.npmjs.com/package/@k2flabs/walley-dapp-sdk) + (v1.1.0), that registers with the `DiscoveryRegistry` from + `@canton-network/dapp-sdk` and implements the standard `Provider` interface: + `connect`, `disconnect`, `status`, `listAccounts`, `getPrimaryAccount`, + `getActiveNetwork`, `signMessage`, `prepareExecute`, and + `prepareExecuteAndWait`. Every method that signs opens a popup on walley.cc + where the user reviews and approves. Full reference at + , quickstart at + , and the end-user view of + connecting and revoking sessions at + . + +## Memo tag support for transfers to exchanges `memo_tag_support` + +> Attach a memo tag to a transfer, recorded under the +> splice.lfdecentralizedtrust.org/reason metadata. +> +> Suggested test: Include a memo tag in an asset transfer (this can be +> combined with the cc_support test). Record the transaction update ID +> showing the memo tag under the splice.lfdecentralizedtrust.org/reason +> metadata in the transaction JSON. + +- Transaction update ID(s): not published in this submission (see note above) +- Party ID(s): as above +- Explorer link(s): n/a +- Screenshot(s) / video: n/a +- Notes: The send flow carries an optional "Reason / Memo" field, documented + as step 4 of sending at + ("optionally add a payment + reason the recipient will see"). When set, Walley writes it into the + transfer's `meta.values` under the key + `splice.lfdecentralizedtrust.org/reason`, and reads it back out of the same + key to display a Reason row on the signing confirmation screen. + +## Pre-approvals for DA Registry issued assets `registry_preapprovals` + +> Auto-accept incoming registry-issued (non-CC) assets. Distinct from +> preapprovals (Canton Coin) above -- see the note there. +> +> Suggested test: Register pre-approvals for a DA Registry issued asset. Send +> the asset to the wallet address. Confirm the asset was auto-accepted. Record +> the transaction update IDs and optionally provide screenshots of the +> holding, transfer, and party ID. + +- Transaction update ID(s): not published in this submission (see note above) +- Party ID(s): as above +- Explorer link(s): n/a +- Screenshot(s) / video: n/a +- Notes: Separately from the Canton Coin pre-approval, Walley registers a + blanket `TransferPreapproval` per registry instrument admin, covering every + token that admin issues. Eligible registries are those exposing an operator + party, which the public token registry reports as `operator_id` on each + instrument at . The wallet's Settings + screen groups preapprovable tokens by admin and shows which groups are + already covered, so a verifier can enable a group and then confirm an + incoming registry asset lands without a manual accept. + +## UTXO merge delegation contract enabled `utxo_merge_delegation` + +> The wallet enables the merge delegation contract so UTXOs can be +> consolidated on-chain, reducing UTXO bloat. +> +> Suggested test: Enable the merge delegation contract in the wallet. Witness +> a UTXO consolidation contract on-chain for CC (sender & receiver are the +> same party). + +- Transaction update ID(s): not published in this submission (see note above) +- Party ID(s): as above +- Explorer link(s): n/a +- Screenshot(s) / video: n/a +- Notes: Merge delegation is an opt-in Settings toggle documented at + . The + user signs a `MergeDelegationProposal` create, the status moves from Pending + Approval to Enabled, and thereafter the network consolidates that party's + holding contracts for an asset into fewer contracts. As the documentation + states, the delegation authorizes consolidation only, does not authorize + transfers to anyone else, and leaves the total balance unchanged. The API + exposes `GET /v1/merge-delegation` and + `POST /v1/merge-delegation/prepare`. + +## Clear signing `clear_signing` + +> The wallet displays human-readable transaction details (not raw hex/opaque +> data) before signing. +> +> Suggested test: Show the wallet displaying human-readable transaction +> details (not raw hex/opaque data) before signing. Provide a screenshot of +> the clear-signing confirmation screen for a real transaction, alongside its +> transaction update ID. + +- Transaction update ID(s): not published in this submission (see note above) +- Party ID(s): as above +- Explorer link(s): n/a +- Screenshot(s) / video: n/a +- Notes: Every signature, whether started in the wallet or requested by a + connected dApp, goes through a review screen first. Walley keeps a registry + of known template and choice pairs and renders each command as a labelled + action with named fields rather than raw payload. A token standard transfer, + for example, renders as "Send Transfer" with Sender, Receiver, Amount, + Token, and Reason rows, with the instrument id resolved to its symbol + through the token registry. Merge delegation and the transfer instruction + choices render as "Enable Merge Delegation", "Accept Transfer", "Reject + Transfer", and "Withdraw Transfer". The mandatory review step is documented + for end users at + + and for dApp integrators at . + +## Integrated swaps `integrated_swaps` + +> An in-wallet swap between two assets. +> +> Suggested test: Perform an in-wallet swap between two assets. Provide the +> transaction update ID(s) for the swap and a screenshot of balances before +> and after. + +- Transaction update ID(s): not published in this submission (see note above) +- Party ID(s): as above +- Explorer link(s): n/a +- Screenshot(s) / video: n/a +- Notes: Walley has a built-in swap screen at that + routes across three venues, all live on MainNet and all queryable without + authentication: + - Tradecraft, a constant-product AMM, at + , which returns pools such as + CC/USDCx, CC/eXAU, SBC/USDCx, and CBTC/cETH with their per-pool LP and + operator fees. + - OneSwap pools at . + - Silvana, a request-for-quote venue, at + , which lists markets including + CBTC/CC, CBTC/USDCx, and CC/USDCx. A Silvana fill is settled by the user's + own signature on an `AtomicDVP_Settle` exercise, so the swap is atomic and + the wallet never takes custody. + + Where more than one venue can route a pair, the wallet shows a venue + selector and quotes each. diff --git a/wallets/walley.yaml b/wallets/walley.yaml new file mode 100644 index 0000000..28785dc --- /dev/null +++ b/wallets/walley.yaml @@ -0,0 +1,124 @@ +name: "Walley" +wallet-name: walley +website: "https://walley.cc" +contact: "admin@k2flabs.com" +added: "2026-07-27" +slack_party_scaling_channel_joined: true + +features: + # Wallet Type + wallet_model: [retail] + custody_model: self-custodial + form_factor: [browser] + deployment_model: [saas] + + # Canton Coin + cc_support: + supported: true + proof: proofs/walley/walley-self-attestation.md#cc-support-transfers-and-holding-cc_support + verified_by: [] + preapprovals: + supported: true + proof: proofs/walley/walley-self-attestation.md#pre-approvals-for-cc-preapprovals + verified_by: [] + + # Token Standard + cip_0056_transfer: + supported: true + proof: proofs/walley/walley-self-attestation.md#cip-0056-token-standard-transfer-support-cip_0056_transfer + verified_by: [] + cip_0056_allocation: + supported: true + proof: proofs/walley/walley-self-attestation.md#cip-0056-token-standard-allocation-support-cip_0056_allocation + verified_by: [] + cip_112_v2: + supported: false + reason: "Walley implements the v1 token standard interfaces only. CIP-112 v2 is not implemented yet." + proof: null + verified_by: [] + + # Interoperability + cip_0103_dapp_api: + supported: true + proof: proofs/walley/walley-self-attestation.md#cip-0103-dapp-api-support-cip_0103_dapp_api + verified_by: [] + walletconnect_support: + supported: false + reason: "dApps connect to Walley through the CIP-0103 provider adapter. WalletConnect is used only to attach an external Ethereum wallet for USDCx bridging, never for dApp sessions with Walley." + proof: null + verified_by: [] + memo_tag_support: + supported: true + proof: proofs/walley/walley-self-attestation.md#memo-tag-support-for-transfers-to-exchanges-memo_tag_support + verified_by: [] + + # App Specific + registry_preapprovals: + supported: true + proof: proofs/walley/walley-self-attestation.md#pre-approvals-for-da-registry-issued-assets-registry_preapprovals + verified_by: [] + wallet_gateway_signing_driver: + supported: false + reason: "Not integrated. Walley signs in the browser with its own passkey-derived key." + proof: null + verified_by: [] + + # Party Specific + key_generation_method: "WebAuthn passkey PRF secret, expanded with HKDF-SHA512 into an Ed25519 signing key that is generated and held in the browser. A 24-word BIP-39 phrase backs up the same secret." + key_recovery: + supported: true + social_recovery: + supported: false + reason: "Recovery is by 24-word BIP-39 phrase. There is no guardian or trusted-contact scheme." + multi_address: + supported: false + reason: "One party per passkey credential." + distributed_parties: + supported: false + reason: "Each party has a single signing key. Distributed party authority is not offered." + proof: null + verified_by: [] + + # Network relevant features + utxo_merge_delegation: + supported: true + proof: proofs/walley/walley-self-attestation.md#utxo-merge-delegation-contract-enabled-utxo_merge_delegation + verified_by: [] + + # Transaction Signing + policy_workflows: + supported: false + reason: "Every transaction is approved individually by the key holder. There are no configurable approval policies." + threshold_signature_scheme: + supported: false + reason: "Single Ed25519 key per party. No MPC or threshold signing." + hardware_wallet_support: + supported: false + reason: "Signing uses a WebAuthn passkey with the PRF extension rather than a dedicated hardware signing device." + proof: null + verified_by: [] + + # Wallet Capabilities + validator_hosting: + supported: false + reason: "Walley hosts every user party on its own validator. Bring-your-own-validator is not offered." + reward_minting: + supported: false + reason: "Walley does not claim or mint validator or app rewards on behalf of users." + proof: null + verified_by: [] + transfer_proof: + supported: false + reason: "Transaction history is viewable in the app, but Walley does not export a proof-of-transfer object." + proof: null + verified_by: [] + clear_signing: + supported: true + proof: proofs/walley/walley-self-attestation.md#clear-signing-clear_signing + verified_by: [] + integrated_swaps: + supported: true + proof: proofs/walley/walley-self-attestation.md#integrated-swaps-integrated_swaps + verified_by: [] + assets_supported: ["CC", "USDCx", "CBTC", "cETH", "SBC", "raUSD", "HANDL", "EDELx", "USDM1", "TRKX index tokens", "Tradecraft LP tokens", "any CIP-0056 token in the Walley registry (79 live at api.walley.cc/v1/tokens)"] + languages_supported: ["English"]