RSAキーを生成するための基本的な手順を実装しようとしています。このプロシージャは、aとbの範囲の数値を受け入れます。aとbの間隔が「5桁」であることを確認する必要があります。
だから私は解決策を思いついた:
with (numtheory);
gen_rsa := proc(a, b)
local p, q, len_p, len_q, larger;
# the two prime-numbers
p:=safeprime(round(RandomTools[Generate](integer(range=a .. b))-1/2));
q:=safeprime(round(RandomTools[Generate](integer(rande=a .. b))-1/2));
if( evalb(log10(p) > log10(q)+5 )
[...]
Mapleはpとqをtype関数の変数として理解しているようです。log10を使用して、安全なRSAキーを計算するために素数が何桁あるかを調べたいと思います。evalb
2つの対数を決定できないため、失敗しますか?