有关加密的介绍

数据保密(data confidentiality)

对传输或存储在系统中的数据进行加密,保护数据的机密性意味着防止未经授权的数据读取


加密与解密(encryption and decryption)

使用保密的1对1映射(函数)f将明文m映射为密文c,即c = f(m)

为了从密文c中恢复明文m,将逆映射f-1应用于c,得到

f-1(c)= f-1(f(m))=(f-1f)(m)= m, 这被称为解密。

举例:

对按顺序排列的英文字母a,b,c,d,...,w,x,y,z定义1对1映射f

f(x)= “x之后的第三个字母” (其中x,y,z之后的第三个字母分别为。 a,b,c)

明文“kill”被加密得到:f(kill)= f(k)f(i)f(l)f(l)= nloo


数据验证(integrity)

数据认证(完整性):对于传输数据或存储在存储系统中,可能会发生以下情况:

•可以由未经授权的人员修改。

•未经授权的人员可以用其他数据替换。

问题:我们如何防止未经授权的修改我们的数据? 答:访问控制机制。

问题:我们如何检测数据的修改和更换? 答案:稍后将介绍的数据完整性机制。

发件人和接收方的验证

问题:如果您收到了一封带有发件人X的邮件,那么您如何确定发件人确实是X?

问题:如果您向接收者Y发送了一条消息,您怎么能确定接收者确实收到了该消息?

备注:稍后将介绍用于认证消息发送方和接收方的详细技术。

不可否认性

备注:如果我给你写了一封信,说如果你为我完成这份工作,我会付给你10万美元,我不能否认这个提议,因为我必须在这封信上签字。

问题:如果我给你发了一封电子邮件,命令你杀死一个人,但后来否认我向你发送了这个消息,你怎么能证明我确实向你发了这个消息?

解决方案:数字签名(稍后介绍)。

秘密分享

问题:父亲把很多宝藏放在一个带电子钥匙k的安全房间里。 他有三个儿子,让三个儿子以某种方式分享电子钥匙,以满足以下条件:

(1)他的每个儿子都有一个拆分的密钥(可以是一个数字),它不会给出任何关于k的信息。

(2)任意两个密钥的组合也无法得出关于k的任何信息。

(3)只有所有的三个儿子和他们的密钥结合在一起,才能够完整的恢复k。

父亲如何设计一个共享电子钥匙的系统?

加密协议

问题:银行的电子资金转帐系统,在发生交易时执行以下操作:

“数据完整性检查,消息认证,发送方和接收方认证,以及交易的不可否认验证”

假设你有一个算法来执行上面的每个作业。 你如何组合这些算法使它们整体工作?

解决方案:通过密码协议。

总结(密码学的主题):

•数据机密性(加密和解密算法的设计和分析)

•数据,数据发送器和数据接收器的认证(数据的完整性)

•不可否认性

•秘密分享

•密码协议

你可能感兴趣的:(有关加密的介绍)