ios - 我想在 openssl 中为 diffiehellman 更改 P 和 G 的值
问题描述
由于参数生成可能是一个昂贵的过程,这通常提前完成一次,然后在许多密钥交换中使用相同的参数集。有没有办法在预先设置之前修改 p 和 g ?
解决方案
如果你使用 openssl 命令,你可以试试 asn1...
# cat dh.conf
asn1=SEQUENCE:dh_key
[dh_key]
p=INTEGER:0x97
g=INTEGER:5
# openssl dh -in newkey.der -inform der -text -check
DH Parameters: (7 bit)
prime: 97 (0x61)
generator: 5 (0x5)
p value is not a safe prime
-----BEGIN DH PARAMETERS-----
MAYCAWECAQU=
-----END DH PARAMETERS-----
以上实现了简单的dh数学,即
> Alice Bob wants to change key...
> Let p =97 and g=5
> and XA=36 and XB=58
> so YA=g^XA mod p = 50
> YB=g^XB mod p = 44
> thus Alice:K=(YB) ^XA mod p=75
> Bob: K=(YA) ^XB mod p=75
推荐阅读
- apache-spark - Spark 数据框(在 Azure Databricks 中)保存在数据湖(gen2)上的单个文件中并重命名文件
- arrays - 无法使用 NodeJs + Express 服务器上的把手在索引上显示数组
- java - OWLAPI 5:如何遍历我的本体类以插入个体?
- python - Python - 如果第一个元组键不在其他字典中,则从字典中删除项目
- machine-learning - 多时间序列中的模式识别
- javascript - 防止功能组件使用默认值覆盖数据
- nginx - Nginx:缓存 Brotli 压缩代理上游响应
- r - 使用特定过滤器进行汇总
- powershell - 如何将参数列表中的类对象传递给另一台计算机并在其上调用函数?
- ios - 如何修复 Xcode 中的“固定宽度约束可能导致剪辑”警告?