@quantabit/multi-chain-wallet-sdk
v1.1.0
Published
QuantaBit Multi-Chain Wallet SDK - Unified signatures and key-pair operations across EVM, Solana and Cosmos chains
Maintainers
Readme
@quantabit/multi-chain-wallet-sdk
QuantaBit 多链钱包底层密码学 SDK:EVM / Solana / Cosmos 的地址校验、BIP44/SLIP-0010 离线派生、消息签名与验签。
本包是纯密码学库(无 React UI)。业务绑定/余额请使用 @quantabit/wallet-sdk,创建向导请使用 @quantabit/wallet-create-sdk。
Features
- 真实 BIP44 / SLIP-0010 派生:EVM/Cosmos 使用
@scure/bip32(secp256k1),Solana 使用ed25519-hd-key - 真实签名验签:EVM
personal_sign、Solana Ed25519、Cosmos secp256k1(sha256) - 地址校验:EVM hex、Solana Base58(32B)、Cosmos Bech32
- 本地执行:私钥与种子不会上传网络
Installation
npm install @quantabit/multi-chain-wallet-sdkQuick Start
1. 地址校验
import { MultiChainWalletAdapter } from '@quantabit/multi-chain-wallet-sdk';
const adapter = new MultiChainWalletAdapter();
adapter.isValidAddress('evm', '0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266'); // true2. BIP44 派生 + 签名验签
import { MultiChainKeyPairGenerator, MultiChainWalletAdapter } from '@quantabit/multi-chain-wallet-sdk';
import * as bip39 from 'bip39';
const seedHex = (await bip39.mnemonicToSeed('your twelve word mnemonic ...')).toString('hex');
const generator = new MultiChainKeyPairGenerator();
const adapter = new MultiChainWalletAdapter();
const evm = generator.deriveKeyPair('evm', seedHex); // m/44'/60'/0'/0/0
const signed = adapter.signMessage('evm', 'Auth Request', evm.privateKey);
const ok = adapter.verifySignature('evm', signed.message, signed.signature, signed.address);3. 链默认派生路径
| Chain | Path |
|--------|---------------------|
| EVM | m/44'/60'/0'/0/0 |
| Solana | m/44'/501'/0'/0' |
| Cosmos | m/44'/118'/0'/0/0 |
API Notes
signMessage(chain, message, privateKey, opts?)— 推荐入口signMessageMock— 已弃用别名,必须提供私钥,内部转调signMessageverifySignature— 校验 message ↔ signature ↔ address 密码学绑定,不再只做格式检查
License
MIT
