• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

petejkim/wallet.ts: Utilities for cryptocurrency wallets, written in TypeScript

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称:

petejkim/wallet.ts

开源软件地址:

https://github.com/petejkim/wallet.ts

开源编程语言:

TypeScript 100.0%

开源软件介绍:

wallet.ts

npm version Downloads CI

A collection of utilities for building cryptocurrency wallets, written in TypeScript. Requires Node.js 12.0.0+.

Hierarchical Deterministic Wallets (BIP 32)

const { randomBytes } = require("crypto");
const { HDKey } = require("wallet.ts");

const seed = randomBytes(66);

const masterKey = HDKey.parseMasterSeed(seed);
// => HDKey {...}

const extendedPrivateKey = masterKey.derive("m/44'/60'/0'/0")
  .extendedPrivateKey;
// => "xprvA2FBfTJAyLjF5..."

const childKey = HDKey.parseExtendedKey(extendedPrivateKey);
// => HDKey {...}

const wallet = childKey.derive("0");
// => HDKey {...}

const walletPrivateKey = wallet.privateKey;
// => <Buffer 44 04 ce 4a ...>

const walletPublicKey = wallet.publicKey;
// => <Buffer 03 e9 f6 10 ...>

View Source

Mnemonic code for generating deterministic keys (BIP 39)

const { randomBytes } = require("crypto");
const { Mnemonic } = require("wallet.ts");

const mnemonic = Mnemonic.generate(randomBytes(32));
// => Mnemonic {...}

const phrase = mnemonic.phrase;
// => "capital find public couple ..."

const words = mnemonic.words;
// => [ "capital", "find", "public", "couple", ...]

const seed = mnemonic.toSeed();
// => <Buffer cd 07 60 43 ...>

View Source

Ethereum Address / EIP 55 checksum

const { EthereumAddress } = require("wallet.ts");

const publicKey = Buffer.from(
  "028a8c59fa27d1e0f1643081ff80c3cf0392902acbf76ab0dc9c414b8d115b0ab3",
  "hex"
);

const address = EthereumAddress.from(publicKey).address;
// => "0xD11A13f484E2f2bD22d93c3C3131f61c05E876a9"

const valid = EthereumAddress.isValid(address);
// => true

const checksumAddress = EthereumAddress.checksumAddress(
  "0xd11a13f484e2f2bd22d93c3c3131f61c05e876a9"
);
// => "0xD11A13f484E2f2bD22d93c3C3131f61c05E876a9"

View Source

Bitcoin Address (deprecated)

const { BitcoinAddress } = require("wallet.ts");

const publicKey = Buffer.from(
  "0250863ad64a87ae8a2fe83c1af1a8403cb53f53e486d8511dad8a04887e5b2352",
  "hex"
);

const address = BitcoinAddress.from(publicKey).address;
// => "1PMycacnJaSqwwJqjawXBErnLsZ7RkXUAs"

const valid = BitcoinAddress.isValid(address);
// => true

View Source


Copyright © 2018-2020 Coinbase, Inc.

Copyright © 2017-2018 HardFork Inc.

This project is licensed under the ISC license.




鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap