//生成私钥和公钥 func newKeyPair() (ecdsa.PrivateKey,[]byte){ //生成椭圆曲线, secp256r1 曲线。 比特币当中的曲线是secp256k1 curve :=elliptic.P256() private,err :=ecdsa.GenerateKey(curve,rand.Reader) if err !=nil{ fmt.Println("error") } pubkey :=append(private.PublicKey.X.Bytes(),private.PublicKey.Y.Bytes()...) return *private,pubkey } func main(){ //调用函数生成公钥 privatekey,public :=newKeyPair() //打印私钥 曲线上的x点 fmt.Printf("%x\n",privatekey.D.Bytes()) //打印公钥, 曲线上的x点和y点 fmt.Printf("%x",public) }
-
本文链接: https://dreamerjonson.com/2018/12/07/golang-35-blockchain-publickey/
-
版权声明: 本博客所有文章除特别声明外,均采用 CC BY 4.0 CN协议 许可协议。转载请注明出处!
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 如何为区块链生成公钥和私钥
- 区块秘史|密码朋克的死亡圣器:公钥加密
- 从0到1学习区块链–私钥、公钥、钱包地址的含义
- 简述密码学应用四阶段:对称加密、公钥加密、区块链与高等密码学
- bitcoin:压缩公钥与未压缩公钥
- [学习笔记] “付款到公钥” 和 “付款到公钥哈希”
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
深入理解计算机系统
Randal E.Bryant、David O'Hallaron / 龚奕利、雷迎春 / 中国电力出版社 / 2004-5-1 / 85.00元
从程序员的视角,看计算机系统! 本书适用于那些想要写出更快、更可靠程序的程序员。通过掌握程序是如何映射到系统上,以及程序是如何执行的,读者能够更好的理解程序的行为为什么是这样的,以及效率低下是如何造成的。粗略来看,计算机系统包括处理器和存储器硬件、编译器、操作系统和网络互连环境。而通过程序员的视角,读者可以清晰地明白学习计算机系统的内部工作原理会对他们今后作为计算机科学研究者和工程师的工作有......一起来看看 《深入理解计算机系统》 这本书的介绍吧!