小蚁NEO钱包账号创建原理解析

当前位置:首页 > 币圈百科 > 小蚁NEO钱包账号创建原理解析

小蚁NEO钱包账号创建原理解析

2022-12-09币圈百科220

尼奥区块链钱包账号

钱包账号

neo钱包主要包括地址,私钥,公钥,脚本哈希,WIF这几个部分;它们之间存在一定的转化关系:nep wif Private=Public=脚本哈希地址不开玩笑,除了地址可以告诉别人以外,其它的对谁都不要说,地址类似一个银行卡号,是别人想给你转账的时候使用的

创建钱包账号

从" @cityofzion/neon-js "导入{ 蓑衣网小编2022wallet };/** * 根据通行证酶生产一个新的新的账号* @ param { * }通行阶段* @ param { * }确认通行阶段* @ param { * } wif */export函数createWalletAccount(pass phase:string,confirmPassphase: string,wif?字符串):WalletAccount { if (passphase!==confirmPassphase)返回nullvar账户=新钱包.账户(wif | |钱包。generateprivatekey());const加密wif=wallet。加密(帐户.WIF,通相);const result:wallet account={ address:account。地址,私有密钥:帐户.私有密钥,公共密钥:帐户.公共密钥,脚本哈希:帐户.脚本哈希,WIF:帐户.WIF,encryptedWIF,passphase,}返回结果;}

创建钱包账号单元测试

通过玩笑对创建钱包的方法进行单元测试test('createWalletAccount ',()={ const pass phase=' 123456 ');const account=createWalletAccount(通行阶段,通行阶段);console.log(账号);expect(account.address!==null).托比(真);});运行结果如下所示,就是当前生成的账号信息,可以使用新钱包登录一下试试{地址:' aumgtjsw 3 KBr ca 7 pobynaonztgmno qznly ',私钥:' 10 bb 026 b 4015 c 481 f 0 b 5142 aa 5 de 36 de 40 a 99 fc 8 c 26 e 956011 a 3 f 820 f 7708 FBA ',公钥:' 03 af 2 ad 8725 c 4926632d 6816 f 5502d 8 f 749 dec 369 afadfe 0转化

正如前面所述的,钱包里的各个数据存在一定的转化关系,至于详细的相互之间转化的原理,先不至讨论,我们可以使用霓虹灯-js的相关应用程序接口来查看是否正确转化ne pwif Private=Public=脚本哈希地址下面先新建一个jtest的单元测试文件核心。规格。js

私钥到公钥的转化

这里使用上面生成的测试账号进行测试,注意因为是测试账号以后我不会再使用,所以暴露出来,如果是你的个人账号,请一定不要暴露水不溶部分以及私钥。 单元测试代码如下:从" @ cityofzion/neo-js "导入{钱包}:测试(' private:10bb 026 b 4015 c 481 f 0 b 5142 aa 5 de 36 a 99 fc8 c26 e 956011 a 3 f 820 f 7708 FBA get pub _ key ',()={ const pubkey=wallet。getpublicfromprivate key(' 10bb 026 b 4015 c 481 f 0 b 5142 aa 5 de 36 a 99 fc 8 c26 e 956011 a 3 f 820 f 7708 FBA ');期望(公钥).tobe(' 03 af 2 ad 8725 c 492632d 6816 f 5502 D8 f 749 dec 369 afadfe 0 bb 5 AC 697 Fe 22 a 0 ef 77 ');});使用命令运行单元测试:国家预防机制运行测试__测试_/neo/Core.spec.js运行结果

所有转化蓑衣网小编2022

完整的转化关系如下:从" @ cityofzion/neo-js "导入{ wallet }:const walltaccount={ address:' augtjsw 3 kbrca 7 pobynaztgmnoqzly ',私钥:' 10bb 026 b 4015 c 481 f 0 b 5142 aa 5 de 36 a 99 fc 8 c26 e 956011 a 3 f 820 f 7708 FBA ',公钥:' 03 af 2 a 8725 c 492632d 682632 f 5502d 8 f 749 decgetwif from private key(walltaccount。私钥));期望(妻子).托比(华尔街账户).(六)妇女地位;const私钥=钱包。getprivekeyfromwif(walltaccount).(六)妇女地位;期望(私钥).托比(walletaccount。private key):});//私钥=公钥测试(` `私钥=公钥:$ { walltaccount。私钥} `,()={ const pubkey=wallet。getpublicationyfromprivate密钥(walltaccount。私钥));期望(公钥).tobe(walltaccount。公钥):});//public keys=script hashtest(` ` public keys=script hash:$ { walltaccount。public keys } `,()={ const script hash=wallet。getscripthashfrompublickey(walltaccount。公钥);期望(脚本哈希).tobe(walltaccount。脚本哈希):});//脚本哈希地址测试蓑衣网小编2022 ('脚本哈希地址',()={常量地址=钱包。get address from script hash(walltaccount。脚本哈希));期望(地址).tobe(walltaccount。地址);const脚本哈希=wallet。getscripthashfromaddress(walltaccount。地址);期望(脚本哈希).tobe(walltaccount。脚本哈希):});

总结

如上,主要说明了尼欧账号的创建,以及讲述账号各个字段之间的转化关系,本篇使用的美国石油学会为新纳粹组织,这是-不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不在吉卜赛人社区开源的尼欧钱包蜜蜂,蜜蜂,它包含了钱包开发的所有的蜜蜂,蜜蜂,我认为它是学习钱包的很好的材料,当然新gui,新硬币指示器(coin-levelindicator的缩写)命令行界面(Command Line Interface for batch scripting)本身也是开源的,完全可以使用它们的源码来学习,只是相较于C#,对于开发跨平台应用,我更喜欢基于电子产品的方案。为了学习开发尼欧钱包,我搭建了一个电子产品的锅炉板,作为快速启动的基础,这样其他同样想用此方案的朋友就不用再一次去搭建环境了。此锅炉板具体集成了以下技术方案:电子、试剂、dva、流量、antd后面会抽时间把文中提到的耶稣基督也集成进去以便可以开箱即用的写单元测试。

小蚁NEO钱包账号创建原理解析 | 分享给朋友: