diff --git a/SM2推荐椭圆曲线域参数.md b/SM2推荐椭圆曲线域参数.md index b4cc529..eee2d29 100644 --- a/SM2推荐椭圆曲线域参数.md +++ b/SM2推荐椭圆曲线域参数.md @@ -42,6 +42,17 @@ $ gmssl ecparam -genkey -name sm2p256v1 -out sm2key.pem $ gmssl ecparam -name sm2p256v1 -param_enc explicit -out sm2p256v1.pem ``` +## 编程访问SM2推荐椭圆曲线参数 + +GmSSL内置的SM2推荐曲线可以通过NID `NID_sm2p256v1`或者字符串`"sm2p256v1"`索引,在编程时可以通过`NID_sm2p256v1`生成域参数`EC_GROUP`对象或者该曲线上的密钥对象`EC_KEY`。 + +``` +#include + +EC_GROUP *sm2p256v1 = EC_GROUP_new_by_curve_name(NID_sm2p256v1); +EC_KEY *sm2key = EC_KEY_new_by_curve_name(NID_sm2p256v1); +``` + ## SM2测试椭圆曲线域参数 SM2标准文本中提供了四个测试用椭圆曲线域参数: @@ -53,4 +64,3 @@ SM2标准文本中提供了四个测试用椭圆曲线域参数: `crypto/sm2/sm2test.c`中提供了这四个参数的定义及生成`EC_GROUP`对象的代码,应用如果希望使用上述四个参数,可以直接从`sm2test.c`测试文件中复制相应代码。 -