IT点滴

我不去想是否能够成功 既然选择了远方 便只顾风雨兼程
  博客园  :: 首页  :: 联系 :: 订阅 订阅  :: 管理

随笔分类 -  Openssl

摘要:原文 https://blog.csdn.net/zhymax/article/details/7683925 Openssl提供了强大证书功能,生成密钥对、证书,颁发证书、生成crl、验证证书、销毁证书等。本文将j介绍如何利用openssl的命令分析RSA私钥文件格式,同时也将简单介绍几种常见的私 阅读全文

posted @ 2018-07-25 16:11 Ady Lee 阅读(3039) 评论(0) 推荐(0)

摘要:RSA是基于数论中大素数的乘积难分解理论上的非对称加密法。在此密码术中,使用公钥(public key)和私钥(private key)两个不同的密钥:公钥用于加密,它是向所有人公开的;私钥用于解密,只有密文的接收者持有。 举例:小红希望安全地发送一条消息给小明,消息明文为m,小明的公钥为K+,小明 阅读全文

posted @ 2018-07-25 16:06 Ady Lee 阅读(948) 评论(0) 推荐(0)

摘要:http://blog.sina.com.cn/s/blog_4fcd1ea30100yh4s.html 在PKCS#1 RSA算法标准中定义RSA私钥语法为: RSAPrivateKey ::= SEQUENCE { version Version, modulus INTEGER, -- n p 阅读全文

posted @ 2018-07-25 15:58 Ady Lee 阅读(2781) 评论(0) 推荐(0)

摘要:1.证书格式PEM 格式PEM格式通常用于数字证书认证机构(Certificate Authorities,CA),扩展名为.pem, .crt, .cer, and .key。内容为Base64编码的ASCII码文件,有类似"-----BEGIN CERTIFICATE-----" 和 "-----END CERTIFICATE-----"的头尾标记。服务器认证证书,中级认证证书和私钥都可以储存为PEM格式(认证证书其实就是公钥)。Apache和类似的服务器使用PEM格式证书。DER 格式DER格式与PEM不同之处在于其使用二进制而不是Base64编码 阅读全文

posted @ 2014-03-20 14:57 Ady Lee

摘要:在使用OpenSSL进行SSL双向认证时,需要在服务器和客户端配置如下接口函数:[cpp]view plaincopyprint?SSL_CTX_set_verify(SSL_CTX*ctx,intmode,int(*verify_callback)(int,X509_STORE_CTX*));SSL_CTX_load_verify_locations(SSL_CTX*ctx,constchar*CAfile,constchar*CApath);在接口函数SSL_CTX_set_verify中设置第二个参数(mode)为SSL_VERIFY_PEER,该参数标识对通信对方进行认证。如果设置证书 阅读全文

posted @ 2014-03-20 14:05 Ady Lee

摘要:使用Crypto库签名和验证签名请参考Crypto库实现PKCS7签名与签名验证,可以使用OpenSSL库验证Crypto签名,OpenSSL验证签名可使用简单的代码描述如下:[cpp]view plaincopyprint?//signature_msg为PKCS7签名串[cpp]view plaincopyprint?intOpenssl_Verify(unsignedchar*signature_msg,unsignedintlength){unsignedcharmessage[1024];intmessage_length=0;constunsignedchar*p_signatur 阅读全文

posted @ 2014-03-20 14:03 Ady Lee

摘要:这段时间要实现一个认证协议,分为客户端和服务器端,客户端使用windows操作系统,服务器端使用linux操作系统,在客户端下(windows),使用windows证书库中的签名证书对消息进行签名(使用windows的crypto库),然后在服务器端(linux)下,使用OpenSSL库对签名值进行验证~~客户端使用函数接口:CertOpenSystemStore — 打开系统证书库CryptUIDlgSelectCertificateFromStore — 从证书库中选择证书,获取证书上下文CertGetCertificateContextProperty — 获取属性CERT_KEY_.. 阅读全文

posted @ 2014-03-20 13:59 Ady Lee 阅读(1184) 评论(0) 推荐(0)

摘要:前一段时间对OpenSSL库中的SSL通讯稍微琢磨了一下,在百度文库中找了个示例程序,然后在机器上跑,哇塞,运行成功!那时那个惊喜啊,SSL蛮简单的嘛。前几天,老板要我整一个SSL通讯,要使用windows证书库中的证书进行双向认证,我就想,那不是一小case嘛,于是没怎么放在心上,先休息两天再说。。昨天开完会后,决定开始整。。一打开原来做的SSL工程,我靠,傻眼了,原来示例程序中使用的都是OpenSSL生成的,例如CA证书,Server端证书,Client端证书,以及各自的密钥文件,我想,这咋办呢,还是把windows证书库中的证书先导出来,然后在程序中使用证书文件吧,但又一想,如果是多.. 阅读全文

posted @ 2014-03-20 13:58 Ady Lee

摘要:这两个星期真是被OpenSSL给烦透了,几个很简单基本的问题(如果没人告诉你真的很难测出来)把我搞的。。哎,有时候真是不知道自己该不该搞技术,发现自己头脑真是蠢得很。。。直接上正题。第一个问题:前面讲过OpenSSL可以使用windows下的CAPI引擎(我也不太清楚是从哪个版本开始后就开始支持了,网上说是0.9.8i后),但是OpenSSL在windows下默认编译时是不会把它加入内嵌引擎的,所以我们要在编译时设置一些参数。。如果要使用CAPI引擎,我们要在编译源码时使用:>perl Configure VC-WIN32 enable-capieng -DOPENSSL_SSL_CLI 阅读全文

posted @ 2014-03-20 13:22 Ady Lee

摘要:SSL连接建立过程分析(6)本文档的Copyleft归yfydz所有,使用GPL发布,可以自由拷贝,转载,转载时请保持文档的完整性,严禁用于任何商业用途。msn: yfydz_no1@hotmail.com来源:http://yfydz.cublog.cn/2.15 SSL_writeSSL结构(struct ssl_st)中的s2,s3指针分别指向SSL2和SSL3的状态结构,这些状态结构中都有... 阅读全文

posted @ 2009-08-07 12:31 Ady Lee 阅读(1011) 评论(1) 推荐(0)

摘要:SSL连接建立过程分析(5)本文档的Copyleft归yfydz所有,使用GPL发布,可以自由拷贝,转载,转载时请保持文档的完整性,严禁用于任何商业用途。msn: yfydz_no1@hotmail.com来源:http://yfydz.cublog.cn/2.14 SSL_readSSL结构(struct ssl_st)中的s2,s3指针分别指向SSL2和SSL3的状态结构,这些状态结构中都有用... 阅读全文

posted @ 2009-08-07 12:29 Ady Lee 阅读(1125) 评论(0) 推荐(0)

摘要:SSL连接建立过程分析(4)本文档的Copyleft归yfydz所有,使用GPL发布,可以自由拷贝,转载,转载时请保持文档的完整性,严禁用于任何商业用途。msn: yfydz_no1@hotmail.com来源:http://yfydz.cublog.cn/2.13 SSL_connectSSL_connect()这个函数完成SSL协商的客户端操作:/* ssl/ssl_lib.c */int S... 阅读全文

posted @ 2009-08-07 12:28 Ady Lee 阅读(1240) 评论(0) 推荐(0)

摘要:SSL连接建立过程分析(3)本文档的Copyleft归yfydz所有,使用GPL发布,可以自由拷贝,转载,转载时请保持文档的完整性,严禁用于任何商业用途。msn: yfydz_no1@hotmail.com来源:http://yfydz.cublog.cn/2.12 SSL_acceptSSL_accept()函数完成SSL协商的服务器端操作:/* ssl/ssl_lib.c */int SSL_... 阅读全文

posted @ 2009-08-07 12:20 Ady Lee 阅读(1391) 评论(0) 推荐(0)

摘要:SSL连接建立过程分析(2)本文档的Copyleft归yfydz所有,使用GPL发布,可以自由拷贝,转载,转载时请保持文档的完整性,严禁用于任何商业用途。msn: yfydz_no1@hotmail.com来源:http://yfydz.cublog.cn/2.6 SSL_CTX_set_default_passwd_cb[_userdata]()这个函数比较简单,就是设置SSL要加载的证书的口令... 阅读全文

posted @ 2009-08-07 12:19 Ady Lee 阅读(990) 评论(0) 推荐(0)

摘要:SSL连接建立过程分析(1)本文档的Copyleft归yfydz所有,使用GPL发布,可以自由拷贝,转载,转载时请保持文档的完整性,严禁用于任何商业用途。msn: yfydz_no1@hotmail.com来源:http://yfydz.cublog.cn/1. 应用程序接口1.1 SSL初始化SSL_CTX* InitSSL(int server, char *cert, char *key, ... 阅读全文

posted @ 2009-08-07 12:18 Ady Lee 阅读(1391) 评论(0) 推荐(0)

摘要:[OpenSC-devel] openssl PKCS11 engine + eTpkcs11.dll on windows ?opensc_alias at swing.be opensc_alias at swing.be Thu Oct 21 15:03:30 UTC 2004 Previous message: [OpenSC-devel] A trivial patch against ... 阅读全文

posted @ 2009-08-04 17:12 Ady Lee 阅读(2540) 评论(1) 推荐(0)

摘要:Location| Personnel| Teaching| Research| News| Intranet ITU X.509/RFC 3281 Attribute Certificate Toolkit for OpenSSLContact: Daniel Díaz-Sánchezddsit.uc3m.esAndrés Marín López... 阅读全文

posted @ 2009-08-04 11:18 Ady Lee 阅读(1045) 评论(0) 推荐(0)

摘要:作者:猩猩人类 时间:2008-11-13 因本人工作需要,需要在OpenSSL中访问USB-KEY中的证书和服务器建立连接。 在神童哥的帮助下,得出二种实现方式。 1、 如果USB-KEY的驱动程序支持PKCS#11接口,则OpenSSL通过engine可以比较方便地访问USB-KEY。 2、 听说最新版本的OpenSSL 0.9.8i版本已经增WINDOWS CAPI的支持。 因本人比较懒,就... 阅读全文

posted @ 2009-08-04 11:11 Ady Lee 阅读(1578) 评论(1) 推荐(0)

摘要:1.1 What to do通过Openssl和PKCS#11接口,使用USBKEY中的私钥和证书来签发一个下级证书。1.2 背景数字证书颁发过程一般为:用户首先产生自己的密钥对,并将公共密钥及部分个人身份信息传送给认证中心。认证中心在核实身份后,将执行一些必要的步骤,以确信请求确实由用户发送而来,然后,认证中心将发给用户一个数字证书,该证书内包含用户的个人信息和他的公钥信息,同时还附有认证中心的... 阅读全文

posted @ 2009-08-03 18:10 Ady Lee 阅读(7364) 评论(0) 推荐(2)

摘要:在计算机软件开发世界中,编程语言种类极多,数据在各种语言的表现形式可能有所差异,但数据本身的处理可能,或者说本质上是完全一样的;比如数据在某个算法中的运算过程是一样的。在这里,我以加密与解密来作为例子说明。 在C++下,我使用OPENSSL库生成了RSA的公私钥对与DES加密之用的会话密钥,并将这三者及加密结果写入文件以备在Java环境下使用。 在C++程序中,我使用使用公... 阅读全文

posted @ 2008-03-19 18:39 Ady Lee 阅读(956) 评论(0) 推荐(0)