zoukankan      html  css  js  c++  java
  • 安全之公开密钥基本知识

    文件加密的基本知识:
    1.公开密钥password:
    传统password的缺点:
    (1)收发两方持有同样密钥,密钥分配困难。

    KE=KD
    (2)不能方便的实现数字签名,应用不方便。

    (数字签名概念以下有)

    历史:
    公开密钥password又称为双钥password或非对称password。是1976年有Diffie和Hellman在“password学新方向”这篇超牛论文中提出的。
    RSA公钥算法是由Rivest、Shamir和Adleman在1978年在还有一篇论文中提出的。

    特点:
    (1)加密和解密由不同的密钥完毕
    加密 m>c:c=EK(m)
    解密 c>m:m=DB(c)=DB(EK(m))
    (2)知道加密算法。从加密密钥得到解密密钥在计算上是不可行的
    (3)两个密钥中不论什么一个都能够作为加密而还有一个作为解密 m=DB(EK(m))=EK(DB(m))

    传统密钥password和公开密钥password的对照图:
    password对照图

    基本思想:
    (1)讲密钥K一分为二。一个专门加密。一个专门解密:kekd
    (2)由Ke不能计算出Kd。于是能够讲Ke公开。使密钥分配简单
    (3)由于kekd且由Ke不能计算出Kd。所以Kd便成为用户的指纹,于是可方便的实现数字签名

    基本条件:
    (1)E和D互逆 保密条件 D(E(M))=M
    (2)kekd且由Ke不能计算出Kd 安全条件
    (3)E和D都高效 使用条件
    (4)E(D(M))=M

    工作方式:(分为两种工作方式,例如以下图示) 公开密钥用于加密 这里写图片描写叙述

    2.数字证书:
    数字证书是网络通讯中标识通讯各方身份信息,并由一个可信任的、公正的权威机构(CA)经审核颁发的电子文书。 所谓数字证书,是指利用电子信息技术手段,确认、鉴定、认证Internet上信息交流參与者的身份,是一个担保个人、计算机系统或者组织的身份。而且发布加密算法类别、公开密钥及其全部权的电子文档。 数字证书採用公钥机制,证书颁发机构提供的程序为用户产生一对密钥。一把是公开的公钥。它将在用户的数字证书中发布并寄存于数字证书认证中心,还有一把是私人的私钥,它将存放在用户的计算机上。
    数字证书申请与颁发

    数字证书的作用:
    信息传输的保密性
    数据交换的完整性
    信息的不可否认性
    交易者身份的确定性

    数字证书的内容:
    最简单的证书包括一个公开密钥、名称以及证书授权中心的数字签名。


    普通情况下证书还包括密钥的有效时间。发证机关的名称,该证书的序列号等信息,证书遵循x.509国际标准,证书所包括的内容例如以下:
    版本
    序列号
    签名算法标识符
    认证机构 有效期限
    主题信息
    认证机构的数字签名
    公钥信息

    CA (Certification Authority 认证机构) 是採用公开密钥基础技术,专门提供网络身份认证服务。负责签发和管理数字证书,且具有权威性和公正性的第三方信任机构,通常又叫做数字证书认证中心。

    数字签名:
    用私钥加密而用公钥解密。这就成为数字签名的基础。并据此进行身份认证。保证数据的完整性和不可否认性。 比如。假设用户B想对一份电子文件进行数字签名,他能够使用他的私钥对其加密,他的公钥是公开的,因此不论什么知道他的公钥的人都能够解密文件。但其实由于用户B的私钥仅仅有他自己有。这就成为他数字签名的基础。

    基于SSL的一个完整的Web訪问过程: SSL訪问过程

  • 相关阅读:
    JSP中的一个树型结构
    访问SAP的RFC
    MySQL InnoDB的一些参数说明
    Python: 去掉字符串中的非数字(或非字母)字符
    获取百度地图代码方法
    ps修图之——四步去修图后的毛边
    Python中给文件加锁
    问答项目---金币经验奖励规则及网站配置写入config文件
    问答项目---封装打印数组的方法
    问答项目---栏目增删改方法示例
  • 原文地址:https://www.cnblogs.com/mengfanrong/p/5355339.html
Copyright © 2011-2022 走看看