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

TypeScript elliptic.ec类代码示例

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

本文整理汇总了TypeScript中elliptic.ec的典型用法代码示例。如果您正苦于以下问题:TypeScript ec类的具体用法?TypeScript ec怎么用?TypeScript ec使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



在下文中一共展示了ec类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的TypeScript代码示例。

示例1: constructor

 /**
  * Passing an external key will import it, otherwise a keypair will
  * be generated.
  */
 constructor(ext?: string) {
     if (ext) {
         const keyParts = ext.split("|");
         const d = Base64.decode(keyParts[2]);
         this.keyPair = elliptic.keyFromPrivate(Buffer.from(d));
     } else {
         // Generate our own key since we have a good PRNG
         const d = new Uint8Array(32);
         crypto.getRandomValues(d);
         this.keyPair = elliptic.keyFromPrivate(Buffer.from(d));
     }
 }
开发者ID:tera-insights,项目名称:tiFormEncrypt,代码行数:16,代码来源:EC.ts


示例2: function

export const recover = function(hash: Buffer, sig: Buffer): string {
  const recovery = sig[64];
  const signature = {
    r: sig.slice(0, 32),
    s: sig.slice(32, 64),
  };

  const ecPublicKey = secp256k1.recoverPubKey(hash, signature, recovery);
  const publicKey = "0x" + ecPublicKey.encode("hex", false).slice(2);
  const publicHash = EthLib.hash.keccak256(publicKey);
  const address = EthLib.account.toChecksum("0x" + publicHash.slice(-40));
  return address;
};
开发者ID:littycoin,项目名称:thorify,代码行数:13,代码来源:crypto.ts


示例3: addressFromPublicKeyBuffer

 addressFromPublicKeyBuffer(pubKey: Buffer): string {
   const ecKey = secp.keyFromPublic(pubKey);
   const x = ecKey
     .getPublic()
     .getX()
     .toBuffer();
   const y = ecKey
     .getPublic()
     .getY()
     .toBuffer();
   const paddedBuffer = Buffer.concat([this.padTo32(x), this.padTo32(y)]);
   const address = `0x${pubToAddress(paddedBuffer).toString('hex')}`;
   return toChecksumAddress(address);
 }
开发者ID:bitpay,项目名称:bitcore,代码行数:14,代码来源:index.ts


示例4: test

  test('bn-padded-to-64-bytes', (t) => {
    t.plan(1)
    const ecurve = new elliptic.ec('secp256k1')

    const evilHexes = ['ba40f85b152bea8c3812da187bcfcfb0dc6e15f9e27cb073633b1c787b19472f',
                       'e346010f923f768138152d0bad063999ff1da5361a81e6e6f9106241692a0076']
    const results = evilHexes.map((hex) => {
      const ephemeralSK = ecurve.keyFromPrivate(hex)
      const ephemeralPK = ephemeralSK.getPublic()
      const sharedSecret = ephemeralSK.derive(ephemeralPK)
      return getHexFromBN(sharedSecret).length === 64
    })

    t.true(results.every(x => x), 'Evil hexes must all generate 64-len hex strings')
  })
开发者ID:blockstack,项目名称:blockstack-cli,代码行数:15,代码来源:unitTestsEncryption.ts


示例5: getHexFromBN

 const results = evilHexes.map((hex) => {
   const ephemeralSK = ecurve.keyFromPrivate(hex)
   const ephemeralPK = ephemeralSK.getPublic()
   const sharedSecret = ephemeralSK.derive(ephemeralPK)
   return getHexFromBN(sharedSecret).length === 64
 })
开发者ID:blockstack,项目名称:blockstack-cli,代码行数:6,代码来源:unitTestsEncryption.ts



注:本文中的elliptic.ec类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

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

请发表评论

全部评论

专题导读
上一篇:
TypeScript email-validator.validate函数代码示例发布时间:2022-05-25
下一篇:
TypeScript store.CookieEligibilityStore类代码示例发布时间:2022-05-25
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

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

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

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