链百科:一次性密码本是什么?

资讯
2019
03/16
17:23
巴比特
分享
评论

密码学中有一种加密方法叫做One Time Pad,翻译过来叫做“一次性密码本”。因为这种密码最早就是真的写在一个本子上传递的,所以有了这个名字。这是一种安全度最高的加密方法,需要通信双方事先去沟通一个一次性的和被加密信息长度相等或者更长的秘钥。

什么是One Time Pad

先来仔细看看什么是One Time Pad。

使用凯撒密文进行加密的时候,我们把信息的每一个字母都按照字母表移动相同的位数。移位数量可以取1到26的任意一个数。比如,我们想加密的信息是ALICE,这样其实总的密文的可能性也没有多少种,所以可以很容易用暴力搜索的形式找到信息。

但是使用One Time Pad的时候,每一个字母移动的位数是不同的,每一个字母的取值就有26种可能,这样可能生成的密文种类就是26的五次方,有一千多万种可能。这几个移动的位数组成的字符串,就是本次加密的秘钥,长度是跟密文一致的,或者说,它就是一个One Time Pad。

可以看到One Time Pad是非常安全的。

处理二进制信息

但是在互联网时代,人们看待信息不再是以字母为单位了,而是用0和1。下面看看如何用One Time Pad处理二进制形式的信息。

具体步骤是这样的。有一个若干二进制位的信息,我们需要一个跟它长度一样的秘钥。加密的时候,我们会认为信息就是一连串的二进制数,秘钥也是。加密的结果--密文,也是一样的,每一位都是对应的信息位和对应的秘钥位进行异或运算得到的结果。

异或是一种常见的逻辑运算。

局限性

One Time Pad虽然是最强的加密方法,但是也有自己的局限性。

使用One Time Pad有两个最佳实践。第一,一个One Time Pad只用一次。第二,每个One Time Pad中的数据要保证真正的随机。

这意味着真正使用的时候,每次加密都需要重新生成并且再次发布给通信双方。互联网是一个不安全的环境,安全的发布One Time Pad其实是非常困难的,这就使得在很多的应用情形下是不能使用One Time Pad的。

总结

最后总结一下,One Time Pad是一种最强的加密方式。通信双方需要事先共享一个一次性的,和信息长度相同或者更长的秘钥。

来源: 巴比特

THE END
广告、内容合作请点击这里 寻求合作
免责声明:本文系转载,版权归原作者所有;旨在传递信息,不代表环球360的观点和立场。

相关热点

近期,多地农产品滞销新闻见诸报端,引发社会关注。为促进农产品产销对接,由农业农村部主办的2018全国贫困地区农产品产销衔接活动日前在京举行,农产品采购量达到252.6万吨。...
洞见
相较于李嘉诚时代频繁的抛售地产,李泽钜主导长和系的这段时间里,却几乎每个月都在公布有关地产投资的消息。...
产经
在楼市调控政策坚持不放松的大背景下,房地产开发从“高利”转为“微利”,房企如何做好利润与质量的平衡关,不仅关乎品牌形象,更与企业发展息息相关。...
产经
2月26日,波司登在中国最高地标建筑——上海中心,举办“逆势突围 共创传奇”2018战略成果发布会,揭秘波司登在经济寒冬下如何取得逆势增长。...
洞见
分时租赁行业之所以运营了这么久还没有出现像网约车和共享单车行业一样的寡头,很重要的两个原因就是重资产和资源封闭。...
洞见

相关推荐

1
3