使用openssl生成非随机EC私钥


0

我正在尝试secp384r1使用Unix命令为EC生成确定性私​​钥openssl

我的意思是,我不想获取随机整数,而是希望私钥为值x。此外,我想生成私钥x的公钥。

我一直在阅读openssl文档并搜索几个小时,我似乎无法找到方法......

考虑(x = 123456789)一下,我尝试过这样的事情:

openssl ecparam -name secp384r1 -genkey 123456789 要么

openssl ecparam -name secp384r1 -genkey -no_seed 123456789

但显然它不起作用......


这没有命令行功能,但是如果你编写代码,它就会增加一个点,加上分配和设置数据等开销。见stackoverflow.com/questions/12480776/...。注意secp384r1的私钥应该是48个字节,或96个十六进制数字,或大约115个十进制数字。@SEJPM将已包含publickey 值的私钥文件格式转换为publickey 文件格式。
dave_thompson_085 2015年

Answers:


0

这似乎可以解决问题:

$ echo "4" > xkcd221random.bin

$ for i in $(seq 100); do openssl ecparam -name secp384r1 -rand xkcd221random.bin 2>/dev/null; done | sort | uniq -c
 100 -----BEGIN EC PARAMETERS-----
 100 -----END EC PARAMETERS-----
 100 BgUrgQQAIg==
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.