Merhaba ustalarım. Uzun süredir uğraştığım ama bir türlü çözüme kavuşturamadığım bir hata var. Şuanki projemi Delphi 10.2 versiyonu ile geliştiriyorum. Bir hesaplama yapmam gerekli Aes 256-ECB üzerinden yalnız bir türlü doğru hesaplamayı yapamıyorum. Aynı kodları delphi 7 üzerinden yaptığımda sorunsuz yapabiliyorum ama 10.2 versiyonunda bir türlü doğru hesaplama yapamıyorum.
Aes hesaplama için kullandığım kütüphane linki şu şekilde.
https://github.com/StephenGenusa/DCPCrypt
Hesapladığım kod ise şu şekilde.
Delphi 7 çıktısı ve doğru olanı
B1CD5BE4ED3DBE649DA2FD2100FB47AF
Delphi 10.2 ise şu şekilde.
527C056F6F9C657B07A1B209B38544CE
String olarak değiştirdim ansistring yaptım malasef bir türlü doğru hesaplama yaptıramıyorum. Doğru olanı delphi 7 hesaplıyor ama 10.2 malasef doğru hesaplama yapmıyor. Yardımlarınız için şimdiden çok teşekkür ederim. Doğru bir hesaplama yapan farklı bir kütüphane var ise elinizde fikirlerinizi belirtirseniz çok memnun olurum şimdiden...
Aes hesaplama için kullandığım kütüphane linki şu şekilde.
https://github.com/StephenGenusa/DCPCrypt
Hesapladığım kod ise şu şekilde.
Function StrToHex(s: ansiString;const ters:boolean=false): ansiString;
Var
i : Integer;
Begin
Result:='';
If Length(s)>0 Then
For i:=1 To Length(s) Do
begin
if ters=False then
Result:=IntToHex(Ord(s[i]),2)+Result
else
Result:=Result+IntToHex(Ord(s[i]),2);
end;
End;
function aescalcualtor (key:Ansistring):Ansistring;
var
Cipher : TDCP_rijndael;
IV : Ansistring;
Data : Ansistring;
i:integer;
Buffer : Ansistring;
begin
Data := #$00#$01#$02#$03#$04#$05#$06#$07#$08#$09#$0a#$0b#$0c#$0d#$0e#$0f;
IV := '';
Cipher := TDCP_rijndael.Create(nil);
Cipher.Init(Key[1], 256, @IV[1]);
SetLength(Buffer,16);
Cipher.EncryptECB(Data[1], Buffer[1]);
Result:=buffer;
end;
procedure TForm1.btn1Click(Sender: TObject);
begin
mmo1.Lines.Add(StrToHex(aescalcualtor('11')));
end;
Delphi 7 çıktısı ve doğru olanı
B1CD5BE4ED3DBE649DA2FD2100FB47AF
Delphi 10.2 ise şu şekilde.
527C056F6F9C657B07A1B209B38544CE
String olarak değiştirdim ansistring yaptım malasef bir türlü doğru hesaplama yaptıramıyorum. Doğru olanı delphi 7 hesaplıyor ama 10.2 malasef doğru hesaplama yapmıyor. Yardımlarınız için şimdiden çok teşekkür ederim. Doğru bir hesaplama yapan farklı bir kütüphane var ise elinizde fikirlerinizi belirtirseniz çok memnun olurum şimdiden...

