openssl
xingyeping
这个作者很懒,什么都没留下…
展开
-
X509证书验证研究(1)——环境搭建
通过建立一个SSL server和一个SSL client来GDB跟踪代码分析流程。环境搭建:建立一个root-ca和一个sub-ca,sub-ca签发server证书和client证书。环境目录与文件如下,仅列出涉及的文件,有些自动生成的未列出:demoCA cacerts //存放生成的CA文件,生成CA证书后统一放在此目录 root原创 2016-03-03 10:29:59 · 1179 阅读 · 0 评论 -
x509与x509v3文件夹下的文件功用分析
OpenSSL的文件名和结构体名使用的缩略语实在是不敢恭维,在这里标注一下是干什么的。文件名和功能很多都是不对应的。 x509/ by_dir.c :提供 证书查找时使用目录查找的一些功能函数,这里对证书的查找使用Hash文件名 by_file.c :提供 证书文件查找、加载使用的一些功能函数 verify_extra_test.c :提原创 2016-03-04 15:00:36 · 1759 阅读 · 0 评论 -
X509证书验证研究(2)——GDB跟踪
根据SSL流程,断点可以打在ssl3_get_server_certificate函数上。 本函数中,通过一个for循环把获取到的证书存放到一个证书栈sk上,本次跟踪,只有一个server证书。此后进入 ssl_verify_cert_chain 去验证证书链。 ssl_verify_cert_chain 先获取一个 verify_store ,此时 verif原创 2016-03-03 19:33:46 · 2545 阅读 · 0 评论 -
自带OpenSSL库的Linux系统,源代码安装OpenSSL,调试OpenSSL
通常Linux系统自带OpenSSL,但是其so文件由于没有debug信息,因此无法跟踪内部函数,对于学习不太方便,需要通过源码重新安装。 我的Linux系统是CentOS7,自带的OpenSSL的版本是1.0.1e。在网上下载了OpenSSL1.0.1f后,通过如下方法安装 ./config --prefix=/usr/local --open原创 2016-02-25 13:34:27 · 2893 阅读 · 0 评论 -
x_algor.c 分析
相关的变量定义typedef struct X509_algor_st X509_ALGOR; struct X509_algor_st { ASN1_OBJECT *algorithm; ASN1_TYPE *parameter;} /* X509_ALGOR */ ;x_algor.c 中的宏展开ASN1_SEQUENCE(X509_原创 2016-02-29 13:53:24 · 1592 阅读 · 0 评论 -
tasn_xxx.c系列文件功用
以x_algor.c/x_val.c等为代表的一系列x509处理的通用结构的文件,最终定义的new/free/i2d/d2i/dup等函数的实现,实际是依赖于tasn_xxx.c文件 tasn_new.c:定义了new函数 tasn_fre.c:定义了free函数 tasn_enc.c:定义了i2d函数 tasn_dec.原创 2016-02-29 14:41:00 · 1282 阅读 · 0 评论