# hggm - 国密算法 SM2 SM3 SM4 SM9 ZUC Python实现完整代码
#### 介绍
国密算法 SM2公钥密码 SM3杂凑算法 SM4分组密码 SM9标识密码 ZUC(祖冲之密码)序列密码 Python代码完整实现 效率高于所有公开的Python国密算法库
#### 软件架构
根目录里的hggm_test.py是测试文件,对实现的所有功能进行正确性与性能测试,并与gmssl、pysmx和Crypto相应实现做对比,可作为代码使用的范例;
/hggm 目录里的是高效实现版本,依赖的库较多(新版的SM2代码已经不依赖Crypto库);
/hggm/slow 目录里的是低速版本,纯Python实现,基本不依赖第三方Python库,适合教学
#### 安装教程
1.复制代码文件到Python工程中
2.以测试代码为参考调用相应函数
要完整运行测试代码hggm_test.py,还需注意依赖库的安装:
(1)Crypto老版本没有int * EccPoint实现,最新版本(3.14.1)缺SHA256和ARC4的链接库,3.10.1版本是没有上述问题的(pip install pycryptodome==3.10.1)
若已安装其他版本Crypto,可在命令行输入:
pip uninstall pycryptodome
pip install pycryptodome==3.10.1
(2)还需安装①gmssl(SM9测试用到的gmssl不是通过"pip install gmssl"安装的版本,需要到 https://github.com/gongxian-ding/gmssl-python 下载源代码放到本代码同目录)和②pysmx(pip install snowland-smx)
(3)hggm_test.py第16行(from pysmx.SM2 import Sign, Verify, Encrypt, Decrypt, kG, sm2_G)会报错,找到Python第三方库目录\pysmx\SM2_init_.py,在import里添加kG, sm2_G可解决
3.论文《国密算法SM9的性能优化方法》《国密算法SM9的计算性能改进方法》《基于国密算法SM9的加法同态加密方案》相关的测试代码是/hggm/SM9_test.py,该代码文件的运行依赖同目录SM3.py
#### 使用说明
我的CSDN博客对SM2、SM3、SM4、SM9、ZUC等国密算法有相关说明:
第一篇SM2:https://blog.csdn.net/qq_43339242/article/details/123221091
第二篇SM2:https://blog.csdn.net/qq_43339242/article/details/125738524
第三篇SM2:https://blog.csdn.net/qq_43339242/article/details/132990982
SM3:https://blog.csdn.net/qq_43339242/article/details/123709822
SM4:https://blog.csdn.net/qq_43339242/article/details/123607119
第一篇SM9:https://blog.csdn.net/qq_43339242/article/details/134050809
第二篇SM9:https://blog.csdn.net/qq_43339242/article/details/134330305
ZUC:https://blog.csdn.net/qq_43339242/article/details/124212075
汇总测试:https://blog.csdn.net/qq_43339242/article/details/123981081
#### 参与贡献
1. Fork 本仓库
2. 新建 Feat_xxx 分支
3. 提交代码
4. 新建 Pull Request
#### 特技
1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md
2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com)
3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目
4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目
5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help)
6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)
没有合适的资源?快使用搜索试试~ 我知道了~
hggm - 国密算法 SM2 SM3 SM4 SM9 ZUC Python实现完整代码
共21个文件
py:12个
bin:2个
keep:2个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
5星 · 超过95%的资源 1 下载量 48 浏览量
2024-07-02
13:41:03
上传
评论
收藏 2.67MB ZIP 举报
温馨提示
国密算法 SM2公钥密码 SM3杂凑算法 SM4分组密码 SM9标识密码 ZUC(祖冲之密码)序列密码 Python代码完整实现 效率高于所有公开的Python国密算法库;国密算法 SM2公钥密码 SM3杂凑算法 SM4分组密码 SM9标识密码 ZUC(祖冲之密码)序列密码 Python代码完整实现 效率高于所有公开的Python国密算法库;国密算法 SM2公钥密码 SM3杂凑算法 SM4分组密码 SM9标识密码 ZUC(祖冲之密码)序列密码 Python代码完整实现 效率高于所有公开的Python国密算法库;国密算法 SM2公钥密码 SM3杂凑算法 SM4分组密码 SM9标识密码 ZUC(祖冲之密码)序列密码 Python代码完整实现 效率高于所有公开的Python国密算法库;国密算法 SM2公钥密码 SM3杂凑算法 SM4分组密码 SM9标识密码 ZUC(祖冲之密码)序列密码 Python代码完整实现 效率高于所有公开的Python国密算法库;国密算法 SM2公钥密码 SM3杂凑算法 SM4分组密码 SM9标识密码 ZUC(祖冲之密码)序列密码 Python代码完整实现 效率高于所
资源推荐
资源详情
资源评论
收起资源包目录
hggm.zip (21个子文件)
hggm
新建文本文档.txt 0B
LICENSE 11KB
hggm_test.py 67KB
.gitignore 350B
hggm
ecc.pyd 730KB
SM3.py 2KB
SM2.py 19KB
SM9_kG.bin 1.49MB
SM4.py 6KB
SM2_kG.bin 510KB
ZUC.py 7KB
SM9.py 31KB
slow
SM3.py 2KB
SM2.py 27KB
SM4.py 4KB
ZUC.py 6KB
SM9.py 25KB
.keep 0B
.keep 0B
SM9_test.py 55KB
README.md 3KB
共 21 条
- 1
资源评论
- liujianchou2024-09-19资源有一定的参考价值,与资源描述一致,很实用,能够借鉴的部分挺多的,值得下载。
0仰望星空007
- 粉丝: 4228
- 资源: 585
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功