![]() |
Re: RSA - Problem bei der verschlüsselung/entschlüsselung
Leider hast Du himitsus mod_inv eingebaut (ich hatte ja schon befürchtet, daß er damit nur Verwirrung stiftet!), ohne zu beachten, daß er die Parameterreihefolge umgedreht hat. Damit mußt Du natürlich auch schreiben:
Delphi-Quellcode:
e := 5;
d := mod_inv(e,phi); writeln('d=',d); |
Re: RSA - Problem bei der verschlüsselung/entschlüsselung
okay... hab jetzt doch deine functions reinkopiert und alles compiled kommt immer: 'x:5 y:5 z:5'
folglich ist i<11 & i>240 - was genau bedeutet das nun? da der 'Fehler' nicht kommt, heißt es doch, dass i=y (Gut!) worum gehts dann genau im x,y,z:5 ? |
Re: RSA - Problem bei der verschlüsselung/entschlüsselung
Du kannst das
Delphi-Quellcode:
auch weglassen ... dieses ist praktisch nur da, damit die Anzeige nicht zu lang wird.
if (i < 11) or (i > 240) then
i = Eingabewert x = verschlüsselter Wert y = entschlüsselter Wert (dieser sollte ja i entsprechen) |
Re: RSA - Problem bei der verschlüsselung/entschlüsselung
ahso.. naja okay, ich war mir nicht sicher, da ich bisher nur delphi 2007 verwendet hab und nicht sicher war, ob writeln das selbe ist wie bei mir :S
okay damit funktioniert das ganze mal, das ist sehr schön, danke euch Beiden. Jetzt würde ich doch noch gerne wissen, wie ich das mit größeren Zahlen machen kann, ich denke zb (Testzweck!) an e=1024...? Geht das nur mit BigInt? |
Re: RSA - Problem bei der verschlüsselung/entschlüsselung
Zitat:
Delphi-Quellcode:
stehen oder nicht? Ich denke nicht, sondern etwas wie
writeln(i:5, x:5, y:5);
Delphi-Quellcode:
Das writeln(i:5, x:5, y:5); gibt in der Schleife i,x und y jeweils 5-stellig aus. Aber wenn Du keine Fehler 'Fehler: y<>i für i=5' mehr bekommst, hast Du jetzt eine Basis, auf der Du Deine Ideen weiter entwickeln kannst.
writeln('i:5, x:5, y:5');
//oder noch schlimmer ShowMessage('i:5, x:5, y:5'); Gruß Gammatester |
Re: RSA - Problem bei der verschlüsselung/entschlüsselung
ja, wie gesagt, ich programmiere in Delphi 2007 und da kann ich nicht writeln() aufrufen, wenn ich es nicht in eine Datei schreiben will.
und x:5 / z:5 / y:5 kenn ich garnicht. habs jetzt so probiert:
Delphi-Quellcode:
da kommt I/O Error 105 raus... ist aber nicht so wichtig, danke für die Erklärungen, ich mach mal weiter mit dem, was ich vor hatte!
AssignFile(F, 'z.txt');
Rewrite(F); writeln(x:5,y:5,z:5); CloseFile(F); |
Re: RSA - Problem bei der verschlüsselung/entschlüsselung
Wie schon gesagt, e ist überhaupt keine Problem. In der Praxis werden Werte wie e=3, e=17=2^4+1 oder e=65537=2^16+1 benutzt. Mit Deinen int64 könntest Du Werte nehmen, die unsinnig groß sind und normalerweise nicht verwendet werden. Du scheinst zu vergessen, daß e öffentlich ist, also nix geheimes, schwer knackbares etc. Das Problem ist (wie ele schon geschrieben hat) die Größe von N. Mit den 63 Bit bist Du um den Faktor ca 20 [editiert] zu klein.
Wenn Du wirklich (hoffentlich nachdem Du die Grundlagen sauber mit longint oder int64 implementiert hast) an große Zahlen rangehen willst, kannst Du zB die ![]() ![]() PS: IO Error 105: Du hast {$apptype console] nicht mit eingegeben. |
Re: RSA - Problem bei der verschlüsselung/entschlüsselung
okay danke sehr :)
ja ich spiel mich jetzt mal mit den kleinen zahlen herum, bis ich es wirklich verstanden hab, das könnte noch bisschen dauern und dann wag ich mich erst weiter... vllt liest man sich ja. lg Schweindi PS: Danke, jetzt gehts! |
Re: RSA - Problem bei der verschlüsselung/entschlüsselung
Delphi-Quellcode:
AssignFile(F, 'z.txt');
Rewrite(F); WriteLn(F, x:5, y:5, z:5); // die Datei nicht vergessen CloseFile(F);
Delphi-Quellcode:
Ja, also nun hast du die Qual der der Wahl.
Jetzt würde ich doch noch gerne wissen, wie ich das mit größeren Zahlen machen kann, ich denke zb (Testzweck!) an e=1024...?
Geht das nur mit BigInt? Es gibt tausende Big-Math-Libs und welche du jetzt nimmst, das ist dir überlassen. negaH's DECMath ist superschnell und leistungsstark, da es speziell für Verschlüsselungen entwickelt wurde. Ansonsten gibt es alleine in der DP mehrere Libs. Schau einfach mal nach ![]() ![]() ![]() Meine ![]() (absichtlich nicht zu sehr optimiert .. halt einfacher Code) Aber für "kleine" Verschlüsselungen scheint sie nutzbar zu sein ... es gibt hier schon einige Threads, wo jemand damit versuchte eine RSA zu erstellen. |
Re: RSA - Problem bei der verschlüsselung/entschlüsselung
Zitat:
Gammatester |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:13 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