电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

python實現sm2和sm4國密(國家商用密碼)算法的示例

瀏覽:3日期:2022-07-09 18:42:12

GMSSL模塊介紹

GmSSL是一個開源的加密包的python實現,支持SM2/SM3/SM4等國密(國家商用密碼)算法、項目采用對商業應用友好的類BSD開源許可證,開源且可以用于閉源的商業應用。

安裝模塊

pip install gmssl

https://github.com/duanhongyi/gmssl/blob/master/README.md官方文檔

SM2算法

RSA算法的危機在于其存在亞指數算法,對ECC算法而言一般沒有亞指數攻擊算法 SM2橢圓曲線公鑰密碼算法:我國自主知識產權的商用密碼算法,是ECC(Elliptic Curve Cryptosystem)算法的一種,基于橢圓曲線離散對數問題,計算復雜度是指數級,求解難度較大,同等安全程度要求下,橢圓曲線密碼較其他公鑰算法所需密鑰長度小很多。

gmssl是包含國密SM2算法的Python實現, 提供了 encrypt、 decrypt等函數用于加密解密, 用法如下:

1. 初始化CryptSM2

import base64import binasciifrom gmssl import sm2, func#16進制的公鑰和私鑰private_key = ’00B9AB0B828FF68872F21A837FC303668428DEA11DCD1B24429D0C99E24EED83D5’public_key = ’B9C9A6E04E9C91F7BA880429273747D7EF5DDEB0BB2FF6317EB00BEF331A83081A6994B8993F3F5D6EADDDB81872266C87C018FB4162F5AF347B483E24620207’sm2_crypt = sm2.CryptSM2( public_key=public_key, private_key=private_key)

2. encrypt和decrypt

#數據和加密后數據為bytes類型data = b'111'enc_data = sm2_crypt.encrypt(data)dec_data =sm2_crypt.decrypt(enc_data)assert dec_data == data

3. sign和verify

data = b'111' # bytes類型random_hex_str = func.random_hex(sm2_crypt.para_len)sign = sm2_crypt.sign(data, random_hex_str) # 16進制assert sm2_crypt.verify(sign, data) # 16進制

SM4算法

國密SM4(無線局域網SMS4)算法, 一個分組算法, 分組長度為128bit, 密鑰長度為128bit, 算法具體內容參照SM4算法。

gmssl是包含國密SM4算法的Python實現, 提供了 encrypt_ecb、 decrypt_ecb、 encrypt_cbc、 decrypt_cbc等函數用于加密解密, 用法如下:

1. 初始化CryptSM4

from gmssl.sm4 import CryptSM4, SM4_ENCRYPT, SM4_DECRYPTkey = b’3l5butlj26hvv313’value = b’111’ # bytes類型iv = b’x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00’ # bytes類型crypt_sm4 = CryptSM4()

2. encrypt_ecb和decrypt_ecb

crypt_sm4.set_key(key, SM4_ENCRYPT)encrypt_value = crypt_sm4.crypt_ecb(value) # bytes類型crypt_sm4.set_key(key, SM4_DECRYPT)decrypt_value = crypt_sm4.crypt_ecb(encrypt_value) # bytes類型assert value == decrypt_value

3. encrypt_cbc和decrypt_cbc

crypt_sm4.set_key(key, SM4_ENCRYPT)encrypt_value = crypt_sm4.crypt_cbc(iv , value) # bytes類型crypt_sm4.set_key(key, SM4_DECRYPT)decrypt_value = crypt_sm4.crypt_cbc(iv , encrypt_value) # bytes類型assert value == decrypt_value

以上就是python實現sm2和sm4國密(國家商用密碼)算法的示例的詳細內容,更多關于python 實現國家商用密碼算法的資料請關注好吧啦網其它相關文章!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 环球周刊网| 浙江自考_浙江自学考试网| 耐酸碱胶管_耐腐蚀软管总成_化学品输送软管_漯河利通液压科技耐油耐磨喷砂软管|耐腐蚀化学软管 | 塑料托盘厂家直销-吹塑托盘生产厂家-力库塑业【官网】 | 中央空调温控器_风机盘管温控器_智能_液晶_三速开关面板-中央空调温控器厂家 | 上海橡胶接头_弹簧减震器_金属软接头厂家-上海淞江集团 | 液压中心架,数控中心架,自定心中心架-烟台恒阳机电设计有限公司 行星搅拌机,双行星搅拌机,动力混合机,无锡米克斯行星搅拌机生产厂家 | 恒温油槽-恒温水槽-低温恒温槽厂家-宁波科麦仪器有限公司 | 防爆暖风机_防爆电暖器_防爆电暖风机_防爆电热油汀_南阳市中通智能科技集团有限公司 | 换链神器官网-友情链接交换、购买交易于一体的站长平台 | 聚氨酯复合板保温板厂家_廊坊华宇创新科技有限公司 | 一体化隔油提升设备-餐饮油水分离器-餐厨垃圾处理设备-隔油池-盐城金球环保产业发展有限公司 | 数显恒温油浴-电砂浴-高温油浴振荡器-常州迈科诺仪器有限公司 | 对照品_中药对照品_标准品_对照药材_「格利普」高纯中药标准品厂家-成都格利普生物科技有限公司 澳门精准正版免费大全,2025新澳门全年免费,新澳天天开奖免费资料大全最新,新澳2025今晚开奖资料,新澳马今天最快最新图库 | 宜兴紫砂壶知识分享 - 宜兴壶人 医用空气消毒机-医用管路消毒机-工作服消毒柜-成都三康王 | 天一线缆邯郸有限公司_煤矿用电缆厂家_矿用光缆厂家_矿用控制电缆_矿用通信电缆-天一线缆邯郸有限公司 | 凝胶成像仪,化学发光凝胶成像系统,凝胶成像分析系统-上海培清科技有限公司 | 北京公寓出租网-北京酒店式公寓出租平台| 冷柜风机-冰柜电机-罩极电机-外转子风机-EC直流电机厂家-杭州金久电器有限公司 | 神超官网_焊接圆锯片_高速钢锯片_硬质合金锯片_浙江神超锯业制造有限公司 | 自动化改造_智虎机器人_灌装机_贴标机-上海圣起包装机械 | 青岛球场围网,青岛车间隔离网,青岛机器人围栏,青岛水源地围网,青岛围网,青岛隔离栅-青岛晟腾金属制品有限公司 | 六维力传感器_三维力传感器_二维力传感器-南京神源生智能科技有限公司 | 绿萝净除甲醛|深圳除甲醛公司|测甲醛怎么收费|培训机构|电影院|办公室|车内|室内除甲醛案例|原理|方法|价格立马咨询 | 软膜天花_软膜灯箱_首选乐创品牌_一站式天花软膜材料供应商! | 黄石东方妇产医院_黄石妇科医院哪家好_黄石无痛人流医院 | 挨踢网-大家的导航!| 打造全球沸石生态圈 - 国投盛世 锂电混合机-新能源混合机-正极材料混料机-高镍,三元材料混料机-负极,包覆混合机-贝尔专业混合混料搅拌机械系统设备厂家 | 高速混合机_锂电混合机_VC高效混合机-无锡鑫海干燥粉体设备有限公司 | 皮带机-带式输送机价格-固定式胶带机生产厂家-河南坤威机械 | 噪声治理公司-噪音治理专业隔音降噪公司 | 电动球阀_不锈钢电动球阀_电动三通球阀_电动调节球阀_上海湖泉阀门有限公司 | _网名词典_网名大全_qq网名_情侣网名_个性网名 | 土壤墒情监测站_土壤墒情监测仪_土壤墒情监测系统_管式土壤墒情站-山东风途物联网 | 杰恒蠕动泵-蠕动泵专业厂家-19年专注蠕动泵| 水性漆|墙面漆|木器家具漆|水漆涂料_晨阳水漆官网 | 学叉车培训|叉车证报名|叉车查询|叉车证怎么考-工程机械培训网 | 杭州标识标牌|文化墙|展厅|导视|户内外广告|发光字|灯箱|铭阳制作公司 - 杭州标识标牌|文化墙|展厅|导视|户内外广告|发光字|灯箱|铭阳制作公司 | 智慧物联网行业一站式解决方案提供商-北京东成基业 | 附着力促进剂-尼龙处理剂-PP处理剂-金属附着力处理剂-东莞市炅盛塑胶科技有限公司 | UV-1800紫外光度计-紫外可见光度计厂家-翱艺仪器(上海)有限公司 |