![]() |
Re: BigInt: RandomRange Funktion?
Zitat:
Zitat:
|
Re: BigInt: RandomRange Funktion?
Ich dachte eigentlich an Dezimalziffern ;) Also str:=str+inttostr(RandomRange(0,9)); wobei die erste Ziffer keine 0 sein sollte...
MfG Z4ppy PS.: KP, ob die Syntax da oben jetz stimmt, sollte aber scho richtig sein... Und den String kann man dann ja mit TBigInt.Create(str); umwandeln... |
Re: BigInt: RandomRange Funktion?
Zitat:
1. Sind wir wieder beim Thema, daß RandomRange für kryptographische Anwendungen viel zu unsicher ist. 2. Wenn Du wirklich 20000-stellige Primzahlen mit der Methode erzeugen willst (das sind mehr als 66000 Bits, wenn "Stelle" wieder Dezimal bedeutet), wirst Du viel Zeit für andere Sachen haben. Versuch's erstmal mit 2048 Bits oder 1000 Dezimalstellen. Auf jedenfall ist es besser mit den Arrayelementen zu arbeiten. Schau mal in das Testprogram der von Dir benutzten Klasse aus #1, dort wird genau das gemacht:
Delphi-Quellcode:
Jetzt brauchtst Du eigentlich nur noch random durch was kryptographisch Besseres zu ersetzen, zB mit dem ISAAC:
p := TBigInt.Create(0);
for i:=0 to CRYPTO_DIGITS do p.Digit[i] := random($FFFFFFFF); p.Digit[0] := p.Digit[0] or 1;
Delphi-Quellcode:
Gruß Gammatester
p := TBigInt.Create(0);
for i:=0 to CRYPTO_DIGITS do begin isaac_next(ctx); p.Digit[i] := LongWord(ctx.nextres); end; p.Digit[0] := p.Digit[0] or 1; |
Re: BigInt: RandomRange Funktion?
Ich glaub, du hast mich net verstanden ;) Ich HABE Primzahlen bis 20k Stellen und will nun eine beliebige (natürliche) Zahl mit 1<x<p erzeugen, wobei p die 20k-stellige Zahl ist. Ich rede hier übrigens immer von Dezimalstellen...
Das mitm ISAAC werd ich mir nachher nochma ansehen ;) MfG Z4ppy |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:06 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz