【发布时间】:2012-02-21 16:59:11
【问题描述】:
我有以下 ActionScript 代码:
function EncryptString(SrcStr:String, KeyStr:String) : String
{
var KeyHexed:* = Hex.toArray(Hex.fromString(KeyStr));
var SrcHexed:* = Hex.toArray(Hex.fromString(SrcStr));
var NullPadded:* = new NullPad();
var Cipher:* = Crypto.getCipher("simple-aes128-cfb8", KeyHexed, NullPadded);
NullPadded.setBlockSize(Cipher.getBlockSize());
Cipher.encrypt(SrcHexed);
return Base64.encodeByteArray(SrcHexed);
}
如何使用Delphi Encryption Compendium (DEC) 转换为 Delphi?
感谢您的帮助!
编辑 1:
我尝试了以下 Delphi 代码:
function EncryptString(Param1, Param2: String): String;
var
Cipher: TCipher_Rijndael;
begin
Cipher := TCipher_Rijndael.Create;
Cipher.Mode := cmCFB8;
Cipher.Init(Param2, '', $FF);
Result := Cipher.EncodeBinary(TFormat_HEX.Encode(Param1), TFormat_MIME64);
Cipher.Free;
end;
【问题讨论】:
-
我已将代码添加到问题中
-
好的。所以你有代码。有什么问题?
-
您使用的是 ANSI 还是 Unicode Delphi?
-
我正在使用 XE2。所以它应该是Unicode,对吧?它用于验证一些数据。但我没有让它与 Delphi 一起工作。
-
在您的 delphi 代码中尝试使用
AnsiString而不是String。
标签: delphi encryption actionscript delphi-xe2