加密认证知识总结

原创 2016年06月02日 11:50:08
1.  什么是加密
  加密是将数据资料加密,使得非法用户即使取得加密过的资料,也无法获取正确的资料内容,所以数据加密可以保护数据,防止监听攻击。其重点在于数据的安全性。
  
2.  什么是认证
   认证是用来判断某个身份的真实性,确认身份后,系统才可以依不同的身份给予不同的权限。其重点在于用户的真实性。

3.  什么是密钥
密钥分为对称密钥和非对称密钥
对称密钥加密:又称私钥加密或会话密钥加密算法,即信息的发送方和接收方使用同一个密钥去加密和解密数据。因此对称加密算法要保证安全性的话,密钥要做好保密,只能让使用的人知道,不能对外公开。
它的最大优势是加/解密速度快,适合于对大数据量进行加密,但密钥管理困难。
非对称密钥加密:又称公钥密钥加密。它需要使用不同的密钥来分别完成加密和解密操作,一个公开发布,即公开密钥,另一个由用户自己秘密保存,即私用密钥。
信息发送者用公开密钥去加密,而信息接收者则用私用密钥去解密。公钥机制灵活,但加密和解密速度却比对称密钥加密慢得多。非对称密钥密码的主要应用就是公钥加密和公钥认证


4.  什么是公钥和私钥
公钥与私钥是通过一种算法得到的一个密钥对(即一个公钥和一个私钥),公钥是密钥对中公开的部分,私钥则是非公开的部分。
使用这个密钥对的时候,如果用其中一个密钥加密一段数据,必须用另一个密钥解密。比如用公钥加密数据就必须用私钥解密,如果用私钥加密也必须用公钥解密,否则解密将不会成功。

5.  基于公开密钥的加密过程(结合1、3、4)
比如有两个用户Alice和Bob,Alice想把一段明文通过双钥加密的技术发送给Bob,Bob有一对公钥和私钥,那么加密解密的过程如下:
Bob将他的公开密钥传送给Alice。
Alice用Bob的公开密钥加密她的消息,然后传送给Bob。
Bob用他的私人密钥解密Alice的消息。
Alice使用Bob的公钥进行加密,Bob用自己的私钥进行解密。

6.  基于公开密钥的认证过程(结合1、2、4)
身份认证和加密就不同了,主要用户鉴别用户的真伪。这里我们只要能够鉴别一个用户的私钥是正确的,就可以鉴别这个用户的真伪。
还是Alice和Bob这两个用户,Alice想让Bob知道自己是真实的Alice,而不是假冒的,因此Alice只要使用私钥密码,对文件签名,发送给Bob,Bob使用Alice的公钥对文件进行解密,如果可以解密成功,则证明Alice的私钥是正确的,因而就完成了对Alice的身份鉴别。整个身份认证的过程如下:
Alice用她的私人密钥对文件加密,从而对文件签名。
Alice将签名的文件传送给Bob。
Bob用Alice的公钥解密文件,从而验证签名。
上面的过程可以用下图表示,Alice使用自己的私钥加密,Bob用Alice的公钥进行解密。

7.  什么是数字签名
数字签名是非对称密钥加密技术与数字摘要技术的应用。使用它可以验证文件的发送者以及帮助验证文件自被数字签名后是否发生更改。
具体使用:
(1).对要发送的内容(AAA)使用hash函数生内容的摘要(digest)
(2).使用自己的私钥对摘要加密,就获得了自己的数字签名.
(3).将数字签名放到要发送的内容(AAA)里面,一同发送.
(4).对方收到内容后,先用发送者的公钥对内容里的数字签名解密,得到内容的摘要,是否解密成功就能证明发送人的身份.
(5).然后对内容使用hash函数生成内容的摘要.
(6).如果两个摘要一致,就证明内容没被修改过.


#### 如何确定客户端收到的公钥是真正服务器的?
8.  什么是数字证书
数字证书以密码学为基础,采用数字签名、数字信封、时间戳服务等技术,在Internet上建立起有效的信任机制。它主要包含证书所有者的信息、证书所有者的公开密钥和证书颁发机构的签名等内容。
    具体使用:
(1)把发送者的个人信息,发送者的公钥,数字证书的相关信息(比如:有效日期)使用CA(证书
  中心)的私钥加密,再加上CA中心对该数字证书里面的信息的数字签名,得到的就是发送者的数字证书.
(2)将数字签名和数字证书都放到要发送的内容里面,一同发送.
(3)对方接收到内容后,先用CA的公钥解开数字证书,就可以拿到发送者真实的公钥了,然后就能证明发送者的身份和接收内容是否被修改过了。

9.  什么是CA(certificate authority)
认证中心,它是专门提供网络身份认证服务,负责签发和管理数字证书,具有权威性和公正性的第三方信任机构,它的作用就像我们现实生活中颁发证件的公司,如护照办理机构。
目前国内的CA认证中心主要分为区域性CA认证中心和行业性CA认证中心。

10. 什么是根证书
是CA认证中心给自己颁发的证书,是信任链的起始点。安装根证书意味着对这个CA认证中心的信任。从技术上讲,数字证书包含四部分,用户的信息,用户的公钥,数字证书的信息,还有CA中心对该数字证书里面的信息的数字签名,
要验证一份数字证书的真伪(即验证CA中心对该数字证书信息的数字签名是否有效),需要用CA中心的公钥验证,而CA中心的公钥存在于对这份数字证书进行签名的数字证书1内,故需要下载数字证书1,使用数字证书1对数字证书
验证又需先验证数字证书1本身的真伪,故又要用签发数字证书1的数字证书2来验证,这样一来就构成一条数字证书验证链,这条数字证书验证链在哪里终结呢?答案就是根证书,根证书是一份特殊的数字证书,它的签发者是它本身,
下载根证书就表明您对该根证书以下所签发的数字证书都表示信任,数字证书的验证追溯至根证书即为结束。所以说用户在使用数字证书之前必须先下载根证书。

11. 什么是SSL
    SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS与SSL在传输层对网络连接进行加密。
通常HTTP(应用层)直接和TCP(传输层)通信。当使用SSL时,则演变成和SSL通信,再由SSL和TCP通信了。

---- 详情可以参考:http://www.cnblogs.com/JeffreySun/archive/2010/06/24/1627247.html

12. 什么是JKS(Java KeyStore)
jks是数字证书库,可以在配置ssl的时候使用,里面存有私钥。


版权声明:记录自己的学习过程,一份积累,一份收获,同时或许还能够帮助别人,何乐而不为。

网络加密与认证技术

信息加密技术        数据加密过程就是通过加密系统把原始的数字数据(明文),按照加密算法变换成与明文完全不同的数字数据(密文)的过程。        数据加密算法有很多种,密码算法标准化是信息化...
  • u012323351
  • u012323351
  • 2015年11月02日 16:27
  • 951

软考——加密与认证技术

一、加密技术1、对称加密:文件加密和解密使用相同的密钥2、非对称加密:有两个密钥,公开密钥和私有密钥。如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有...
  • u013036404
  • u013036404
  • 2015年10月20日 20:12
  • 1469

软考总结--数据加密与认证技术

现如今信息技术发展如此之快,信息安全就显得尤为重要。本次主要研究一下数据安全。   影响数据安全的因素:   (1)内部因素。可采用多种技术对数据加密,并制定相应的数据安全机制,建立安全存储体系,...
  • qqxyy99
  • qqxyy99
  • 2016年11月03日 12:44
  • 581

【JQuery】知识点总结(下)

背景:
  • u013043341
  • u013043341
  • 2016年01月15日 17:18
  • 1003

wifi 知识小全-- 加密认证

从哪说起呢? 在很久很久以前,互联网诞生了……囧  好了,我打住!其实我们并不需要知道的太过于详细,这篇文章只是想讨论几个问题,当然我的想法并不一定是正确的。   wifi在IEEE中的定义是 80...
  • zhengsheng23
  • zhengsheng23
  • 2013年01月22日 10:14
  • 1514

大数据知识总结

1、YARN:只负责程序运行所需资源的分配回收等调度任务,与应用程序的内部运行机制无关,所以 YARN已经成为一个通用的资源调度平台,许许多多的运算框架都可以借助它来实现资源管理,比如: MR/SPA...
  • qq_27657429
  • qq_27657429
  • 2017年02月02日 10:39
  • 415

SNMPv3的加密和认证过程

前面的一些文章详细讲解了SNMPv3的报文内容,下面主要的内容就是SNMPv3的加密和认证过程! USM的定义为实现以下功能: 鉴别 数据加密 密钥管理 时钟同步化 避免延时和重播攻击 ...
  • wzsy
  • wzsy
  • 2017年05月04日 14:36
  • 488

Javaweb重点知识整理

一、web基础HTTP协议原理 (掌握HTTP遵循请求/响应模型,HTTP是无状态的协议,端口号为80) HTTP协议处理流程 1、客户端和Web服务器建立连接 2、客户端发送HTTP请求...
  • zjx2016
  • zjx2016
  • 2016年07月22日 13:02
  • 4233

Spring框架知识要点总结(第一天)

1.IOC容器创建的2种方式 //首先在applicationContext.xml配置文件中写 //创建方式一: //Spring把所有的配置文件都当做资源 ClassPathResourc...
  • qq_1017097573
  • qq_1017097573
  • 2016年11月22日 11:57
  • 620

前端知识点大全

前端开发面试知识点大纲: HTML&CSS: 对Web标准的理解、浏览器内核差异、兼容性、hack、CSS基本功:布局、盒子模型、选择器优先级及使用、HTML5、CSS3、移动端适应。 Java...
  • sjpz0124
  • sjpz0124
  • 2015年07月23日 16:01
  • 4580
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:加密认证知识总结
举报原因:
原因补充:

(最多只允许输入30个字)