椭圆曲线加密算法原理分析

椭圆曲线加密算法原理(ECC)- 公钥生成

ECC全名是椭圆曲线加密算法是一种非对称式的加密技术,简单来说经由椭圆曲线加密后的输出,会有一对不对称256位元的钥匙,我们称他为公钥与私钥,在先前的内容中我们清楚的了解了私钥是如何生成的,那下一步来看看公钥的生成吧。

椭圆曲线加密称为非对称加密原因

我们可以透过python将我们先前生成的私钥简单转换成为公钥,反之我们若想要从公钥反推回私钥则非常困难,因此称为非对称加密。 


椭圆曲线加密的Python公钥生成

椭圆曲线加密算法-公钥的生成的流程:

  1. 选择一条椭圆曲线
  2. 选择曲线上一点当作自己的基点
  3. 数字产生器产生256bits的随机数,当成我们的私钥
  4. 利用基点与私钥经由ECDSA加密运算得到我们的公钥
经由椭圆曲线加密,公钥、私钥、地址的生成

其中在比特币区块链中使用的椭圆曲线函数为secp256k1,公钥为64个位元组(byte),拆成两个32位元组代表(x, y)座标值,为椭圆函数上的一点,而(x,y)的座标值则透过私钥(n)与选择的基点(G)有关,在生成(x,y)后公钥组成为0x04,x,y组成。透过乱数生成的私钥定义了身份,并利用他来签署交易,相对而言公钥则是向大家证明自己的身份。


椭圆曲线加密算法的secp256k1 函数图形

本文链接地址:https://www.wwsww.cn/jishu/1385.html
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

相关文章阅读