Mercurial > projects > dcrypt
view dcrypt/crypto/params/SymmetricKey.d @ 14:5ce3012f1def
Removed some redundancy in code. Added NotSupportedError, a base PRNG class and a class which creates a PRNG from a hash function. Changed the MAC class' finalization methods to digest and hexDigest instead of finish and hexFinish respectively. Also added a base Checksum class, crc32 and adler32 in dcrypt.misc as per request.
author | Thomas Dixon <reikon@reikon.us> |
---|---|
date | Tue, 18 Nov 2008 18:03:40 -0500 |
parents | 0e08791a1418 |
children | 8b5eaf3c2979 |
line wrap: on
line source
/** * This file is part of the dcrypt project. * * Copyright: Copyright (C) dcrypt contributors 2008. All rights reserved. * License: MIT * Authors: Thomas Dixon */ module dcrypt.crypto.params.SymmetricKey; import dcrypt.crypto.params.CipherParameters; import dcrypt.crypto.errors.InvalidParameterError; /** Object representing and wrapping a symmetric key in bytes. */ class SymmetricKey : CipherParameters { private ubyte[] _key; /** * Params: * key = Key to be held. */ this(void[] key=null) { _key = cast(ubyte[]) key; } /** Returns: Key in ubytes held by this object. */ ubyte[] key() { return _key; } /** * Set the key held by this object. * * Params: * newKey = New key to be held. * Returns: The new key. */ ubyte[] key(void[] newKey) { return _key = cast(ubyte[]) newKey; } }