Chilkat
HOME
Android™
ASP
Visual Basic
VB.NET
C#
iOS (IPhone)
Objective-C
C++
C
MFC
Delphi
FoxPro
Java
Perl
PHP Extension
PHP ActiveX
Python
PowerShell
Ruby
SQL Server
VBScript
Generate Psuedo-Random Data using ARC4 as a PRNG
This example demonstrates how to use the ARC4 stream encryption algorithm as a pseudo-random number generator (PRNG). This example generates the random data as hex encoded strings. The EncryptStringENC method can be replaced with EncryptBytes to generate random bytes. uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, CHILKATCRYPT2Lib_TLB, OleCtrls; ... procedure TForm1.Button1Click(Sender: TObject); var crypt: TChilkatCrypt2; success: Integer; strData: String; encryptedText: String; i: Integer; begin crypt := TChilkatCrypt2.Create(Self); success := crypt.UnlockComponent('Anything for 30-day trial'); if (success <> 1) then begin ShowMessage('Crypt component unlock failed'); end; crypt.CryptAlgorithm := 'arc4'; crypt.KeyLength := 128; crypt.SetEncodedKey('000102030405060708090A0B0C0D0E0F','hex'); crypt.EncodingMode := 'hex'; // We will repeatedly feed these 8-bytes of data to // the ARC4 stream encryptor to generate our pseudo-random // sequence. strData := '012345678'; // Set FirstChunk to 1 to initialize the ARC4 PRNG with the key. crypt.FirstChunk := 1; crypt.LastChunk := 0; encryptedText := crypt.EncryptStringENC(strData); Memo1.Lines.Add(encryptedText); // Set FirstChunk to 0 to continue encrypting // without re-initializing the ARC4 PRNG crypt.FirstChunk := 0; for i := 1 to 16 do begin // Repeatedly encrypting the same 8 bytes of data // produces then pseudo-random sequence. encryptedText := crypt.EncryptStringENC(strData); Memo1.Lines.Add(encryptedText); end; end; |
© 2000-2010 Chilkat Software, Inc. All Rights Reserved.