小白学习---SM2加密算法

1.椭圆曲线
首先了解一下椭圆曲线是个什么东西,椭圆曲线怎么实现加法运算和乘法运算的,椭圆曲线上的一点,怎么找到这点在椭圆曲线上的倍数。
https://www.jianshu.com/p/96bbe37ce14d
椭圆曲线示例
小白学习---SM2加密算法
小白学习---SM2加密算法
2.在椭圆曲线上找到密码对儿
首先将连续的椭圆曲线进行离散化,也就是对椭圆曲线上的点进行取模运算,余数相同的点暂时认为他们都是同类的点。还得理解一下采用二进制的方法计算椭圆曲线的标量乘法(非常简答易懂)。

https://www.jianshu.com/p/8fbd8cd84e1e
这篇对椭圆曲线也讲的很明白:
https://www.jianshu.com/p/e41bc1eb1d81

看完以上就知道可以在椭圆曲线上找到点P,那么可以找到P的d倍是Q,Q也在椭圆曲线上面。好了在SM2加密解密的时候就把这个倍数d作为私钥,D作为公钥。