一次性密码包括哪些功能,基于Python如何实现

Admin 2022-08-19 群英技术资讯 282 次浏览

今天这篇我们来学习和了解“一次性密码包括哪些功能,基于Python如何实现”,下文的讲解详细,步骤过程清晰,对大家进一步学习和理解“一次性密码包括哪些功能,基于Python如何实现”有一定的帮助。有这方面学习需要的朋友就继续往下看吧!
一次性密码密码

一次性密码密码是一种Vignere密码,包括以下功能;

  • 这是一个牢不可破的密码.
  • 密钥与加密邮件的长度完全相同.
  • 密钥由随机符号组成.
  • 顾名思义,密钥仅使用一次,并且从不再用于任何其他消息加密.

由于这个原因,加密邮件很容易受到密码分析者的攻击.用于一次性密码密码的密钥称为 pad ,因为它打印在纸垫上.

为什么它是坚不可摧的?

由于以下功能,密钥是牢不可破的;

  • 密钥只要是给定的消息.
  • 密钥是真正随机的,特别是自动生成的.
  • 按模10/26/2计算的密钥和纯文本.
  • 每个密钥应使用一次,并由发送方和接收方销毁.
  • 应该有两个密钥副本:一个带发件人,另一个带接收者.

加密

要加密字母,用户需要在明文下面写一个密钥.明文字母位于顶部,密钥字母位于左侧.两个字母之间的横截面是纯文本.它在下面的示例中描述 :

解密

要解密一封信,用户会取左边的关键字母,并在该行中找到密文字母.纯文本字母位于列的顶部,用户可以在其中找到密文字母.

一次性密码密码的实现

Python包含一个用于 one-time-pad 密码实现的hacky实现模块.包名称称为One-Time-Pad,其中包括一个命令行加密工具,该工具使用类似于一次性密码密码算法的加密机制.

安装

您可以使用以下命令安装此模块 :

 pip install onetimepad

如果您希望从命令行使用它,请运行以下命令 :

 onetimepad

代码

以下代码有助于生成一次性密码密码;

import onetimepad
cipher = onetimepad.encrypt('One Time Cipher', 'random')
print("Cipher text is ")
print(cipher)
print("Plain text is ")
msg = onetimepad.decrypt(cipher, 'random')
print(msg)

输出

运行上面和下面给出的代码时,您可以观察到以下输出;

注意 : 如果密钥的长度小于消息的长度(纯文本),则加密的消息很容易破解.

在任何情况下,密钥不一定是随机的,这使得一次性密码密码作为一种有价值的工具.


到此这篇关于“一次性密码包括哪些功能,基于Python如何实现”的文章就介绍到这了,更多相关内容请搜索群英网络以前的文章或继续浏览下面的相关文章,希望大家以后多多支持群英网络!
群英智防CDN,智能加速解决方案

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

猜你喜欢

成为群英会员,开启智能安全云计算之旅

立即注册
专业资深工程师驻守
7X24小时快速响应
一站式无忧技术支持
免费备案服务
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
在线客服
微信公众号
返回顶部
返回顶部 返回顶部
在线客服
在线客服