数字证书

2 - 数字证书

≡放荡痞女 提交于 2019-12-19 04:11:27
  上文介绍了数字签名,它能够(1)确认发送方身份(2)保证发送数据完整性   但是存在一定漏洞,这个漏洞不在数字签名技术本身,而在于它所以来的密钥,只有密钥真是可靠,使用数字签名才是安全有效的。   考虑这种可能的情况:在上述发送方向接收方传送报文的例子中,如果发送方所持有的公钥来路有问题或是被替换了,那么,持有对应私钥的冒充接受方就有可能接收到发送方发送的报文。这里的问题就是:对于请求方来说,它怎么能确定它所得到的公钥一定是从目标主机那里发布的,而且没有被篡改过呢?亦或者请求的目标主机本本身就从事窃取用户信息的不正当行为呢?这时候,我们需要有一个权威的值得信赖的第三方机构(一般是由政府审核并授权的机构)来统一对外发放主机机构的公钥,只要请求方这种机构获取公钥,就避免了上述问题的发生。这种机构被称为证书权威机构(Certificate Authority, CA),它们所发放的包含主机机构名称、公钥在内的文件就是人们所说的“数字证书”。   数字证书的颁发过程一般为:用户首先产生自己的密钥对,并将公共密钥及部分个人身份信息传送给认证中心。认证中心在核实身份后,将执行一些必要的步骤,以确信请求确实由用户发送而来,然后,认证中心将发给用户一个数字证书,该证书内包含用户的个人信息和他的公钥信息,同时还附有认证中心的签名信息。用户就可以使用自己的数字证书进行相关的各种活动

数字签名和数字证书的原理解读(图文)

只谈情不闲聊 提交于 2019-12-14 21:36:56
每篇一句 平生能几到,好处欲穷寻 —— 宋 · 陈著《同袁通判游越中三首·禹庙》 正文 数字签名和数字证书的区别是什么?数字证书是由权威机构CA证书授权中心发行的,能提供在Internet上进行身份验证的一种权威性电子文档。而数字签名是一种类似写在纸上的普通的物理签名,但是使用了公钥加密领域的技术实现,用于鉴别数字信息的方法。对于数字签名和数字证书的运用原理,相信有不少朋友还不清楚,下文将为大家解疑答惑。 数字签名和数字证书原理 鲍勃有两把钥匙,一把是公钥,另一把是私钥。 鲍勃把公钥送给他的朋友们----帕蒂、道格、苏珊----每人一把。 苏珊要给鲍勃写一封保密的信。她写完后用鲍勃的公钥加密,就可以达到保密的效果。 鲍勃收信后,用私钥解密,就看到了信件内容。这里要强调的是,只要鲍勃的私钥不泄露,这封信就是安全的,即使落在别人手里,也无法解密。 鲍勃给苏珊回信,决定采用“数字签名”。他写完后先用Hash函数,生成信件的摘要(digest)。 然后,鲍勃使用私钥,对这个摘要加密,生成“数字签名”(signature)。 鲍勃将这个签名,附在信件下面,一起发给苏珊。 苏珊收信后,取下数字签名,用鲍勃的公钥解密,得到信件的摘要。由此证明,这封信确实是鲍勃发出的。 苏珊再对信件本身使用Hash函数,将得到的结果,与上一步得到的摘要进行对比。如果两者一致,就证明这封信未被修改过。

数字证书与实现双向SSL认证

♀尐吖头ヾ 提交于 2019-12-10 10:10:28
数字证书与实现双向SSL认证一:数字证书 什么是证书? 既然叫证书,肯定是用来证明什么东西的,比如身份,学历,能力等级。数字证书简单理解就是证明你在互联网中的身份。证书一般都需要有一个权威颁发机构,而数字证书的颁发机构就是CA(认证中心)。 数字证书的格式普遍采用的是X.509V3国际标准,一个标准的X.509数字证书包含以下一些内容: 1.证书的版本信息; 2.证书的序列号,每个证书都有一个唯一的证书序列号; 3.证书所使用的签名算法; 4.证书的发行机构名称,命名规则一般采用X.500格式; 5.证书的有效期,通用的证书一般采用UTC时间格式; 6.证书所有人的名称,命名规则一般采用X.500格式; 7.证书所有人的公开密钥; 8.证书发行者对证书的签名。 我们可以看一下自己电脑上已经信任的证书。 win+r打开命令行,输入:certmgr.msc 打开证书管理。 然后随便打开一个证书,这里就会显示一些证书的基本信息。 根证书 根证书是CA认证中心给自己颁发的证书,是信任链的起始点。安装根证书意味着对这个CA认证中心的信任。即可以信任该CA认证的所有证书。 这样的话,假设该CA认证了10万个网站。客户端只需要确认一下该CA身份,安装该CA根证书即可。这样就实现了对这10万个网站服务端的信任。而不用对10万个网站逐一确认,安装10万个证书。 常见数字证书文件格式及区别

SSL/TLS双向认证案例参考

北慕城南 提交于 2019-12-10 02:57:14
一.首先我们需要生成服务器端和客户端的数字证书 并添加信任 实际应用环境里,需要向CA机构申请服务器证书。这里我们为了测试方便通过Keytool工具生成自签名证书来模拟。 注:相关参数说明请使用 keytool -help 查阅 1. 生成服务器端证书 keytool -genkey -v -keyalg RSA -keysize 1024 -sigalg SHA1withRSA -validity 36000 -alias www.alan.org -keystore alan.keystore -keystore alan.keystore -dname “CN=www.alan.org,OU=alan,O=alan,L=HN,ST=HN,C=CN” 2. 生成客户端证书 keytool -genkey -v -keyalg RSA -keysize 1024 -sigalg SHA1withRSA -validity 36000 -alias alanClient -storetype PKCS12 -keystore alanClient.p12 -dname “CN=alan-client,OU=alan,O=alan,L=HN,ST=HN,C=CN” 3. 让服务器信任客户端证书 (1)从刚刚生成的客户端证书库中导出客户端证书 keytool -export

数字签名和数字证书

点点圈 提交于 2019-12-09 13:20:52
参考链接:    http://www.ruanyifeng.com/blog/2011/08/what_is_a_digital_signature.html    https://blog.csdn.net/weixin_37887248/article/details/82805508 这里涉及到了非对称加密的原理,一般加密和解密过程使用的是不同的密钥:公钥和私钥   对要传输的内容,使用公钥加密的话,只能用私钥解密   对要传输的内容,使用私钥加密的话,则只能用公钥解密。 而常说的数字签名,就与以上的第2个步骤有关,当然实际上还有其他步骤 比较典型的有RSA加密,算法安全性依赖于:大素数难以分解。因此其算法复杂度比较大,加解密效率相对来说不高。 通过下面的例子来说明数字签名和证书中心的作用 通信双方:A、B; A的公钥和私钥:PuA、PrA; B的公钥和私钥:PuB、PrB RSA通信过程,简单使用一次加密和解密,然后问题多多的方式如下   1. A准备发送内容,对内容使用公钥PuB进行加密,然后将密文传输给B   2. B收到A发送的数据,使用私钥PrB,解密并得到明文;读取之后,B现在要给A回复,因此使用公钥PuA对内容进行加密,将密文传输给A   3. A收到B的回复,使用公钥PuB对内容进行解密,得到明文。至此,一次完整的通信过程完成。  

Linux软件安装( rpm,yum )

瘦欲@ 提交于 2019-12-08 10:08:32
( 1 ) rpm -ivh ( 2 ) rpm 函数缺失查询 www.rpmfind.net 函数依赖通过函数查询必要的包 ( 3 ) rpm 命名规则 httpd-2.2.15-15.el6.centos.1.i686.rpm httpd: 软件包名 2.2.15: 软件版本 15 : 软件发布的次数 el6 :软件发行商。 el6 是 RedHat 公司发布,适合 RHEL6.x ( Red Hat Enterprise Linux )和 CentOS6.x 下使用 i686 适合的硬件平台。 rpm : rpm 包的扩展名。 包全名 : 如果操作的是未安装软件包,则使用包全名,而且需要注意绝对路径 包名 :如果操作的是已经安装的软件包,则使用包名即可,系统会生产 RPM 包的数据库 /var/lib/rpm/ (4) rpm 包 手工命令 3.1 默认安装位置(推荐使用默认安装) /etc 配置文件的安装位置 /user/bin 可执行文件的安装位置 /user/lib 程序使用函数库的保存位置 /user/share/doc 基本软件的使用手册 /user/share/man 软件的帮助文档 Apache 安装的位置: /var/www/html 默认网址 /etc/httpd/conf/httpd.conf 配置文件的安装位置 3.2 M RPM 包安装 ( 1

SSL 杂谈

蓝咒 提交于 2019-12-06 11:18:32
什么是 SSL SSL (Secure Sockets Layer) 是一种在应用层和传输层之间的协议,对传输层(TCP)到应用层(HTTP)的数据进行加密,主要是为了保证 Internet 上数据传输的安全性,确保数据在传输过程中不被截取或监听 SSL 在技术上位与应用层,但从开发者的角度来看,它是一个提供 TCP 服务的传输层协议 TLS(Transport Layer Security)是 SSL 的继任者,在很多场合还是用 SSL 来指代 SSL/TLS 基本大部分支持 SSL 加密数据的服务器,都是采用 OpenSSL 库来实现的 OpenSSL是一个强大的安全套接字层密码库,Apache使用它加密HTTPS,OpenSSH使用它加密SSH,它还是一个多用途的、跨平台的密码工具 SSL 协议的安全机制 SSL 通过以下三种机制,实现了网络通信的安全性 1. 数据传输的机密性 通过对称/非对称加密算法,在通信双方之间建立加密通道,保证数据传输的机密性 2. 身份验证机制 使用数字签名来验证通信对端的身份 3. 消息完整性验证 基于 md5/sha 等 hash 算法来保证消息的完整性,避免网络中传输的数据被非法篡改 SSL 的工作原理 简单了解下网络通信加密的发展过程,假设 A 和 B 之间需要网络通信 远古 远古时期民风淳朴,路不拾遗、夜不闭户,A 要发数据给 B

服务器操作手册

青春壹個敷衍的年華 提交于 2019-12-05 22:12:53
服务器操作手册 安装完服务器以后需要进行的操作:   1)配置ip   2)配置防火墙   3)安装:防误删除的软件,如:extundelete   4)挂载光盘后一定要记得导入数字证书     进入目录/mnt/cdrom/(即光盘的挂载点)     rpm --import RPM-GPG-KEY-CentOS-6 使用该命令导入数字证书     rpm -qa |grep gpg 验证证书是否已导入(出现 gpg-pubkey-c105b9de-4e0fd3a3 这个时,说明证书已导入)     /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 (系统中数字证书的位置)   5)安装gcc (C语言编辑器,为了安装 tar.gz 源码包时不报错)   6)修改服务器的密码过期后的宽限天数     修改的路径为:/etc/default/useradd     修改后的内容为:INACTIVE=0   7)创建一个文件特殊权限的检测脚本,定时进行检测 extundelete实现Linux下文件/文件夹数据恢复! 一、安装 1、如果是Centos系统,在安装extundelete之前需要安装e2fsprogs,e2fsprogs-libs,e2fsprogs-devel。   这里用:yum install e2fsprogs e2fsprogs

手机丢了,但是里面装了支付宝,后果会如何?

↘锁芯ラ 提交于 2019-12-05 10:31:56
一定要看完,也别忘了跟朋友分享! 支付宝关联银行卡,如果手机丢了会发生什么关于支付宝安全的帖子不少,那些帖子说的都是手机身份证银行卡一起丢,光凭身份证和卡就可以取钱了,何必通过支付宝。如果只丢失手机呢,是否危险?请看下面的测试,结果你会很惊恐。 测试场景: 捡到一个手机,没有银行卡身份证其他的任何东西 1、获得手机之后,怎么知道支付宝登陆名?手机号就是登陆名啊,只要你绑定了手机,而且还能贴心的告诉你这个手机是否注册了支付宝 2、不知道登陆密码?支付宝,知托付,贴心的告诉你忘记密码怎么办,点一下试试 看看,一个手机验证码搞定,也就是说你只要有了手机,账号和密码都有了 3、登陆之后看看,不是土豪嘛,只有余额宝有点钱 4、安全级别看起来挺高啊,有U盾的数字证书,看起来很放心的样子。把余额宝转出来试试,转不了 5、牢不可破的数字证书认证,是没法攻克的,这道门进不去怎么办,我们居然可以不开门,把门拆掉就行。 解除数字证书,一个手机短信就够了。 手机兄真是逆天了,神挡杀神,佛挡杀佛。 6、看看,数字证书已经被干掉了,再试试转出余额宝,哟,还有支付密码, 手机君再次出场,熟悉的找回密码,短信验证,OK 7、现在,登陆密码,数字证书,支付密码都被攻克了,已经把余额宝钱转出来了,再从支付宝转到任意卡上试试,一个支付密码就够了 8、你没有开通快捷支付,没关系 , 12580,一按我帮您

详解公钥、私钥、数字证书的概念

谁都会走 提交于 2019-12-05 04:51:11
加密和认证   首先我们需要区分加密和认证这两个基本概念。    加密是将数据资料加密,使得非法用户即使取得加密过的资料,也无法获取正确的资料内容,所以数据加密可以保护数据,防止监听攻击。其重点在于数据的安全性。身份认证是用来判断某个身份的真实性,确认身份后,系统才可以依不同的身份给予不同的权限。其重点在于用户的真实性。两者的侧重点是不同的。 公钥和私钥 公钥和私钥就是俗称的不对称加密方式,是从以前的对称加密(使用用户名与密码)方式的提高。 在现代密码体制中加密和解密是采用不同的密钥(公开密钥),也就是非对称密钥密码系统,每个通信方均需要两个密钥,即公钥和私钥,这两把密钥可以互为加解密。公钥是公开的,不需要保密,而私钥是由个人自己持有,并且必须妥善保管和注意保密。   公钥私钥的原则: 一个公钥对应一个私钥。 密钥对中,让大家都知道的是公钥,不告诉大家,只有自己知道的,是私钥。 如果用其中一个密钥加密数据,则只有对应的那个密钥才可以解密。 如果用其中一个密钥可以进行解密数据,则该数据必然是对应的那个密钥进行的加密。 用电子邮件的方式说明一下原理。 使用公钥与私钥的目的就是实现安全的电子邮件,必须实现如下目的: 1. 我发送给你的内容必须加密,在邮件的传输过程中不能被别人看到。 2. 必须保证是我发送的邮件,不是别人冒充我的。 要达到这样的目标必须发送邮件的两人都有公钥和私钥。 公钥