发表于运维专区
2020/09/22 16:49

国密SSL协议之Nginx集成

背景 Nginx自身支持标准的SSL协议,但并不支持国密SSL协议。 本文描述了Nginx配置的国密SSL协议(单向)的完整过程,仅供学习和参考之用。 特点:Nginx 无需改动源码、支持任意版本。 环境 服务器OS是CentOS7.7的64位版本,IP位192.168.0.98,客户端OS是WindowsXP。 Nginx是Nginx-1.18.0。 浏览器是360安全浏览器(支持国密)。 安装方法一:源码编译 GMSSL.cn提供一个OpenSSL的国密版库,可与nginx编译,生成的nginx即支持...

0
0
发表了博客
2020/09/29 21:30

国密SSL协议之C语言编程

背景     OpenSSL支持标准的SSL协议,但并不支持国密SSL协议。本文描述了C语言使用国密版OpenSSL开发一个简单的客户端程序,连接国密Web网站,发送HTTP请求,并接收HTTP应答。 环境 Centos7 X64。 国密OpenSSL。下载参https://www.gmssl.cn/gmssl/index.jsp?go=gmsdk 将国密OpenSSL 展开为/usr/local/gmssl_10 源码 #include <netinet/in.h> #include <netdb.h> #include <stdio.h> #include <sys/types.h> #include <sys/soc...

0
0
2020/09/09 14:52

python实现sm2和sm4国密(国家商用密码)算法

GMSSL模块介绍 GmSSL是一个开源的加密包的python实现,支持SM2/SM3/SM4等国密(国家商用密码)算法、项目采用对商业应用友好的类BSD开源许可证,开源且可以用于闭源的商业应用。 安装模块 pip install gmssl #https://github.com/duanhongyi/gmssl/blob/master/README.md官方文档 SM2算法 RSA算法的危机在于其存在亚指数算法,对ECC算法而言一般没有亚指数攻击算法 SM2椭圆曲线公钥密码算法:我国自主知识产权的商用密码算法,是...

0
1
发表了博客
2018/04/16 11:52

SM2

一、介绍 #百度 二、生成密钥对及证书 1.使用gmssl工具   详见gmssl 2.go 版本   详见https://github.com/tjfoc/gmsm 3.java版本 #尚未实现   1.初步使用的是bouncycastle第三方加密类库。不过没实现   刚开始添加的依赖是下面的,后来才发现应该使用未注释的 <!-- https://mvnrepository.com/artifact/org.bouncycastle/bcprov-jdk15on --> <!--<dependency>--> <!--<groupId>org.bouncycastle</groupId>--> <...

0
0
2020/11/18 14:06

python实现AES/DES/RSA/MD5/SM2/SM4/3DES加密算法模板汇总

都是作者累积的,且看其珍惜,大家可以尽量可以保存一下,如果转载请写好出处https://www.cnblogs.com/pythonywy 一.md5加密 1.简介 这是一种使用非常广泛的加密方式,不可逆的,常见16位和32位一般都是md5 import hashlib data = '你好' print(hashlib.md5(data.encode(encoding="UTF-8")).hexdigest()) #32位 print(hashlib.md5(data.encode(encoding="UTF-8")).hexdigest()[8:-8]) #16位 二.RSA加密 1.简介 非对称加密算法,...

0
0
2020/08/20 14:42

python常用加密AES/DES/RSA/MD5/SM2/SM4/3DES

都是作者累积的,且看其珍惜,大家可以尽量可以保存一下,如果转载请写好出处https://www.cnblogs.com/pythonywy 一.md5加密 1.简介 这是一种使用非常广泛的加密方式,不可逆的,常见16位和32位一般都是md5 import hashlib data = '你好' print(hashlib.md5(data.encode(encoding="UTF-8")).hexdigest()) #32位 print(hashlib.md5(data.encode(encoding="UTF-8")).hexdigest()[8:-8]) #16位 二.RSA加密 1.简介 非对称加密算法,...

0
0
发表了博客
2019/05/26 16:35

2018-2019-2 20165221课程设计学习-总结报告

2018-2019-2 20165221课程设计学习-总结报告 眉头: 姓名:谭笑 学号:20165221 题目:GMSSL基于python的实现 指导老师:娄嘉鹏 完成时间:2019年5月6日---2019年5月26日 验收时间:2019年5月27日 小组成员:杨靖涛,谭笑,刘津甫 每周任务清单: week1 下载安装Python的编译运行环境 完成码云仓库和git的设置 了解几个国密算法 跟着网课学习一些Python的基本语法 week1学习博客链接 week2 搞清楚sm3国密算法的整个加解密过程 ...

0
0
01/20 14:25

python实现AES/DES/RSA/MD5/SM2/SM4/3DES加密算法模板汇总整理方便使用

都是作者累积的,且看其珍惜,大家可以尽量可以保存一下,如果转载请写好出处https://www.cnblogs.com/pythonywy 一.md5加密 1.简介 这是一种使用非常广泛的加密方式,不可逆的,常见16位和32位一般都是md5 import hashlib data = '你好' print(hashlib.md5(data.encode(encoding="UTF-8")).hexdigest()) #32位 print(hashlib.md5(data.encode(encoding="UTF-8")).hexdigest()[8:-8]) #16位 二.RSA加密 1.简介 非对称加密...

0
0
发表于区块链专区
2020/10/26 16:25

国密sm4--python版

### 国密sm4--python版 #### 国密sm4 sm4 算法是一个分组算法,用于无线局域网产品。该算法的分组长度为128比特,密钥长度为128比特。加密算法与密钥扩展算法都采用32轮非线性迭代结构。解密算法与加密算法的结构相同,只是轮密钥的使用顺序相反,解密轮密钥是加密轮密钥的逆序。 #### [GmSSL](https://github.com/duanhongyi/gmssl "GmSSL") GmSSL是一个开源的加密包的python实现,支持SM2/SM3/SM4等国密(国家商用密码)算法、项...

0
0
发表于程序人生专区
2020/12/23 22:40

使用 Python 脚本执行国密 sm2 加解密

## 一、场景 工作中的一个场景:Go 需要对信息加解密,但是研究了 [GmSSL Go API](http://gmssl.org/docs/go-api.html) 文档之后,发现是依赖于 CGO 的,同事配了半天环境没配成功。于是换了一个方法,选择 Go 调 Python 脚本执行加解密。之前我是写过 Python 对信息使用国密 sm2 算法进行加解密的,因此比较方便。 ## 二、代码 ```python import sys from gmssl import sm2 from base64 import b64encode, b64decode # sm2的公...

2
0
2020/07/24 00:12

在以太坊上如何实现联盟链

搞了三个月联盟链,基本上算是告一段落,大概梳理下所做的东西,希望能对要做联盟链的人有所帮助。 在写这篇文章前,简单介绍下联盟链的功能。 国密和国际算法切换 参数toml配置 有币无币 支持Gmssl P2P的证书准入 委员会成员更新 Solc编译器 Tendermint共识 权限准入 交易校验 Rpc 状态存储 系统合约 加密算法 国密和S256,P256 支持国密sm2,sm3,sm4,国际的支持p256,比特币和以太坊都使用的s256.刚开始做的时候计算支持p256和国...

0
0
发表了博客
2020/07/26 15:20

在以太坊上如何实现联盟链

搞了两三个月联盟链,基本上算是告一段落,大概梳理下所做的东西,希望能对要做联盟链的人有所帮助。 在写这篇文章前,简单介绍下联盟链的功能。 国密和国际算法切换 参数toml配置 有币无币 支持gmssl p2p的证书准入 委员会成员更新 solc编译器 tendermint共识 权限准入 交易校验 rpc api 状态存储 系统合约 加密算法 国密和S256,P256 支持国密sm2,sm3,sm4,国际的支持p256,比特币和以太坊都使用的s256.刚开始做的时候计算支持p...

0
0
发表了博客
2019/09/23 10:58

国密证书生成实践

实验环境: Linux ubuntu/Centos 64 x86_64 x86_64 x86_64 GNU/Linux   1、根据官网说明安装gmssl   $ unzip GmSSL-master.zip $ cd GmSSL-master $ ./config no-saf no-sdf no-skf no-sof no-zuc no-shared #不去编译动态库,编译出来的gmssl不再依赖libssl.so $ make $ sudo make install    2、修改/usr/local/ssl/openssl.cnf配置 $ vi /usr/local/sslopenssl.cnf    [ ca ] default_ca ...

0
0
发表了博客
2020/04/10 11:36

SSL通信双方如何判断对方采用了国密

SSL通信双方如何判断对方采用了国密 14 天前2020-03-25 21:45:11阅读 720 https://cloud.tencent.com/developer/search/article-国密 SSL通信涉及两方的参与者,通常采用的模型是Client/Server。如果我们开发Client端产品(比如浏览器),可能会和多方的Server产品对接。那么问题来了,双方是如何知道对方使用了国密算法呢?这个问题非常重要,只有双方采用同样的加密标准,才能正常通信。难道采用“天王盖地虎,宝塔镇河妖”的...

0
0
发表于开发技能专区
2020/09/04 17:36

常见算法安全

常见算法安全 概述 本文讨论现下常见算法的安全问题 范围 种类包括 对称加密/非对称加密/摘要/编码 标准包括 国际标准和国家标准 算法种类 对称算法(分组密码算法):AES/DES/SM4 非对称算法(公钥密码算法):RSA/SM2 摘要算法(杂凑算法):MD5/SHA-I/SM3 编码 Base64 SMx为国密算法 不安全算法/用法和建议 不安全用法/禁止: 数据库存储用户密码明文或不安全算法加密的密文 日志文件中用户密码明文或不安全算法加密的密文 ...

0
0
发表了博客
2019/04/10 10:10

基于crypto++国产加密软件SM4的实现,和文件的加解密,顺带加了ase,base64。

唔,美国压制得越狠,各种替代产品就越能活。 本文分享SM4的一种快速实现与集成方式。 SM4(原名SMS4)是中华人民共和国政府采用的一种分组密码标准,由国家密码管理局于2012年3月21日发布[1][2],相关标准为“GM/T 0002-2012《SM4分组密码算法》(原SMS4分组密码算法)”[1]。2016年8月,成为中国国家密码标准(GB/T 32907-2016)[3]。在商用密码体系中,SM4主要用于数据加密,其算法公开,分组长度与密钥长度均为128bit,加密...

0
0
发表了博客
2020/06/06 07:46

什么是证书链?

证书链是什么链么,能发币么? 我日常工作中,总要在手机里备一份CA的证书链文件,经常有人要我发一份我们的证书链文件。这时候我想说,“我们是权威的政务服务电子认证机构,我们的证书链是可以从网上下载到的。" 不要懵,证书链通常都是公开,不需要保密!此时你是不是感到疑惑,通常我们的证书不都是存在U盾中的么,怎么能轻易交给别人? 为了说明这些问题,我要讲一些概念。本着越基础,越不好讲的原则,我从公钥算法讲起,...

0
0
发表了博客
2020/08/18 09:43

蓝帽杯-wp

所有做出的题解都放出来了,本来想先研究python那题再发的。。结果没出来 一家人整整齐齐 & 二进制爷爷,一题进复赛 签到 gif分解帧,再看不同色域通道。得到flag sudo 做对九宫格3次,在github上找到了九宫格算法 import numpy as np from pwn import * import time def solve(m): if isinstance(m, list): m = np.array(m) elif isinstance(m, str): m = np.loadtxt(m, dtype=np.int, delimiter=",") rg = np.arange(...

0
0
发表了博客
2020/08/20 08:34

蓝帽杯-wp

我们队所有做出的题解都放出来了,本来想先研究python那题再发的。。结果没出来 一家人整整齐齐 & 二进制爷爷,一题进复赛 签到 gif分解帧,再看不同色域通道。得到flag sudo 做对九宫格3次,在github上找到了九宫格算法 import numpy as np from pwn import * import time def solve(m): if isinstance(m, list): m = np.array(m) elif isinstance(m, str): m = np.loadtxt(m, dtype=np.int, delimiter=",") rg = np.a...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页