Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion modules/statics/src/base.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3858,7 +3858,7 @@ export enum UnderlyingAsset {
'eth:ctkn' = 'eth:ctkn',
'eth:cusdt' = 'eth:cusdt',
// ERC-7984 confidential tokens (Zama fhEVM - testnet / hteth)
'hteth:ctkn' = 'hteth:ctkn',
'hteth:ctest1' = 'hteth:ctest1',
'hteth:cusdt' = 'hteth:cusdt',
'eth:mony' = 'eth:mony',
'eth:architectgvi' = 'eth:architectgvi',
Expand Down
19 changes: 10 additions & 9 deletions modules/statics/src/coins/erc7984Tokens.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,11 @@ import { UnderlyingAsset } from '../base';
* decryption via the Zama Gateway before they can be displayed.
*
* Mainnet contract addresses are TBD pending Zama fhEVM mainnet launch.
* Testnet tokens (hteth:*) are deployed on the BitGo-supported ETH testnet (Hoodi).
* Testnet tokens (hteth:*) are deployed on Hoodi using Zama's cleartext FHE stack.
* Hoodi ACL: 0x6D3FAf6f86e1fF9F3B0831Dda920AbA1cBd5bd68 (Networks.test.hoodi.zamaAclContractAddress)
* Hoodi RPC: https://rpc.hoodi.ethpandaops.io (chain ID 560048)
*
* Sandbox development contracts (Sepolia):
* Sandbox development contracts (Sepolia, real FHE stack):
* CTKN: 0x94167129172A35ab093B44b8b96213DDbc3cD387
* cUSDT: 0x4E7B06D78965594eB5EF5414c357ca21E1554491
*/
Expand All @@ -34,22 +36,21 @@ export const erc7984Tokens = [
UnderlyingAsset['eth:cusdt']
),

// Testnet tokens (hteth / Hoodi)
// Note: sandbox development contracts are on Ethereum Sepolia; deploy to Hoodi for BitGo testnet support
// Testnet tokens (hteth / Hoodi) — Zama cleartext FHE stack (chain ID 560048)
terc7984(
'f47ac10b-58cc-4372-a567-0e02b2c3d481',
'hteth:ctkn',
'Confidential Test Token',
'hteth:ctest1',
'Confidential Token Test 1',
6,
'0x0000000000000000000000000000000000000000', // TODO: deploy to Hoodi and update address (Sepolia dev: 0x94167129172A35ab093B44b8b96213DDbc3cD387)
UnderlyingAsset['hteth:ctkn']
'0x7b1d59bbcd291daa59cb6c8c5bc04de1afc4aba1',
UnderlyingAsset['hteth:ctest1']
),
terc7984(
'f47ac10b-58cc-4372-a567-0e02b2c3d482',
'hteth:cusdt',
'Confidential USDT',
6,
'0x0000000000000000000000000000000000000000', // TODO: deploy to Hoodi and update address (Sepolia dev: 0x4E7B06D78965594eB5EF5414c357ca21E1554491)
'0x2debbe0487ef921df4457f9e36ed05be2df1ac75',
UnderlyingAsset['hteth:cusdt']
),
];
4 changes: 4 additions & 0 deletions modules/statics/src/networks.ts
Original file line number Diff line number Diff line change
Expand Up @@ -177,6 +177,8 @@ export interface EthereumNetwork extends AccountNetwork {
readonly walletV4ImplementationAddress?: string;
readonly nativeCoinOperationHashPrefix?: string;
readonly tokenOperationHashPrefix?: string;
// Zama fhEVM ACL contract address — required for ERC-7984 confidential token delegation
readonly zamaAclContractAddress?: string;
}

export interface TronNetwork extends AccountNetwork {
Expand Down Expand Up @@ -824,6 +826,8 @@ class Hoodi extends Testnet implements EthereumNetwork {
walletV4ImplementationAddress = '0x944fef03af368414f29dc31a72061b8d64f568d2';
nativeCoinOperationHashPrefix = 'ETHER';
tokenOperationHashPrefix = 'ERC20';
// https://github.com/zama-ai/sdk/blob/prerelease/packages/sdk/src/chains/configs.ts#L52
zamaAclContractAddress = '0x6d3faf6f86e1ff9f3b0831dda920aba1cbd5bd68';
}

class EthereumClassic extends Mainnet implements EthereumNetwork {
Expand Down
1 change: 1 addition & 0 deletions modules/statics/test/unit/resources/amsTokenConfig.ts
Original file line number Diff line number Diff line change
Expand Up @@ -709,6 +709,7 @@ export const amsTokenConfigWithCustomToken = {
walletV4ImplementationAddress: '0x944fef03af368414f29dc31a72061b8d64f568d2',
nativeCoinOperationHashPrefix: 'ETHER',
tokenOperationHashPrefix: 'ERC20',
zamaAclContractAddress: '0x6d3faf6f86e1ff9f3b0831dda920aba1cbd5bd68',
},
primaryKeyCurve: 'secp256k1',
contractAddress: '0x89a959b9184b4f8c8633646d5dfd049d2ebc983a',
Expand Down
Loading