ECC算法推荐参数汇总

推荐使用素数域256位椭圆曲线。GM/T 0003-2012标准推荐参数  sm2p256v1
椭圆曲线方程:y ^ 2 = x ^ 3 + ax + b。
曲线参数:

p   = FFFFFFFE FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF 00000000 FFFFFFFF FFFFFFFF
a   = FFFFFFFE FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF 00000000 FFFFFFFF FFFFFFFC
b   = 28E9FA9E 9D9F5E34 4D5A9E4B CF6509A7 F39789F5 15AB8F92 DDBCBD41 4D940E93
n   = FFFFFFFE FFFFFFFF FFFFFFFF FFFFFFFF 7203DF6B 21C6052B 53BBF409 39D54123
Gx =  32C4AE2C 1F198119 5F990446 6A39C994 8FE30BBF F2660BE1 715A4589 334C74C7
Gy =  BC3736A2 F4F6779C 59BDCEE3 6B692153 D0A9877C C62A4740 02DF32E5 2139F0A0

ECC推荐参数:secp256k1
p   = FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFE FFFFFC2F
a   = 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
b   = 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000007
n   = FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFE BAAEDCE6 AF48A03B BFD25E8C D0364141

Gx =  79BE667E F9DCBBAC 55A06295 CE870B07 029BFCDB 2DCE28D9 59F2815B 16F81798
Gy =  483ADA77 26A3C465 5DA4FBFC 0E1108A8 FD17B448 A6855419 9C47D08F FB10D4B8

ECC推荐参数:secp256r1
p   = FFFFFFFF 00000001 00000000 00000000 00000000 FFFFFFFF FFFFFFFF FFFFFFFF
a   = FFFFFFFF 00000001 00000000 00000000 00000000 FFFFFFFF FFFFFFFF FFFFFFFC
b   = 5AC635D8 AA3A93E7 B3EBBD55 769886BC 651D06B0 CC53B0F6 3BCE3C3E 27D2604B
n   = FFFFFFFF 00000000 FFFFFFFF FFFFFFFF BCE6FAAD A7179E84 F3B9CAC2 FC632551
Gx  = 6B17D1F2 E12C4247 F8BCE6E5 63A440F2 77037D81 2DEB33A0 F4A13945 D898C296
Gy  = 4FE342E2 FE1A7F9B 8EE7EB4A 7C0F9E16 2BCE3357 6B315ECE CBB64068 37BF51F5
 

  • 5
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于ECC算法的Python代码实现,很抱歉,之前的引文中没有提到。ECC算法是基于椭圆线的加密算法,可以用于密钥生成、密钥交换和数字签名等安全应用。在Python中,可以使用第三方库pycryptodome来实现ECC算法。 下面是使用pycryptodome库实现ECC算法的示例代码: ```python from Crypto.PublicKey import ECC # 生成ECC密钥对 key = ECC.generate(curve='P-256') private_key = key.export_key(format='PEM') public_key = key.public_key().export_key(format='PEM') # 加密和解密示例 data = b'This is a secret message' encrypted_data = key.public_key().encrypt(data) decrypted_data = key.decrypt(encrypted_data) print('Encrypted data:', encrypted_data) print('Decrypted data:', decrypted_data) ``` 以上代码中,首先通过`ECC.generate()`函数生成一个ECC密钥对,其中curve参数指定了曲线类型,这里使用的是P-256曲线。然后使用`export_key()`函数导出私钥和公钥。 接着,可以使用生成的公钥进行加密,使用私钥进行解密。示例中的`encrypt()`和`decrypt()`函数分别用于加密和解密数据。 请注意,这只是一个简单的示例,实际应用中需要考虑更多的安全性和错误处理。 希望这个示例代码能够帮助你理解ECC算法在Python中的实现。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [常见加密算法-python实现](https://blog.csdn.net/qq_42363032/article/details/107417891)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值