UNPKG

@phala/dstack-sdk

Version:
29 lines (25 loc) 1.26 kB
'use strict'; var sha256 = require('@noble/hashes/sha256'); var utils = require('@noble/hashes/utils'); var accounts = require('viem/accounts'); // src/viem.ts function toViemAccount(keyResponse) { if (keyResponse.__name__ === "GetTlsKeyResponse") { console.warn("toViemAccount: Please don't use `deriveKey` method to get key, use `getKey` instead."); const hex2 = Array.from(keyResponse.asUint8Array(32)).map((b) => b.toString(16).padStart(2, "0")).join(""); return accounts.privateKeyToAccount(`0x${hex2}`); } const hex = Array.from(keyResponse.key).map((b) => b.toString(16).padStart(2, "0")).join(""); return accounts.privateKeyToAccount(`0x${hex}`); } function toViemAccountSecure(keyResponse) { if (keyResponse.__name__ === "GetTlsKeyResponse") { console.warn("toViemAccountSecure: Please don't use `deriveKey` method to get key, use `getKey` instead."); const hex2 = utils.bytesToHex(sha256.sha256(keyResponse.asUint8Array())); return accounts.privateKeyToAccount(`0x${hex2}`); } const hex = Array.from(keyResponse.key).map((b) => b.toString(16).padStart(2, "0")).join(""); return accounts.privateKeyToAccount(`0x${hex}`); } exports.toViemAccount = toViemAccount; exports.toViemAccountSecure = toViemAccountSecure;