CryptoStream

CryptoStream


Provides a streaming mechanism for ciphering data.

Remarks

A CryptoStream can be written to or read from in the same manner as other stream objects. A CryptoStream is designed to be used in a daisy-chain fashion, allowing for multiple transformations to be applied as a single process.

By supplying another Stream object to the Cor.NewCryptoStream function, an automatic daisy-chaining of the two streams is created. The Stream does not have to be another CryptoStream object. It can be any object implementing the Stream interface.

See Also

Project VBCorLib Overview | Constructors

Implements:

IObject 
Stream 

Public:

Types:

NameDescription
 CryptoStreamMode Specifies modes for a CryptoStream.  

Properties:

NameDescription
 CanRead (get) Returns if the Stream can be read from.  
 CanSeek (get) Returns if the Stream can seek.  
 CanTimeout (get) Returns if the Stream can timeout.  
 CanWrite (get) Returns if the Stream can be written to.  
 Length (get) Returns the length of the current Stream.  
 Position (get) Returns the current position withing the Stream.  
 Position (let) Sets the current position within the Stream.  
 ReadTimeout (get) Returns the amount of time must pass before a Read timeout occurs.  
 ReadTimeout (let) Sets the timeout period for Read operations.  
 WriteTimeout (get) Returns the timeout period for a write operation.  
 WriteTimeout (let) Sets the timeout period for a write operation.  

Methods:

NameDescription
 BeginRead Begins an Asynchronous read operation (currently is only synchronous)  
 BeginWrite Begins an asynchronous buffer write. Currently the CryptoStream class does not support asynchronous buffer writing.  
 CloseStream Closes the underlying Stream.  
 EndRead Signifies the end of an asynchronous read from the stream.  
 EndWrite Signifies the end of an asynchronous write to the stream.  
 Equals Returns a boolean indicating if the value and this object instance are the same instance.  
 Flush Flushes the buffers of the underlying Stream.  
 FlushFinalBlock Flushes the remaining data to the underlying stream.  
 GetHashCode Returns a psuedo-unique number used to help identify this object in memory. The current method is to return the value obtained from ObjPtr. If a different method needs to be impelmented then change the method here in this function.

An override might be necessary if the hashcode should be derived from a value contained within the class.  

 ReadBlock Reads a requested amount of data from the stream.  
 ReadByte Reads a single byte from the Stream.  
 SeekPosition Seeks a new position within the Stream.  
 SetLength Sets the length of the current Stream.  
 ToString Returns a string representation of this object instance. The default method simply returns the application name and class name in which this class resides.

A Person class may return the persons name instead.  

 WriteBlock Writes an array of bytes to the Stream.  
 WriteByte Writes a single byte to the Stream.