![]() |
Delphi-Version: XE2
unit Blowfish
Hallo,
hat jemand Erfahrung mit dieser Unit. ich rufe die procedure auf.
Delphi-Quellcode:
Unter D2007 wurde folgender Wert zurückgegeben: sEncText = 'IQN4.0WL1951'sEncText := 'EÚ'#$81'?ze,ª¶¯,…' DecryptCFB(sEncText[1], sEncText[1], Length(sEncText)); procedure TDCP_blowfish.DecryptCFB(const InData; var OutData; Size: longint); {$ELSE} procedure BlowfishDecryptCFB; {$ENDIF} var i: longint; TB: array[0..7] of byte; b: byte; begin {$IFDEF CFORM} if not fInitialized then raise Exception.Create('Blowfish: Not initialized'); {$ELSE}with Data do begin{$ENDIF} for i:= 0 to Size-1 do begin b:= PByteArray(@InData)^[i]; {$IFDEF CFORM}Encrypt(LB,TB){$ELSE}BlowfishEncryptECB(Data,LB,TB){$ENDIF}; PByteArray(@OutData)^[i]:= PByteArray(@InData)^[i] xor TB[0]; Move(LB[1],LB[0],7); LB[7]:= b; end; {$IFNDEF CFORM}end;{$ENDIF} end; unter XE2 wird dieser Wert zurückgegeben: sEncText = 'sQƒ§?ݦàþÒ'#$11'ñ' Wer weiß hier Rat? Bin schon seit Tagen dabei dies Problem zu lösen. Vielen Dank im Voraus für einen hoffentlich erfolgreichen Tipp. |
AW: unit Blowfish
sEncText wird kein AnsiString sein.
|
AW: unit Blowfish
Doch ist AnsiString.
|
AW: unit Blowfish
Zitat:
|
AW: unit Blowfish
Doch ist es:
Hier Speicherauszug. sEncText: AnsiString $18F9AC : $CCC24DC |
AW: unit Blowfish
Und ShortString (String[20]) geht auch nicht?
|
AW: unit Blowfish
Nein geht auch nicht.
|
AW: unit Blowfish
Na das ist hier ja mal ein lustiges Rätselraten ... erinnert mich an "Ich sehe was, was du nicht siehst".
@Walter Landwehr Ob es dir wohl möglich ist ein klitzekleines (kompilierbares) Beispiel-Projekt (Konsolenprogramm sollte ja reichen) zu erstellen? Bei solchen Sachen ist auch eine Unit-Test-Anwendung sinnvoll, da man hier Eingabe-Parameter und erwartete Ausgabe gleich als Prüfung mit einbringt. |
AW: unit Blowfish
Zitat:
Und werde ich auch nicht, da jemand das Wichtigste vergessen hat. Welche? Google meinte, aber die ist es ja nicht. ![]() Nja, wenn der Fehler nicht in deinem Code, sondern in der unbekannten Unit liegt, dann kann dir keiner helfen. |
AW: unit Blowfish
Heureka, ich habe einen Teil der Schnitzeljagd (oder heißt das jetzt Code-Caching) gelöst.
Hier angesprochen ist DCPcrypt v1.31 ![]() Die Lösung ergibt sich beim Lesen des Inhaltes, der sich hinter dem Link verbirgt |
AW: unit Blowfish
However, I don’t recommend anyone to use it any more. :-D
Hat XE2 noch den Compilerschalter $H. Mit $H- könnte man es mal versuchen? |
AW: unit Blowfish
Liegt es etwa an DCPcrypt v1.31 das ich bei D2007 verwendet habe. Unter XE2 habe ich die Version 2. Ich habe die beiden Versionen verglichen aber keinen Unterschied gefunden. OK ich mach 2 Demos 1x unter D2007 1 x unter XE2. Kann dies aber erst zum Wochenende machen.
|
AW: unit Blowfish
Zitat:
Du hast das Programm und solltest daher auch wissen wo der Fehler auftritt. (Debuggen, Try-Except mit Benennung drumrum oder Fehlerbehandlung ala Eurekalog) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:53 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