Skip to content

Commit 151b4f5

Browse files
feat: add hoodi zama confidential tokens
TICKET: CHALO-472
1 parent 9155859 commit 151b4f5

4 files changed

Lines changed: 16 additions & 10 deletions

File tree

modules/statics/src/base.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3858,7 +3858,7 @@ export enum UnderlyingAsset {
38583858
'eth:ctkn' = 'eth:ctkn',
38593859
'eth:cusdt' = 'eth:cusdt',
38603860
// ERC-7984 confidential tokens (Zama fhEVM - testnet / hteth)
3861-
'hteth:ctkn' = 'hteth:ctkn',
3861+
'hteth:ctest1' = 'hteth:ctest1',
38623862
'hteth:cusdt' = 'hteth:cusdt',
38633863
'eth:mony' = 'eth:mony',
38643864
'eth:architectgvi' = 'eth:architectgvi',

modules/statics/src/coins/erc7984Tokens.ts

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,11 @@ import { UnderlyingAsset } from '../base';
99
* decryption via the Zama Gateway before they can be displayed.
1010
*
1111
* Mainnet contract addresses are TBD pending Zama fhEVM mainnet launch.
12-
* Testnet tokens (hteth:*) are deployed on the BitGo-supported ETH testnet (Hoodi).
12+
* Testnet tokens (hteth:*) are deployed on Hoodi using Zama's cleartext FHE stack.
13+
* Hoodi ACL: 0x6D3FAf6f86e1fF9F3B0831Dda920AbA1cBd5bd68 (Networks.test.hoodi.zamaAclContractAddress)
14+
* Hoodi RPC: https://rpc.hoodi.ethpandaops.io (chain ID 560048)
1315
*
14-
* Sandbox development contracts (Sepolia):
16+
* Sandbox development contracts (Sepolia, real FHE stack):
1517
* CTKN: 0x94167129172A35ab093B44b8b96213DDbc3cD387
1618
* cUSDT: 0x4E7B06D78965594eB5EF5414c357ca21E1554491
1719
*/
@@ -34,22 +36,21 @@ export const erc7984Tokens = [
3436
UnderlyingAsset['eth:cusdt']
3537
),
3638

37-
// Testnet tokens (hteth / Hoodi)
38-
// Note: sandbox development contracts are on Ethereum Sepolia; deploy to Hoodi for BitGo testnet support
39+
// Testnet tokens (hteth / Hoodi) — Zama cleartext FHE stack (chain ID 560048)
3940
terc7984(
4041
'f47ac10b-58cc-4372-a567-0e02b2c3d481',
41-
'hteth:ctkn',
42-
'Confidential Test Token',
42+
'hteth:ctest1',
43+
'Confidential Token Test 1',
4344
6,
44-
'0x0000000000000000000000000000000000000000', // TODO: deploy to Hoodi and update address (Sepolia dev: 0x94167129172A35ab093B44b8b96213DDbc3cD387)
45-
UnderlyingAsset['hteth:ctkn']
45+
'0x7b1d59bbcd291daa59cb6c8c5bc04de1afc4aba1',
46+
UnderlyingAsset['hteth:ctest1']
4647
),
4748
terc7984(
4849
'f47ac10b-58cc-4372-a567-0e02b2c3d482',
4950
'hteth:cusdt',
5051
'Confidential USDT',
5152
6,
52-
'0x0000000000000000000000000000000000000000', // TODO: deploy to Hoodi and update address (Sepolia dev: 0x4E7B06D78965594eB5EF5414c357ca21E1554491)
53+
'0x2debbe0487ef921df4457f9e36ed05be2df1ac75',
5354
UnderlyingAsset['hteth:cusdt']
5455
),
5556
];

modules/statics/src/networks.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -177,6 +177,8 @@ export interface EthereumNetwork extends AccountNetwork {
177177
readonly walletV4ImplementationAddress?: string;
178178
readonly nativeCoinOperationHashPrefix?: string;
179179
readonly tokenOperationHashPrefix?: string;
180+
// Zama fhEVM ACL contract address — required for ERC-7984 confidential token delegation
181+
readonly zamaAclContractAddress?: string;
180182
}
181183

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

829833
class EthereumClassic extends Mainnet implements EthereumNetwork {

modules/statics/test/unit/resources/amsTokenConfig.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -709,6 +709,7 @@ export const amsTokenConfigWithCustomToken = {
709709
walletV4ImplementationAddress: '0x944fef03af368414f29dc31a72061b8d64f568d2',
710710
nativeCoinOperationHashPrefix: 'ETHER',
711711
tokenOperationHashPrefix: 'ERC20',
712+
zamaAclContractAddress: '0x6d3faf6f86e1ff9f3b0831dda920aba1cbd5bd68',
712713
},
713714
primaryKeyCurve: 'secp256k1',
714715
contractAddress: '0x89a959b9184b4f8c8633646d5dfd049d2ebc983a',

0 commit comments

Comments
 (0)