#### 介绍 基于Cython的快速国密算法Python实现,目前支持SM2, SM3, SM4(ECB、CBC) #### 安装教程 ``` pip install fastgm ``` #### 使用说明 ##### SM2 SM2是国家密码管理局发布的椭圆曲线公钥密码算法。对标RSA 使用方法: + 生成秘钥 ``` from fastgm import SM2 sk, pk = SM2.generate_key() # sk为私钥,pk为公钥,均为hex格式 ``` + 使用公钥加密 ``` from fastgm import SM2 pk = 'B9C9A6E04E9C91F7BA880429273747D7EF5DDEB0BB2FF6317EB00BEF331A83081A6994B8993F3F5D6EADDDB81872266C87C018FB4162F5AF347B483E24620207' # 公钥,Hex格式 data = b'helloworld' # 待加密内容,格式为bytes数组 sm2 = SM2() # 初始化 enc = sm2.encrypt(pk, data) # 运行加密算法 ``` + 使用私钥解密 ``` from fastgm import SM2 sk = '00B9AB0B828FF68872F21A837FC303668428DEA11DCD1B24429D0C99E24EED83D5' # 私钥 sm2 = SM2() # 初始化 dec = sm2.decrypt(sk, enc) # 运行解密算法,enc为加密内容 ``` #### SM3 SM3密码杂凑算法是中国国家密码管理局2010年公布的中国商用密码杂凑算法标准。对标MD5 使用方法: ``` from fastgm import SM3 data = b'helloworld' # 待哈希bytes数组 h = SM3().hash(data) # 哈希运算 ``` #### SM4 SM4.0(原名SMS4.0)是中华人民共和国政府采用的一种分组密码标准。对标AES。 -------- 该资源内项目源码是个人的毕设,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! <项目介绍> 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 --------
- 1
- m0_466885902024-07-11发现一个宝藏资源,资源有很高的参考价值,赶紧学起来~
- 粉丝: 1195
- 资源: 2908
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助