Миграция AES из lockbox2 в lockbox3 delphi

Я хотел бы перенести мои старые криптографические функции с lockbox2 на lockbox3 в Delphi XE6. Прежде чем сделать это, я сделал код (CipherComp.dpr) для сравнения вывода, так как настройки изменились.

Я использую AES-ECB (чтобы избежать IV) 256 бит, ключ: "1234567890", текст: "секретное слово"

Используя TPLB2 я инициализирую как

  FAES : TLbRijndael;

  FAES := TLbRijndael.Create(nil);
  FAES.CipherMode := cmECB;   // cmECB (default), cmCBC
  FAES.KeySize := ks256;      // ks128, ks192
  FAES.SetKey('1234567890');  // set the password here

и зашифровать, используя:

  Result := FAES.EncryptString(pString);

с другой стороны, на TPLB3 происходят такие изменения

  FCodec: TCodec;
  FCryptoLib: TCryptographicLibrary;

  FCodec := TCodec.Create(nil);
  FCryptoLib := TCryptographicLibrary.Create(nil);

  FCodec.CryptoLibrary := FCryptoLib;
  FCodec.StreamCipherId := uTPLb_Constants.BlockCipher_ProgId;
  FCodec.BlockCipherId  := 'native.AES-256';
  FCodec.ChainModeId    := uTPLb_Constants.ECB_ProgId;
  FCodec.Password := '1234567890';

и зашифровать

  FCodec.EncryptAnsiString(pString, Result);

но несоответствие вывода при шифровании того же текста.

a secret word qD9+fF1EqdQH8C3TrEaLQg==
a secret word 1bUXLgXwob1cL6O27HMViw==

Я делаю что-то не так, но я могу понять, что.

Любой намек?

Заранее спасибо.

0 ответов

Другие вопросы по тегам