首页 > 解决方案 > 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)

标签: python-3.xdiffie-hellman

解决方案


推荐阅读