gmgo国密算法库
gmgo国密算法库
一、背景介绍
基于go1.17.5实现的国密算法库,包括:
sm2 : 基于emmansun/gmsm的sm2部分实现部分扩展。
sm3 : 基于emmansun/gmsm的sm3部分实现部分扩展。
sm4 : 基于emmansun/gmsm的sm4部分实现部分扩展。
二、前期准备
1 go语言环境安装
参考我之前发的博客:https://www.cnblogs.com/yu15141310373/p/16949711.html
2 压缩包下载
下载地址:https://gitee.com/zhaochuninhefei/gmgo
三、代码调试
从测试案例入手快速了解gmgo的使用。
sm2
测试案例代码: sm2test/sm2_test.go
cd sm2test
go test

sm3
测试案例代码: sm3/sm3_test.go
cd sm3
go test

sm4
测试案例代码: sm4/sm4_test.go、sm4/sm4_gcm_test.go
cd sm4
go test

gmgo国密算法库的更多相关文章
- 20155206赵飞 基于《Arm试验箱的国密算法应用》课程设计个人报告
		20155206赵飞 基于<Arm试验箱的国密算法应用>课程设计个人报告 课程设计中承担的任务 完成试验箱测试功能1,2,3 . 1:LED闪烁实验 一.实验目的  学习GPIO原理  ... 
- 《基于Arm实验箱的国密算法应用》课程设计 结题报告
		<基于Arm实验箱的国密算法应用>课程设计 结题报告 小组成员姓名:20155206赵飞 20155220吴思其 20155234昝昕明 指导教师:娄嘉鹏 设计方案 题目要求:基于Arm实 ... 
- 2015520吴思其 基于《Arm试验箱的国密算法应用》课程设计个人报告
		20155200吴思其 基于<Arm试验箱的国密算法应用>课程设计个人报告 课程设计中承担的任务 完成试验箱测试功能4,5,6以及SM3加密实验的实现 测试四 GPIO0按键中断实验 实验 ... 
- 国密算法SM2证书制作
		国密算法sm2非对称算法椭圆曲线 原文:http://www.jonllen.cn/jonllen/work/162.aspx 前段时间将系统的RSA算法全部升级为SM2国密算法,密码机和UKey硬件 ... 
- SM 国密算法踩坑指南
		各位,好久不见~ 最近接手网联的国密改造项目,由于对国密算法比较陌生,前期碰到了一系列国密算法加解密的问题. 所以这次总结一下,分享这个过程遇到的问题,希望帮到大家. 国密 什么是国密算法? 国密就是 ... 
- Hyperledger Fabric密码模块系列之BCCSP(五) - 国密算法实现
		Talk is cheap, show me your code. 代码也看了,蛋也扯了,之后总该做点什么.响应国家政策,把我们的国密算法融合进去吧-- 先附两张bccsp下国密算法的设计实现图. ... 
- 关于国密算法 SM1,SM2,SM3,SM4 的笔记
		国密即国家密码局认定的国产密码算法.主要有SM1,SM2,SM3,SM4.密钥长度和分组长度均为128位. SM1 为对称加密.其加密强度与AES相当.该算法不公开,调用该算法时,需要通过加密芯片的接 ... 
- 20155234 昝昕明《基于ARM实验箱的国密算法应用》课程设计个人报告
		20155234 昝昕明<基于ARM实验箱的国密算法应用>课程设计个人报告 个人贡献 参与课设题目讨论及完成全过程: 资料收集: SM1算法及和ARM之间通信 负责串口代码调试: 协调完成 ... 
- java sm4国密算法加密、解密
		java sm4国密算法加密.解密 CreationTime--2018年7月5日09点20分 Author:Marydon 1.准备工作 所需jar包: bcprov-jdk15on-1.59. ... 
- 国密算法--Openssl 实现国密算法(基础介绍和产生秘钥对)
		国密非对称加密算法 又称sm2,它是采取了ECC(曲线加密算法)中的一条固定的曲线,实际上就是ECC算法. 因为openssl里面不包含sm2算法,所以就要重新进行封装-. - 对于ECC算法我就不介 ... 
随机推荐
- ModuleNotFoundError: No module named 'MySQLdb'
			执行命令 python manage.py makemigrations时抛出以下错误 Traceback (most recent call last): File "D:\Program ... 
- 微信小程序地区和location_id对应关系
			点击查看代码 location_list = [ {'location_id': '101010100', 'location_name': ['北京', '北京', '北京']}, {'locati ... 
- c语言学习总结(原创)
			什么是标识符? 标识符是用来标识变量.函数.类.模块,或者任何其他用户自定义项目的名称,用它来命名程序正文中的一些实体,比如函数名.变量名.类名.对象名等.如:int a1=0; const b1=& ... 
- S2-015 CVE-2013-2135, CVE-2013-2134
			漏洞名称 S2-015(CVE-2013-2135, CVE-2013-2134) 利用条件 Struts 2.0.0 - Struts 2.3.14.2 漏洞原理 原理一:一旦配置通配符*,访问 n ... 
- 用Java写一个分布式缓存——缓存淘汰算法
			前言 之前也用过一些缓存中间件,框架,也想着自己是不是也能用Java写一个出来,于是就有了这个想法,打算在写的过程中同步进行总结. 源码:weloe/Java-Distributed-Cache (g ... 
- Linux基础介绍
			Linux基础介绍 一.运维的本质 运维:运行维护应用程序 岗位需求:自动化运维.DBA.docker+K8s 运维的本质: 1.尽可能保证应用程序24小时不间断运行 2.尽可能保证数据的安全 3.尽 ... 
- vue-admin-template 单页面刷新 404 问题
			vue-admin-template (vue-element-admin)是个非常好用的B端UI框架,谁用谁知道! 在使用的过程中,加入权限模块后,刷新后权限控制的页面就默认跳转到404页面了,搞了 ... 
- 文献阅读01:由I类HLA转录缺失导致的联合免疫治疗的获得性癌症耐药性
			背景 Merkel cell carcinoma:梅克尔细胞癌又名皮肤小梁状癌.原发性皮肤神经内分泌癌.皮肤原发性小细胞癌及皮肤APUD瘤. HLA:MHC基因产物在不同细胞表面表达,通常称之为MHC ... 
- 10月31日ATM编写逻辑描述
			目录 ATM逻辑描述 三层框架简介 1.第一层(src.py) 2.第二层(interface文件夹下内容) 3.第三层(db_hanlder) 启动函数 用户注册功能 用户登录 common中的小功 ... 
- 可能是最简单的本地GPT3 对话机器人,支持OpenAI 和 Azure OpenAI
			毫无疑问,GPT是目前最火的人工智能方向,已经商用的有OpenAI公司原生的GPT3 和 ChatGPT ,以及微软公司的Azure OpenAI Service (暂时还没有包含ChatGPT).关 ... 
