python-3.x - Diffie-Hellman 实现
问题描述
制作我自己的 Diffie-Hellman “实施”,以便我更好地理解它。我的实现是否正确?每当我运行它时,它都需要永远。对我的 Prime 和生成器使用 RFC 3526 2048 位。
from os import path, getcwd
from secrets import randbelow
__location__ = path.realpath(
path.join(getcwd(), path.dirname(__file__)))
# RFC 3526 2048-bit
f = open(__location__ + "\\prime.txt", "r")
p = int(f.read(),16)
g = 2
print(p)
a = randbelow(p-1)+1
b = randbelow(p-1)+1
ga = (g**a)%p
gb = (g**b)%p
gab1 = (ga**b)%p
gab2 = (gb**a)
解决方案
推荐阅读
- java - 使用 maven 检测漏洞 OWASP
- java - 如何将图像加载到不在活动布局中的 imageView 中?
- javascript - Sentry javascript 与 Raven.JS 的集成
- mysql - 将表与以逗号分隔的流派/类别表与链接表合并
- node.js - 服务中的模拟存储库,节点 TypeScript
- python - 如何基于一列计算和应用 z 分数,并将其应用于 Pyhton 中的同一列?
- python - 从基类中查找实例类型的 Pythonic 方法是什么?
- java - 正则表达式查找包含数字的行,以文本开头,但从出现中删除文本
- javascript - 对象中的计算值 | 苗条
- latex - 如何将 natbib \bibliographystyle{dcu} 编辑为首选格式?