[Overview][Constants][Types][Classes][Procedures and functions][Index] | Reference for unit 'idea' (#fcl)

# TIDEAEncryptStream

[Properties (by Name)] [Methods (by Name)] [Events (by Name)]

IDEA encryption stream.

## Declaration

Source position: idea.pp line 93

`type TIDEAEncryptStream = class(TIDEAStream)`
`public`
`constructor Create(); overload;` |  | Constructor to create a new TIDEAEncryptStream instance
`destructor Destroy; override;` |  | Flush data buffers and free the stream instance.
`function Write(); override;` |  | Write bytes to the stream to be encrypted
`function Seek(); override;` |  | Set stream position
`procedure Flush;` |  | Write remaining bytes from the stream
`end;`

## Inheritance

`TIDEAEncryptStream` |  | IDEA encryption stream.
`TIDEAStream` |  | Ancestor stream for IDEA encryption/decryption streams.
`TOwnerStream`
`TStream`
`TObject`

## Description

TIDEAEncryptStream is a stream which encrypts anything that is written to it using the IDEA mechanism, and then writes the encrypted data to the destination stream using the CipherIDEA algorithm. It is a write-only stream: it is not possible to read data from this stream.

When creating a TIDEAEncryptStream instance, an IDEA encryption key should be passed to the constructor, as well as the stream to which encrypted data should be written.

The resulting encrypted data can be read again with a TIDEADecryptStream decryption stream.

## See also

TIDEADecryptStream |  | IDEA Decryption stream.
TIDEAStream.Create |  | Creates a new instance of the TIDEAStream class
CipherIDEA |  | Encrypt or decrypt a buffer.