RAD Studio Cross-Platform Enterprise-Grade Cryptography Library For Windows And Mobile

FireWind

Свой
Регистрация
2 Дек 2005
Сообщения
1,957
Реакции
1,199
Credits
4,009
Cross-Platform Enterprise-Grade Cryptography Library For Windows And Mobile
By Muminjon March 9, 2021

In the olden times, Cryptography was utilized for transforming plain messages or just plaintext to an indecipherable format. And these incomprehensible words were sent to each other and if the receiver knows the algorithm to convert that ciphered text to a readable format. Or there was a special decryption key that could decrypt the messages.

The process of transforming the messages from a plaintext form to a cipher-text form is called Encryption, and the process of transforming the cipher-text to plaintext is called Decryption. I know that many tech guys love to learning Hacking or the real name: Cryptoanalysis. Cryptoanalysis is like learning the designs, schemes of the encryption methods. And by this, you can determine weaknesses in those cipher schemes.

During World War II, the Germans applied a complex electromechanical cipher machine known as the Enigma Machine to maintain the secrecy of military plans. After World War II, the development of digital computers has also brought the development of highly sophisticated and secure cipher systems. Many encryption algorithms were built by scientists throughout the development of computers.

Currently, enabling Cryptography in the systems is easy because of the high-level languages like Delphi. And there are lots of open-source libraries that implement dozens of different encryption algorithms. You just need to add those libraries to your project and you are good to go.

The LockBox is a library for cryptography built for Delphi and C++ Builder. It supports AES, DES, 3DES, SHA, MD5, Blowfish, Twofish, and many popular algorithms. And can be used in Win32, Win64, macOS, iOS, and Android.
Код:
procedure TmfmLockboxTests.Button1Click( Sender: TObject);
const sBoolStrs: array[ boolean ] of string = ('Failed','Passed');
var
  Ok: boolean;
begin
  Codec1.StreamCipherId := 'native.StreamToBlock';
  Codec1.BlockCipherId  := 'native.AES-192';
  Codec1.ChainModeId    := 'native.CBC';
  Codec1.Password       := 'ab';
  Ok := Codec1.SelfTest;
 
  Memo1.Lines.Add( Format( '%s self test %s', [ Codec1.Cipher, sBoolStrs[ Ok]]));
end;
Для просмотра ссылки Войди или Зарегистрируйся