Updated SM9实现及优化 (markdown)

Sun Yimin 2023-07-09 13:55:05 +08:00
parent f95f569a38
commit 4e8e9536a5

@ -7,6 +7,12 @@
第二步以bn256为基础基于SM9参数实现1-2-4-12塔式扩域。gfP和gfP2比较简单改造程度不大主要是添加测试确保正确性。接着实现gfP4gfP12基础算法加、减、乘、平方相对容易共轭Conjucate和Frobenius运算花了相对多一点时间。
第三步参考sm9_alg.c和bn256实现Pairing这一步花了最多的时间。那时候的实现是这样的[bn_pair.go](
https://github.com/emmansun/gmsm/blob/7254c055d7a353094a4d3b2c95d17505d2e8e82b/sm9/bn_pair.go)
https://github.com/emmansun/gmsm/blob/7254c055d7a353094a4d3b2c95d17505d2e8e82b/sm9/bn_pair.go)。第三步做完,基础已完成。
第四步实现SM9的密钥生成、签名/验签、加解密及密钥交换,这一步相对顺利。
这四步前后花了一个月左右的时间。