1.前言近期做国密改造,需要前后端采用混合加密,其中SM4算法网上资源很少,即使有也是前台JS和后台JAVA加解密不一致。2.前端JavaScript2.1.代码输出截图:2.2.完整代码:<!DOCTYPE html<html>
<head>
<meta charset="UTF-8">
<title>SM4的加密解密</titl
转载
2023-07-20 21:57:37
414阅读
国密即国家密码局认定的国产密码算法。主要有SM1,SM2,SM3,SM4。密钥长度和分组长度均为128位。SM1 为对称加密。其加密强度与AES相当。该算法不公开,调用该算法时,需要通过加密芯片的接口进行调用。SM2为非对称加密,基于ECC。该算法已公开。由于该算法基于ECC,故其签名速度与秘钥生成速度都快于RSA。ECC 256位(SM2采用的就是ECC 256位的一种)安全强度比RS
转载
2023-08-24 20:06:16
317阅读
国密算法是国家密码局制定标准的一系列算法。其中包括了对称加密算法,椭圆曲线非对称加密算法,杂凑算法。具体包括SM1,SM2,SM3等,其中: SM2为国家密码管理局公布的公钥算法,其加密强度为256位。其它几个重要的商用密码算法包括: SM1,对称加密算法,加密强度为128位,采用硬件实现; SM3,密码杂凑算法,杂凑值长度为32字节,和SM2算法同期公布,参见《国家密码管理局公告(第 22
国产加密算法-java实现SM3一、国产加密算法介绍商用管理办公室制定了一系列标准,包括SM1(SCB2)、SM2、SM3、SM4、SM7、SM9、祖冲之算法(ZUC)那等等。其中SM1、SM4、SM7、祖冲之(ZUC)是对称算法;SM2、SM9是非对称算法;SM3是哈希算法。目前,这些算法已广泛应用于各个领域中,期待有一天会有采用国密算法的区块链应用出现。其中SM1、SM7算
转载
2023-06-28 14:19:08
6104阅读
## 实现“国密java实现”教程
### 一、流程表格
| 步骤 | 操作 |
| ---- | ---- |
| 1 | 下载并配置Bouncy Castle加解密库 |
| 2 | 创建国密SM2加密算法实现 |
| 3 | 创建国密SM3哈希算法实现 |
| 4 | 创建国密SM4对称加密算法实现 |
| 5 | 测试国密java实现是否成功 |
### 二、具体步骤及代码
###
原创
2024-05-16 07:28:46
95阅读
一、国密算法的背景1、国家密码管理局 1、密码算法是保障信息安全的核心技术,尤其是我国最关键的银行业核心领域长期以来都是沿用MD5、SHA-256、3DES、AES、RSA等这些国际通用的密码算法体系及相关标准。随着计算机性能提升,原本被认为安全的加密算法,也越来越容易破解。 •1997年,RSA公司破解DES用时76天,1998年用时41天,1999年EFF仅用22小时。 •2004年
转载
2023-07-21 17:59:03
17阅读
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 在openssl中和java进行SM4相关功能调试前言一、什么是SM4二、java使用步骤1.引入maven依赖2.java代码3.openssl验证总结 前言最近项目上要求增加国密相关的密钥和对应的算法,在此进行简单记录一、什么是SM4– SM4算法介绍 SM4 算法是一种分组密码算法。其分组长度为 128bit,密钥长度也为 1
转载
2023-11-28 06:13:31
870阅读
文章目录国密SM9算法C++实现之一:算法简介@[toc]曲线参数密钥部分算法部分用户身份标识符:IDSM9标识密码算法是由国密局发布的一种IBE(Identity-Based Encryption)算法。IBE算法以用户的身份标识作为公钥,不依赖于数字证书。国密SM9算法标准包括5个文档,分别为: 《GMT 0044-2016 SM9标识密码算法:第1部分 总则》 《GMT 0044-2016
转载
2024-03-11 11:57:11
92阅读
国产密码算法(国密算法)是指国家密码局认定的国产商用密码算法,目前主要使用公开的SM2、SM3、SM4三类算法,分别是非对称算法、哈希算法和对称算法。1.SM2算法:SM2椭圆曲线公钥密码算法是我国自主设计的公钥密码算法,包括SM2-1椭圆曲线数字签名算法,SM2-2椭圆曲线密钥交换协议,SM2-3椭圆曲线公钥加密算法,分别用于实现数字签名密钥协商和数据加密等功能。SM2算法与RSA算法不
转载
2023-11-09 07:14:29
89阅读
SM9算法C++实现系列目录:基于JPBC的SM9算法的java实现与测试国密SM9算法C++实现之0:源码下载地址国密SM9算法C++实现之一:算法简介国密SM9算法C++实现之二:测试工具国密SM9算法C++实现之三:椭圆曲线接口、参数初始化国密SM9算法C++实现之四:基本功能函数与KGC接口的实现国密SM9算法C++实现之五:签名验签算法国密SM9算法C++实现之六:密钥封装解封算法国密S
转载
2023-09-21 23:51:41
232阅读
1、基本密码部件,S盒置换,非线性变换τ,L变换,T变换public class BasicComponents {
private int[][] SBOX={{0xd6,0x90,0xe9,0xfe,0xcc,0xe1,0x3d,0xb7,0x16,0xb6,0x14,0xc2,0x28,0xfb,0x2c,0x05},
{0x2b,0x67,0x9a,0x76,0x
转载
2024-06-28 11:26:12
42阅读
一、SM3算法介绍SM3是国家密码管理局编制的商用算法,它是一种杂凑算法,可以应用于数字签名、验证等密码应用中。其计算方法、计算步骤和运算实例可以在国家商用密码管理办公室官网查看。该算法的输入是一个长度 L 比特的消息m,其中 L < 2^64 ,经过填充、迭代压缩后,生成一个256比特的输出。二、算法步骤2.1 填充长度假设消息m 的长度为 L 比特。首先将比特“1”添加到消息的末尾,再添
转载
2023-07-07 19:03:04
499阅读
国密算法系列(一)提示:本文是国密系列的首篇,主要讲述国密算法的概况。整个系列讲述国密算法的具体应用以及代码实现,如需转载请标注作者,谢谢!!!1.前言近些年随着人工智能、5G通信等技术迅猛的发展,个人所产生的数据、传输的数据逐渐增多,国际局势也风云变幻,信息安全成为当前不容忽视的问题。密码算法作为信息安全的核心自然而然成为关注的重点。2019年10月27日中华人民共和国密码法发布,也展露出国家对
转载
2023-10-28 14:55:13
78阅读
1.国密与非国密什么是国密?国密即国家密码局认定的国产密码算法。主要有SM1,SM2,SM3,SM4。 什么是非国密?就是除了国密以外的算法,包括除国密算法以外的加密算法。2.国密与非国密和http与https有什么关系?使用国密算法需要依靠https进行通信。使用非国密,如果使用了加密算法仍然要依靠https进行通信,没有加密算法可以使用http通信。3.基于nginx搭建非国密htt
转载
2023-11-02 13:15:21
304阅读
国密算法的应用场景 国家密码管理局推出的SM系列密码算法是为了从根本上摆脱我国对国外密码技术的依赖,实现从密码算法层面掌控核心的信息安全技术。 随着国密算法推广的延伸,金融领域引入SM2、SM3、SM4等算法逐步替换原有的RSA、ECC等国外算法。现有银联银行卡联网、银联IC两项规范都引入了国密算法相关要求。如下图所示为金融活动中会应用到国密算法的业务。此外,其他领域对于国密算法的应用要求也在逐步
转载
2024-01-16 14:30:04
55阅读
项目要求服务端与客户端支持国密证书建立ssl通道.在本地demo中可以建立完整的ssl连接并通信.服务端建立ssl时直接使用openssl加载根证书,服务端证书,服务端私钥.这里毫无问题.但是客户端必须调用windows的csp接口,而且windows系统目前不支持导入国密证书,所以建立连接的方式只能是通过usekey的形式(usebkey可以想象为银行u盾),usbkey中实现了csp接口.
转载
2024-04-20 18:56:40
79阅读
RSA是目前最有影响力和最常用的公钥加密算法,它能够抵抗到目前为止已知的绝大多数密码攻击,已被ISO推荐为公钥数据加密标准。SM2算法,由国家密码管理局于2010年12月发布,是我国自主设计的公钥密码算法。SM2基于更加安全先进的椭圆曲线密码机制,在国际标准的ECC椭圆曲线密码理论基础上进行改进而来,其加密强度更高。RSA算法,其数学原理相对简单,在工程应用中比较易于实现,但它的单位安全强度相对较
转载
2023-10-11 10:41:34
6阅读
国密办已于去年公布国产商密算法SM3,http://www.oscca.gov.cn/News/201012/News_1199.htm,这给其应用和开发带来了方便,也见网上有许多实现的例子,出于一个项目开发需要,也试试其实现。实现思路:完全从头来写不太适合如今开发时代,尤其是开源代码的大量使用。密码算法实现比较有名的就是:openssl,其体系庞大,使用也方便。但从学习与研究上来看,还是需要实现
转载
2023-12-28 12:48:26
63阅读
# 国密签章 Java 实现详解
在数字安全与信息保护日益重要的今天,数字签名技术逐渐被广泛应用于电子合同、政府公文、金融交易等领域。国密(中国国家商用密码算法)签章在许多场景中都具有重要的应用价值。本文将帮助你了解如何使用 Java 实现国密签章的功能。
## 流程概述
实现国密签章功能可以分为以下几个步骤:
| 步骤 | 描述 |
|-----
# Java实现国密SSL
## 流程
下面是实现国密SSL的整个流程:
| 步骤 | 描述 |
| --- | --- |
| 步骤1 | 创建SSL上下文 |
| 步骤2 | 配置SSL协议 |
| 步骤3 | 配置密钥管理器 |
| 步骤4 | 配置信任管理器 |
| 步骤5 | 创建SSL套接字工厂 |
| 步骤6 | 创建SSL套接字 |
| 步骤7 | 执行SSL握手 |
| 步
原创
2023-07-23 02:38:38
172阅读