加密
密码学来自希腊文的单词; kryptos,“隐藏”,和graphein,“写”或“隐藏的写作”。密码学是使用数学来加密和解密数据的科学。加密技术可以让你存储敏感信息,或者通过不安全的网络传输(比如互联网,除了预期的收件人以外,任何人都无法读取它),密码学是保护数据的科学。密码分析是分析和打破安全通信的科学。经典的密码分析涉及分析推理,数学工具的应用,模式发现耐心,决心和运气等有趣的组合。密码分析者也被称为攻击者,密码学包括密码学和密码分析。
加密和解密
纯文本和密文
原始消息在被转换之前称为纯文本。消息转换后,它被称为密文。加密算法将纯文本转换为密文; 解密算法将密文转换为纯文本。发件人使用加密算法,接收方使用解密算法。
暗号
我们将加密和解密算法称为密码。术语密码也用于指密码学中不同类别的算法。这并不是说每个发送者 - 接收者对都需要他们自己独特的密码来进行安全通信。相反,一个密码可以服务数百万个通信对。
键
密钥是一个数字(或一组数字),密码作为一种算法运行。为了加密消息,我们需要加密算法,加密密钥和明文。这些创建密文。为了解密消息,我们需要解密算法,解密密钥和密文。这些揭示了原始的纯文本。
爱丽丝,鲍勃和夏娃
在密码学中,通常在信息交换场景中使用三个字符,我们使用Alice,Bob和Eve。Alice是需要发送安全数据的人。Bob是数据的接收者。夏娃通过拦截消息来发现数据或发送她自己的伪装消息,从而以某种方式干扰Alice和Bob之间的通信。这三个名称代表实际发送或接收数据,或拦截或更改数据的计算机或进程。
对称密钥加密
在传统密码学中,也称为秘密密钥或对称密钥加密,一个密钥既用于加密又用于解密。数据加密标准(DES)是联邦政府广泛采用的传统加密系统的一个例子。下图显示了传统加密过程的一个例子。
常规加密有好处。它非常快。这对加密不在任何地方的数据特别有用。然而,仅仅由于安全密钥分发的困难,传统加密本身作为传输安全数据的手段可能非常昂贵。
对于发件人和收件人使用传统加密方式进行安全通信,他们必须就密钥达成一致并在其间保密。如果他们处于不同的物理位置,他们必须信任快递员,Bat电话或其他安全通信媒体,以防止在传输过程中泄露密钥。任何偷听或拦截过境钥匙的人都可以稍后阅读,修改和伪造用该钥匙加密或认证的所有信息。
不对称密钥加密
公钥密码术是一种不对称的方案,它使用一对密钥进行加密:一个公钥,用于加密数据以及相应的私钥或用于解密的密钥。您可以在保留私钥密钥的同时将您的公钥发布到世界。任何拥有您的公钥副本的人都可以加密只有您可以阅读的信息。从公钥推断私钥在计算上是不可行的。任何拥有公钥的人都可以对信息进行加密,但无法对其进行解密。只有拥有相应私钥的人才能解密信息。
非对称密钥密码学的基本步骤如下:
每个用户生成一对密钥用于消息的加密和解密。
每个用户将其中一个密钥放入公共注册表或其他可访问的文件中。这是公钥。伴侣密钥保持私密。每个用户维护从其他人处获得的一组公钥。
如果Bob希望向Alice发送私人消息,则Bob使用Alice的公钥对消息进行加密。
当Alice收到该消息时,她使用她的私钥对其解密。没有其他收件人可以解密该消息,因为只有Alice知道Alice的私钥。
通过这种方法,所有参与者都可以访问公钥,每个参与者在本地生成私钥,因此不需要分发。只要用户保护他和她的私钥,传入的通信就是安全的。用户随时可以更改私钥并发布伴随公钥替换旧公钥。
对照
让我们比较对称密钥和非对称密钥加密。加密可以被认为是电子锁解密,就像电子解锁一样。发件人将邮件放在一个盒子中,并用钥匙锁定盒子,接收器用钥匙打开盒子并取出信息。区别在于锁定和解锁的机制以及使用的键的类型。在对称密钥加密中,相同的密钥锁定和解锁该盒子。在非对称密钥加密中,一个密钥锁定该盒子,但需要另一个密钥来解锁它。
传统密码用于对称密钥加密:
两种类型:
替代密码
转置密码
换人密码
替代密码将一个符号替换为另一个符号。如果明文中的符号是字母字符。我们用另一个替换一个字符。例如,我们可以用D替换字符A,用Z替换字符T.如果符号是数字(0到9),我们可以用7代替3,用6代替2.它也被称为Ceasar的密码,它发明了它。一个人与另一个人。
例如,如果我们使用Caesar的键值3对单词“SECRET”进行编码,我们会抵消字母表,使第三个字母向下(D)开始字母表。
所以从以下开始:
ABCDEFGHIJKLMNOPQRSTUVWXYZ并将所有参数滑动3,得到DEFGHIJKLMNOPQRSTUVWXYZABC,其中D = A,E = B,F = C等等。
使用这种方案,明文“SECRET”加密为“VHFUHW”。为了让其他人阅读密文,你告诉他们密钥是3。
转置密码
在转置密码中,没有替换字符,而是其位置改变。明文第一个位置的字符可能出现在密文的第十个位置。第八个位置的角色可能出现在第一个位置。换句话说,换位密码会重新排列符号块中的符号。
键
在转置密码中,密钥是明文中符号的位置与密文之间的映射。例如,以下显示使用四个字符块的密钥:
纯文本:2 4 1 3
密文:1 2 3 4
在加密中,我们将位置2上的字符移动到位置1,将位置4上的字符移动到位置2,依此类推。在解密中,我们做相反的事情。