License:
BSD style: see doc/license.txt for details
Version:
Initial release: Feb 2006
author:
Regan Heath, Oskar Linde
This module implements the MD2 Message Digest Algorithm as described
by RFC 1319 The MD2 Message-Digest Algorithm. B. Kaliski. April 1992.
class Md2: tango.util.digest.MerkleDamgard.MerkleDamgard;
this();
Construct an Md2
protected void reset();
Initialize the cipher
Remarks:
Returns the cipher state to it's initial value
protected void createDigest(ubyte[] buf);
Obtain the digest
Returns:
the digest
Remarks:
Returns a digest of the current cipher state, this may
be the final digest, or a digest of the state between
calls to update()
uint digestSize();
The MD 2 digest size is 16 bytes
protected uint blockSize();
block size
Returns:
the block size
Remarks:
Specifies the size (in bytes) of the block of data to pass to
each call to transform(). For MD2 the blockSize is 16.
protected uint addSize();
Length padding size
Returns:
the length padding size
Remarks:
Specifies the size (in bytes) of the padding which uses the
length of the data which has been ciphered, this padding is
carried out by the padLength method. For MD2 the addSize is
0
protected void padMessage(ubyte[] data);
Pads the cipher data
Params:
ubyte[] data
a slice of the cipher buffer to fill with padding
Remarks:
Fills the passed buffer slice with the appropriate padding
for the final call to transform(). This padding will fill
the cipher buffer up to blockSize()-addSize().
protected void transform(const(ubyte[]) input);
Performs the cipher on a block of data
Params:
data
the block of data to cipher
Remarks:
The actual cipher algorithm is carried out by this method on
the passed block of data. This method is called for every
blockSize() bytes of input data and once more with the
remaining data padded to blockSize().
protected void extend();
Final processing of cipher.
Remarks:
This method is called after the final transform just prior to
the creation of the final digest. The MD2 algorithm requires
an additional step at this stage. Future ciphers may or may not
require this method.
Page generated by Ddoc. Copyright (c) 2006 Tango. All rights reserved