【发布时间】:2010-09-29 13:22:26
【问题描述】:
在 ITAR 时代,有一个popular sig that performed Diffie-Hellman key exchange:
#!/usr/bin/perl -- -export-a-crypto-system-sig Diffie-Hellman-2-lines
($g,$e,$m)=@ARGV,$m||die"$0 gen exp mod\n";print`echo "16dio1[d2%Sa2/d0<X+d
*La1=z\U$m%0]SX$e"[$g*]\EszlXx+p|dc`
使用现代直流,这可以减少很多:
dc -e '16dio???|p'
虽然使用模幂命令('|' 通过有效的指数加倍计算 g^e % m)的现代 dc 形式可能是无与伦比的,而不是 APL,但可以改进原始形式吗?请记住,e 和 m 值将非常大;为了加密安全,它们都将在 1024 位的数量级上。
【问题讨论】:
-
我建议用
language-agnostic和rosetta-stone标记它 -
rosetta-stone如果你想用多种语言实现。
标签: cryptography code-golf public-key