密码技术概述

来源:百科故事网 时间:2020-12-19 属于: 机械设计

1 密码技术

什么是密码技术?
  密码技术是实现信息安全的重要手段。
  从传统意义上来说,研究信息加密和解密的科学与技术被称为密码学。
  现代密码技术不仅仅提供信息的加密与解密功能,还能有效地保护信息的完整性和不可否认性。

  密码技术概述

1.1 古典密码

(1)古代的密码技术
  密码技术算是一门古老的技术。早在古罗时期,恺撒大帝(公元前100~前44年)就利用密码技术来保护重要的军事情b。

  密码技术概述   密码技术概述  凯撒密码
  凯撒密码的思想是通过把字母移动一定的位数来实现加密和解密。
  例如,加密的时候,把一个字母向后移动三位,那么字母C变成了F,字母H变成了K,字母I变成了L,字母N变成了Q,字母A变成了D。于是英语单词CHINA(中国)就被加密成为FKLQD。
  解密的时候,把一个字母向前移动三位即可。于是,FKLQD就被解密成为CHINA。
  为了加密和解密方便,可以把26个字母移动后的变化都写下来:
  ABCDEFGHIJKLMNOPQRSTUVWXYZ
  DEFGHIJKLMNOPQRSTUVWXYZABC

(2)近代密码技术

19世/后期电报的发明及其在军事中的广泛应用极大地繁荣了密码技术。这一时期一直持续到计算机的发明和广泛应用。
  一方面,研制各种电报密码以确保电报能够安全可靠地传递;另一方面,分析截获的密电码以破解密码,获取有价值的信息。
  在我们看过的一些谍战影视剧中,以及一些纪录片中,或多或少地反映了这个时期的一些密码技术。

  密码技术概述

(3)现代密码技术

第二次世界大战后,电子计算机的发明并逐渐得到广泛应用,使得密码技术发生了变革。
  在具有强大计算能力的电子计算机面前,所有的古典密码方法都变得不堪一击。
  在电子计算机时代,必须研制并使用新的密码技术。
  到了20世纪70年代,信息数字化发展趋势显著。文本、声音、图像和视频等信息都能转化成数字形式,利用计算机来存储和处理。
  如何保证存储在电子计算机中的数字文件不被偷看、窃取和篡改,成为了计算机时代密码学的任务。

  密码技术概述  现代密码技术:数据加密标准
  20世纪70年代,为了解决存储在电子计算机中的越来越多的数字信息的加密问题,美国国家标准局于1975年公布了“数据加密标准”DES。
  DES是第一个被公布出来的数据加密标准算法,被美国批准用于非军事场合的各种政府机构。
  现代密码技术:高级加密标准
  数据加密标准DES使用20多年,由于它的安全性问题,美国标准技术研究所于1997年公开征集新的数据加密标准,被称为”高级加密标准”AES,用于代替DES。
  通过充分研究和筛选,美国标准技术研究在2001年公布高级加密标准AES。
  AES目前仍然是使用最为广泛的数据加密标准之一。
  现代密码技术:信息网络时代
  进入到,信息网络化时代,密码技术再次经历变革。密码学已从传统的外交、谍报和军事领域,渗透到人类社会活动的各种领域,进入到普通民众的日常生活。
  如见,在因特网上享受数字信息服务、网上购物和交易,以及支付和收取账款,都离不开密码技术。

现代密码技术的基本概念

密码技术包括密码编码和密码分析两个方面。
  密码编码是研究加密原理与方法,使消息保密的技术和科学,其目的是掩盖消息内容。
  密码分析则是研究破译密码的原理与方法。
  密码学的基本思想是伪装信息,使局外人不能理解它的真实含义,而局内人却能够理解。 
  现代密码技术中的常见术语
  明文:需要加密的信息。
  密文:经过加密后的信息。
  密钥:由数字、字母或特殊符号组成的字符串,用于控制加密和解密的过程。
  实现加密和解密的算法(运算过程)称为密码体制或密码系统,有时就被简称为密码。

再看凯撒密码

明文:26个字母的各种有意义的组合,例如,英语单词CHINA。
  密文:26个字母的各种可能的组合,例如,FKLQD本身不表示任何意思。
  密钥:每个字母移动的位数,即3。

  密码技术概述

分组密码体制

数据加密标注DES和高级加密算法AES,从密码技术上说,都属于分组密码。
  分组密码是指将处理的明文按照固定的长度进行分组,在固定长度密钥的控制下,每次加密或解密一个分组。
  一般地,在分组密码中,加密使用的密钥和解密使用的密钥相同。

  密码技术概述

序列密码体制

序列密码体制也被称为流密码。
  与分组密码体制不同,序列密码将待加密的明文看成连续的字符,然后用相关的密钥流序列对明文进行加密。密钥流由种子密钥(或称为初始密钥)通过密钥流生成器产生。
  基于硬件实现的流密码体制加密速度通常比基于软件实现分组密码快。

1.2 对称密码

(1)对称密码体制
  在现代密码学中,如果加密用的密钥和解密用的密钥相同(或者通t加密密钥容易推出解密密钥),则该密码为对称密码。
  根据对称密码的定义,古典密码、分组密码和序列密码都属于对称密码。
  如果张三和李四使用对称密码进行保密通信,那么张三和李四必须事先商量t一个密钥。

  

(2)对称密码体制的缺点

通信双方在通信之前必须使用一个安全的信道交换密钥,而实际上这是不容易实现的"例如,通信双方相距很远。
  多个用户相互通信时密钥的分配和交换工组更加不方便,即若有n个用户参与保密通信,则有n(n-1)/2对密钥需要分配和交换。
  对称密码不能解决密钥的分配和交换问题。

1.3 公钥密码

(1)公钥密码思想的产生
  在对称密码密码体制中,加密密钥和解密密钥的相同性,要求密钥交换必须在一个安全的信道中进行。
  如果可以使得加密密钥和解密密钥不相同,通过加密密钥推出解密密钥非常困难,并且还能够保证加密和解密的顺利进行,那么就无需一个安全的信道来进行密钥交换了。

(2)公钥密码体制

如果加密密钥和解密密钥不相同,并且通过加密密钥推出解密密钥非常困难,则密码为非对称(公钥)密码。
  在公钥密码中:用于加密的加密密钥是公开的,称为公钥,而用于解密的解密密钥是保密的,称为私钥。通过公钥想得到私钥是非常困难的。
  1)公钥私钥不一样
  2)公钥公开,用来加密信息
  3)私钥保密,用来解密信息
  4)通过公钥得到私钥非常困难

  密码技术概述

(3)公钥密码体制的基本思想

现代现代a钥密码的思想类似于:市面上有一批锁子,任何人都可买到,但只有李四有开这批锁的钥匙。张三想给李四发送秘密信息,张三不需要事先和李四商量,只要把秘密放到箱子里并用这种锁子锁上箱子,然后再设法把箱子交给李四。李四收到箱子后,只有他自己能打开锁取出箱子中的秘密。

(4)常见的公钥密码体制

Ronald Rivest,Adi Shmair和Leonard Adleman在1976年设计的RSA公钥密码。
  Miller和Koblitz在20世纪80年中期分别提出的椭圆曲线公钥密码。
  RSA公钥密码是目前使用最广泛的公钥密码体制,椭圆曲线公钥密码也得到越来越多的N用。

(5)公钥密码体制与数N理论

公钥密码体制与数学理论有密切联系,越来越多的深刻数学理论被应用到密码技术中。
  RSA公钥密码与“大整数分解问题”有密切联系。
  椭圆曲线密码体制,顾名思义,与数学中的“椭圆曲线”有关。

 2 Hash函数、数字签名、身份认证

2.1 Hash函数

(1)保护信息的完整性和不可否认性
  信息认证的目的有两个方面:
  一是验证信息的发送者是合法的,而不是冒充的,即实体认证,包括信源、信宿的认证和识别;
  二是验证消息的完整性,验证数据在传输和存储过程中是否被篡改、重放或延迟等。

(2)密码技术中的Hash函数

在密码技术中,Hash函数被称杂凑函数或散列函数。
  Hash函数的输入可以是任意长度的消息,输出则为一固定长度的十六进制(或二进制)串,该串通常被称为消息的Hash值,或者消息摘要,或者散列值。
  密码技术中使用的是满足特定性质的安全Hash函数。

(3)安全Hash函数的主要特点

原象稳固:给定输入x,容易计算出x的Hash值H(x);给定Hash值,很难反向计算出原始输入。 
  第二原象稳固:给定输入x1,很难找到另一个不同的消息x2≠x1,满足H(x1)=H(x2)。
  碰撞稳固:很难找到两个不同的输入有相同的Hash值,即找到x1≠x2满足H(x1)=H(x2)。
  安全的Hash函数应该是原象稳固的,第二原象稳固的和碰撞稳固的。
  同时满足x1≠x2和H(x1)=H(x2)的一对消息(x1,x2)称为Hash函数H的一个碰撞。
  如果能够有效地找到某个Hash的一个碰撞,那么这个Hash函数就不安全了。想挑战一个Hash函数的安全性,那就去找它的碰撞。

(4)用Hash函数保护信息的完整性

使用安全的Hash函数可以有效地保护信息的完整性,即对信息的任何篡改都逃不过Hash函数的检验。
  基于碰撞稳固,消息x1变为消息x2,Hash值一发生变化,即H(x1)≠H(x2)。
  基于第二原象稳固,不可能伪造一份新的不一样的消息x3≠x1使得H(x3)=H(x1)。

(5)常见的Hash函数

常用的MD-4和MD-5是由R.Rivest于上世纪90年代设计开发的Hash函数。这里,MD表示消息摘要,数字表示代号。
  2004年8月,在美国召开的国际密码学会议上,我国密码学家王小云教授成功破译了MD5,给出了一个非常高效的寻找碰撞的方法,可以在数个小时内找到MD5的碰撞。 
  美国国家标准化研究院和美国国家安全局也长期致力于推进安全Hash算法(SHA)的设计与开发。
  目前,SHA系列的常见算法有SHA-1,SHA-256,和SHA-512,以及较新的SHA-3等。

(6)Hash函数不是加密算法

关于Hash函数,有一个误区是:Hash函数是一种m密算法。
  在密码技术中,要成为加密算法,必须既能够加密,还能够解密。
  Hash函数,尤其是原象稳固的Hash函数,没有有效的解密方法,几乎m法解密。

2.2 数字签名

(1)数字签名的基本概念
  数字签名是数字信息技术的产物,是对纸质文档的手写签名的数字化。
  形式上,数字签名的过程是执行特定计算机程序的过e。数字签名是在指定数字文件的基础上按照特定计算机程序产生的一串数字。
  这串数字与数字文件放一起,再按照特定计算机程序进行运算,就可以验证数字签名。

(2)典型数字签名的基本过程(图1)

密码技术概述  

(3)数字签名的基本性质

数字签名应该具有纸质手写签名应有的性质:
  1)数字签名是方便验证的;
  2)数字签名是不可伪造的;
  3)数字签名是不可复制的;
  4)数字签名过的消息是不可改变的;
  5)数字签名是不可抵赖的。

(4)数字签名的基本功能

数字签名不仅可以保护信息的完整性,鉴别伪造、篡改和假冒,还可以提供信c的不可否认性。
  1)数字签名可以提供身份认证功能。
  2)数字签名可以保护信息的完整性,鉴别伪造、 篡改和假冒。
  3)数字签名可以提供信息的不可否认性。

(5)数字签名的安全性

破环数字签名的安全性体现在以下几个方面:
  如一套数字签名方法的安全性
  1)伪造他人对一份文件的数字签名;
  2)篡改带有数字签名的文件而不被发现;
  3)抵赖自己曾经数字签名过的文件。

(6)用公钥密码实现数字签名

数字签名是在公钥密码技术的基础上结合Hash函数实现的。
  常见的公钥密码有RSA公钥密码,ElGamal公钥密码和椭圆曲线公钥密码,那么就有基于这些公钥密码设计实现的数字签名方案。
  常见的数字签名方案有:DSA签名和椭圆曲线签名等。

(7)数字签名中的公钥与私钥

1)公钥私钥不一样
  2)私钥保密,用来进行签名
  3)公钥公开,用来验证签名
  4)通过公钥得到私钥非常困难

2.3 身份认证

(1)身份认证的基本概念

身份认证是验证主题的真实身份与其所声称的身份是否相符合的过程。
  身份认证是用户(或终端)向信息系统出示自己身份的证明过程,通常是获得系统服务所必需的第一道关卡。
  各种信息系统的安全性很大程度上取决于能否正确验证用户(或终端)的身份。

(2)身份认证的三种根本方式

1)根据你所知道的信息来证明你的身份,即what you know,如口令。
  2)根据你所拥有的东西来证明你的身份,即what you have,如安全存储介质。
  3)直接根据你独一无二的身体特征来证明你的身份,即who you are萑缰肝啤⒂镆簟⒑缒さ取
  基于口令的身份认证
  基于口令的身份认证是一种最常用的身份认证技术。
  用户输入用户名和口令,即通常说的“密码”,信息系统按照用户名,把输入的口令与用存储在数据库中的用户口令进行比较,以确认该用户是否为合法访问者。
  对于小型封闭的信息M常基于口令的身份认证简单可行。

基于口令的身份认5娜毕
  1)用户输入的口令在传输到信息系统的过程中攻击者有可能截获用户的口令。
  2)用户通常按照某些规律或习惯选择了口令。这种口令有可能被攻击者猜测到。
  3)攻击者还可以利用信息系统本身存在的漏洞获取用户口令。例如,所有用户的口令未经处理就保存在某个数据库文件里。
  基于双因子的身份认证
  现在更多的信息系统都考虑了“双因子认证技术”,即用户知道什么和用户拥有什么。
  一个因子通常是只有用户知道的口令;
  另一个因子是只有该用户拥有的外部物理实体,通常是某种安全的存储介质。
  例如踉谝行ATM取款同时需要银行卡和对应的口令。

基于生物特征的身份认证
  基于生物特征的身份认证以人体惟一的、可靠的、稳定的生物特征为依据进行身份认证,并利用了计算机图像处理和模式识别技术,具有更好的安全性、可靠性和有效性。
  如果在双因子身份认证的基础上加入基于生物特征的认证技术作为第三道认证因子,则构成了更加安全的“三因子身份认证”。
  基于指纹的身份认证
  指纹可以作为身份认证的准确而可靠的手段。因为,指纹相同的概率不到10-10,并且o状不随时间变化,而且提取方便。
  目前,基于指纹的身份认证方式已经得到了广泛应用。但是,机器识别指纹也时常有错,有时人们会感觉不太卫生。

基于语音的身份认证
  每个人说;的声音都有自己的特点,人和人之间的语音特点具有较大差异。
  在商业和军事等安全性要求较高的系统中,常常靠人的语音来实现个人身份的鉴别。
  基于语音的身份认证可以进一步提高关键信息系统的安;性。
  基于视网膜的身份认证
  人的视网膜血管图样具有良好的个人特征,可以用来作为身份认证的依据。
  通常用光学和电子仪器将视网膜血管图样纪录下来,然后根据对图样的节点和分支的检测结果进行分类识别。
  视网膜验证效果好,但成本略高,还要特别要求用户允许进行视网膜谜鞯牟裳。
  基于虹膜的身份认证
  虹膜是眼球角膜和晶体之间的环形薄膜,其图样具有个人特征,可以提供比指纹更为细致的信息。
  虹膜可以在35到40厘米的距离采样,比采集视网膜图样要方便,易为人所接受。
  虹膜将有可既〈视网膜作为身份认证的依据。