椭圆曲线加密算法原理分析_链圈子

椭圆曲线加密算法原理(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 函数图形

原创文章,作者:惊蛰财经,如若转载,请注明出处:http://www.xmlm.net/bi/31976.html