{******************************************************************} { Cryptlgy.pas } { } { Author : A.Nasir Senturk } { Home Page : http://www.shenturk.com } { Email : shenturk@gmail.com } { } { Date : 03.01.2007 } { Update : 22.03.2007 } { } { Sizden iki şey rica edicem: } { 1. Lutfen bu baslik kismini kaldirmayiniz. } { 2. Mumkunse bagis yapiniz. } { *****************************************************************} unit Cryptlgy; interface uses SysUtils, Classes; { EncryptCipher } function EncryptCipher(const Password, PlainData: string): string; { DecryptCipher } function DecryptCipher(const Password, EncryptData: string): string; implementation uses AesLib; function DecryptCipher(const Password, EncryptData: string): string; var Source, Dest: TStringStream; Encryption: TEncryption; begin Source := TStringStream.Create(EncryptData); try Dest := TStringStream.Create(''); try Encryption := TEncryption.Create(Password, defCryptBufSize); try with Encryption do begin if DecryptStream(Source, Dest, Source.Size) then Result := Dest.DataString else Result := ''; end; finally Encryption.Free; end; finally Dest.Free; end; finally Source.Free; end; end; function EncryptCipher(const Password, PlainData: string): string; var Source, Dest: TStringStream; Encryption: TEncryption; begin Source := TStringStream.Create(PlainData); try Dest := TStringStream.Create(''); try Encryption := TEncryption.Create(Password, defCryptBufSize); try with Encryption do begin if EncryptStream(Source, Dest) then Result := Dest.DataString else Result := ''; end; finally Encryption.Free; end; finally Dest.Free; end; finally Source.Free; end; end; end.