
密码学与信息安全
文章平均质量分 62
henter
这个作者很懒,什么都没留下…
展开
-
记录 Windows 下编译一个开源 SM9 签名验签 C 程序的过程
注:本文不讨论算法具体实现细节,只介绍如何编译一个现有的程序实现。 在商用密码检测中心( 链接:http://www.scctc.org.cn/index.aspx )的网站上,“下载中心” -> “算法源代码”网页( 链接:http://www.scctc.org.cn/templates/Download/index.aspx?nodeid=71 )上发布了国密 SM9...原创 2020-02-15 23:48:55 · 4309 阅读 · 22 评论 -
使用 VS 2019 编译开源软件 MIRACL (3)
这里将演示如何链接编译好的 MIRACL 32 位静态库,编译并运行一个自带的示例程序 brent.c,该示例程序的功能是做整数分解运算。 新建子目录 D:\tmp\brent ,然后启动 VS 2019, 创建新项目。此时创建一个空项目,如下图: 项目名称和路径的设置如下图: 将 D:\tmp\MIRACL\sou...原创 2019-12-18 23:32:25 · 1936 阅读 · 3 评论 -
使用 VS 2019 编译开源软件 MIRACL (2)
启动VS 2019,选择“创建新项目”,然后在创建新项目类型列表中,选择“静态库”,如下图: 在“配置新项目”弹出窗口中,将项目名称设为 miracl_x86 ,设置项目保存位置,点击“创建”按钮。如下图: VS 2019会自动为用户生成 miracle_x86.cpp 和 pch.cpp 两个文件,将这两个文件移除。如下图:...原创 2019-12-18 23:25:25 · 2163 阅读 · 0 评论 -
使用 VS 2019 编译开源软件 MIRACL (1)
Cryptographic SDK 是一个开源的密码学和多精度整数及有理数运算软件,开发语言为ANSI C。它在Github 上的链接是:https://github.com/miracl/MIRACL 。注意如果用于商业用途,需要向开发方购买许可证。本文将介绍如何将其源码编译为库文件,这里使用的操作系统是 64位 Windows 10,编译工具是 Visual Studio...原创 2019-12-18 23:04:51 · 3449 阅读 · 0 评论 -
介绍一下 X.509 数字证书中的扩展项 subjectAltName
在 RFC 5280《Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile》中定义了 X.509 公钥数字证书和证书撤销列表的内容和格式。 在 X.509 编码格式的数字证书中,使用 Issuer 子项标明证书的颁发者,I...原创 2019-06-09 12:23:43 · 17312 阅读 · 0 评论 -
介绍一种门限SM2密码方案
中科院信息工程研究所的科研人员林璟锵、马原、荆继武等设计了一种 SM2 门限密码算法实现方案,他们在 2014 年 8 月向国家知识产权局提交了专利申请,名称是《适用于云计算的基于SM2算法的签名及解密方法和系统》,授权公告号是:CN 104243456 B,该专利的内容已在国家知识产权局的网站上公开,可以在网站 http://epub.sipo.gov.cn/ 上查到。...原创 2019-06-07 09:57:20 · 8778 阅读 · 8 评论 -
基于杂凑函数的确定性随机比特生成器(Hash_DRBG)
对称加密的密钥及非对称加密的私钥,通常是随机生成的比特串。在公钥加密、数字签名计算过程中,如果使用概率性非对称算法(比如椭圆曲线算法),将会用到随机数。要生成随机数,可以使用物理噪声源。在对安全性要求较高的环境中,随机数一般使用特殊硬件生成。当没有可用来生成随机数的硬件时,如果能够进行人机交互,可以采集用户的随意行为轨迹数据(比如敲击键盘的时间间隔、鼠标随意移动的轨迹)作为随机源。...原创 2019-02-11 21:53:23 · 5267 阅读 · 0 评论 -
国内商密与信息安全管理机构网站简介
1.国家密码管理局 国家商用密码管理办公室网站升级改版后,新网站被命名为国家密码管理局门户网站。网址是:http://www.oscca.gov.cn/sca/index.shtml在该网站上可以查看到以下信息:a)已颁布的密码行业标准规范的简要概况;b)已被授予型号证书编号的商用密码产品目录;c)电子政务电子认证服务机构目录;d)商用密码产品审批服务指南;d)国家密码管理局发...原创 2019-01-03 17:37:49 · 4844 阅读 · 0 评论 -
基于OpenSSL 1.1.1版实现的SM2签名与验签C程序
OpenSSL 1.1.1 版提供了对国密 SM4、SM3、SM2 算法的支持。对于 SM2 算法,在源码的 crypto/sm2 目录下,sm2_sign.c 文件中实现了 SM2 签名与验签,sm2_crypt.c 文件中实现了 SM2 加密与解密,这些源码是很好的学习范例。但是sm2.h, sm3.h, sm4.h 这些头文件是放在源码的 crypto/include/inter...原创 2018-11-20 22:08:10 · 14356 阅读 · 90 评论 -
Windows下使用CertUtil命令计算文件的Hash值及做Base64编解码
Windows 操作系统从 Win7 开始,包含了一个名为 CertUtil 的命令。可以使用该命令计算指定文件的杂凑值,具体用法如下:CertUtil -hashfile 文件名(可包含路径) 杂凑算法名 “杂凑算法名”可以取以下值:MD2, MD5, MD5, SHA1, SHA256, SHA384, SHA512。当该参数被省略时,使用 SHA1 算法。 使用...原创 2018-04-25 15:04:51 · 12834 阅读 · 0 评论 -
计算哈希值工具简介
本文介绍了一些计算哈希函数值的工具。原创 2017-11-30 16:51:17 · 9637 阅读 · 2 评论 -
发布一个智能密码钥匙内部证书导出工具ExportCert
本文介绍了作者开发的一个智能密码钥匙内部证书导出工具ExportCert。原创 2017-05-22 17:11:45 · 1544 阅读 · 0 评论 -
智能密码钥匙查看器UkeyViewer
本文介绍了作者开发的一个小工具——智能密码钥匙内部信息查看器UkeyViewer。原创 2017-02-05 22:12:55 · 2811 阅读 · 0 评论 -
编程实现与时间戳服务器的通信
介绍了编程实现与一个网上的时间戳服务器通信的方法。原创 2014-08-21 16:40:35 · 2579 阅读 · 14 评论 -
介绍一个法国的时间戳服务器
本文介绍了从一个法国的时间戳服务器获取时间戳的方法。原创 2014-08-14 18:08:17 · 2571 阅读 · 11 评论 -
C语言实现的SM2数字签名验证
在 goldboar 写的 SM2 签名及验签函数( http://download.youkuaiyun.com/detail/goldboar/3833072)基础上,改写了一个纯粹用于验证SM2签名的函数。原创 2014-07-15 15:31:56 · 13070 阅读 · 6 评论 -
SM2 签名前要进行的预处理操作
本文给出了一个 SM2 签名前预处理操作的参考实现,预处理时使用了 SM3 Hash 算法,但不是简单的直接使用。原创 2013-10-30 10:35:42 · 9863 阅读 · 18 评论 -
编程过程中在对概率加密或概率签名结果做编码时要注意的问题
(注意本文中出现的 C 代码只是一个大致的描述,并不是实际可运行的代码)先大致介绍一下概率加密 (Probabilistic Encryption),不用严格的学术定义的话,可以这样说:概率加密是指具有以下性质的公钥加密算法:对于相同的明文,生成的密文随机变化。最基本的 RSA 算法不是概率加密函数,而它的衍生算法 RSA-OAEP 是一个概率加密函数。使用概率加密有什么好处...原创 2013-09-04 14:26:55 · 1484 阅读 · 0 评论