![]() |
Entschlüsselungs Algorhytmus hängt sich auf
Hi Leute!
Ich hab mir ne kleine Verschlüsselung zusammengebaut. alles schön und gut, aber ich kans nicht mehr deverschlüsseln... das ist ein Teil des entschlüsselungs codes: (der rest ist das gleiche, nur mit 2 weiteren Zeilen des Memos) Dabei kommt eine fehlermeldung "875495875495" ist kein gültiger integerwert... eigentlich sollten das auch keine 12 stellen sondern nur 6 sein. Ich verstehe nicht, wieso er beim Zweiten durchgang auf einmal die stellenanzahl verdoppelt.
Delphi-Quellcode:
Bitte helft mir... J.P.
i:=0;i2:=0;i3:=0;charint:=0;
line1:='';line2:='';line3:='';bs:=''; //alles wird auf 0 bzw '' gesetzt. for i:=1 to length(memo1.lines[0])DIV 6 do begin i2:=i2+6; bs:=''; bs:=copy(memo1.lines[0],i3,i2); //ab hier steckt irgendwo der fehler... ;( if i3=0 then i3:=i3+7 else i3:=i3+6; charint:=strtoint(bs); charint:=charint DIV X; //X = integer charint:=charint * X; charint:=charint-XXXXXX; line1:=line1+inttochar(charint); end; |
Re: Entschlüsselungs Algorhytmus hängt sich auf
Beim zweiten Durchlauf der Schleife kopierst Du doch auch 12 Zeichen (also in Deinem Fall wohl Zahlen (875495875495)...
... und beim dritten wären es 18, dann 24 usw. (je nachdem wie lang die Zeile im Memo ist ...)... |
Re: Entschlüsselungs Algorhytmus hängt sich auf
So nebenbei ist deine Formatierung grauenhaft, und auch das ständige aneinanderkopieren über den Umweg mit Strings ist nicht gerade guter Stil. Außerdem ist diese Verschlüsselung auch nicht unbedingt sehr sicher.
|
Re: Entschlüsselungs Algorhytmus hängt sich auf
Erstmal: wie soll jemand wissen was entschlüsselt werden soll, wenn keiner die Verschlüsselung kennt. :zwinker:
Grob würde ich mal vermuten deine Verschlüsselung speichert die Werte als Reihe von 6-stelligen Zahlen? Bist du mal im einzelschritt durchgegangen? Dein verschlüsselter String ist wohl '875495875495...'. Nun solltest du dir mal i2 und den 3 Parameter von COPy in der OH ansehn ... dieses ist nicht der Endindex, sondern die Länge ;) [add] siehe OG Karotte's Beitrag [/add]
Delphi-Quellcode:
[add]
//i:=0; Schleifenvariablen werden durch die Schleife definiert
//i2 wird nicht benötigt //i3 kann man aus i errechnen //charint:=0; wird durch strtoint initialisiert //bs:=''; wird in der nächsten Zeile durch COPY gesetzt line1:='';line2:='';line3:=''; for i := 0 to Length(memo1.lines[0]) DIV 6 - 1 do begin bs := copy(memo1.lines[0], i * 6 + 1, 6); //charint := strtoint(bs); //charint := charint DIV X; //charint := charint * X; //charint := charint-XXXXXX; //line1 := line1 + IntToChar(charint); line1 := line1 + IntToChar((strtoint(bs) DIV X) * X - XXXXXX); end; zu 3_of_8's Stringaneinanderreihung: Die Länge vorher setzen und dann nur die Zeichen ersetzen. Ach ja, den String jedesmal aus dem Memo auszulesen ist och nicht gerade gut.
Delphi-Quellcode:
s := memo1.lines[0];
SetLength(line1, Length(s) DIV 6); for i := 0 to Length(s) DIV 6 - 1 do line1[i + 1] := IntToChar((strtoint(copy(s, i * 6 + 1, 6)) DIV X) * X - XXXXXX); |
Re: Entschlüsselungs Algorhytmus hängt sich auf
Uff, klar... Ich bin wohl etwas übermüdet...
Das Ding hab ich auch relativ schnell hinge"klatscht". Danke dass ihr mir geholfen habt. @3of8: Das ist nicht sicher, ich weiß. Aber das kommt noch, du hast schließlich nur EINEN teil gesehen ;D das bs:='' hatte ich nur, weil ich vorher was anderes stehen hatte... Ich besorg mir erstmla nen Kaffee... Nochma riesiges Danke an alle die geantwortet haben... |
Re: Entschlüsselungs Algorhytmus hängt sich auf
Wenn das kein etablierter Verschlüsselungsalgorithmus ist, kannst du dir sehr sicher sein, dass der extrem unsicher ist. Implementier doch einen RSA oder sowas, aber denk dir lieber keinen eigenen aus, solange du dich nicht gut mit Kryptographie auskennst. Das führt zu nichts, expertus dico.
|
Re: Entschlüsselungs Algorhytmus hängt sich auf
Abgesehn vom Speicher ... Verschlüsselt is die Datenmenge mindestens 6-mal größer.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:26 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