公式2:
m=1085^847 mod 2773
m=244 (正常解密)
//========
下面用FGint验证解密算法
procedure TForm1.Button1Click(Sender: TObject);
var
C, D, N, t: TFGInt;
i: integer;
CC,MM: string;
begin
i := 0;
CC:='244';
MM:='244';//C=M=随机数,这里取244
Base10StringToFGInt(CC, C);
Base10StringToFGInt('847', D);
Base10StringToFGInt('2773', N);
while (true) do
begin
FGIntModExp(C, d, n, t);
FGIntToBase10String(t, CC);
if CompareText(cc, MM) = 0 then
Break;
Base10StringToFGInt(CC, c);
Inc(i);
edit11.Lines.Add(IntToStr(i-1)+':'+cc);
end;
ShowMessage(IntToStr(i)); //这里e=i=153。但原始e应该是63呀, 是不是算法有问题?
base=2^d=223938721183765653884231596109083970712325550254355063497013528381788244794039038016161566975672129433598439870924960647729413130572355242754309348492583872394212038283361213704704835357619389973632663476294128358603636903677855776310199204558679772422013974455718117905791078092625147183814210056158674802348760230217293128203303896993905117919951879256503366847036460669610103555117043661641538357800494086438162708720145657474553496632899185547406541536748983138217879931912893377813204348851343870470560029337841844667296890996239160820729851630032828648638192635987658105261778371802241 mod n
power=2
(这里设m=2)
base:223938721183765653884231596109083970712325550254355063497013528381788244794039038016161566975672129433598439870924960647729413130572355242754309348492583872394212038283361213704704835357619389973632663476294128358603636903677855776310199204558679772422013974455718117905791078092625147183814210056158674802348760230217293128203303896993905117919951879256503366847036460669610103555117043661641538357800494086438162708720145657474553496632899185547406541536748983138217879931912893377813204348851343870470560029337841844667296890996239160820729851630032828648638192635987658105261778371802241
power:2
mod: N
是这样吗?
另:base=2^D 你用什么算出来的?
我用Big integer Calculator v1.12 提示 Over Sized...
谢谢:)
2^24=16,777,216>10,000,000,
所以2^60是一个很大的数。
但e>2^70是基本上不可能算出的
www.alpertron.com.ar/DILOG.HTM
In this version of the discrete logarithm calculator only the Pohlig-Hellman algorithm is implemented……
Pohlig-Hellman在n可被分解的情况下才有效,所以不用在这个网站试了。
要用Baby-Step Giant-Step Algorithm才有效