cryptix.provider.key
Class DES_EDE3KeyGenerator

java.lang.Object
  |
  +--xjava.security.KeyGenerator
        |
        +--cryptix.provider.key.RawKeyGenerator
              |
              +--cryptix.provider.key.DESKeyGenerator
                    |
                    +--cryptix.provider.key.DES_EDE3KeyGenerator
All Implemented Interfaces:
java.lang.Cloneable, ExtendedKeyGenerator, Parameterized

public class DES_EDE3KeyGenerator
extends DESKeyGenerator

A key generator for Triple DES with 3 independent DES keys.

A total of 24 bytes are generated, with a parity bit as the LSB of each byte (i.e. there are 2^168 possible keys). The keys are encoded in the order in which they are used for encryption. A Triple DES key is considered weak if any of its constituent keys are weak, or if two or more of those keys are equal, ignoring parity.

Copyright © 1997 Systemics Ltd on behalf of the Cryptix Development Team.
All rights reserved.

$Revision: 1.2 $

Since:
Cryptix 2.2.0a, 2.2.2
Author:
David Hopwood, Raif Naffah

Constructor Summary
DES_EDE3KeyGenerator()
           
 
Method Summary
protected  boolean isWeak(byte[] key)
          Returns true iff the first 24 bytes of key represent a weak or semi-weak Triple DES key.
 
Methods inherited from class cryptix.provider.key.DESKeyGenerator
engineGenerateKey, isWeak, setParity
 
Methods inherited from class cryptix.provider.key.RawKeyGenerator
generateKey, generateKey, getDefaultKeyLength, getMaximumKeyLength, getMinimumKeyLength, initialize, initialize, isValidKeyLength, isWeakAllowed, setWeakAllowed
 
Methods inherited from class xjava.security.KeyGenerator
clone, engineGetParameter, engineSetParameter, getAlgorithm, getAlgorithms, getAlgorithms, getInstance, getInstance, getParameter, setParameter, toString
 
Methods inherited from class java.lang.Object
, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

DES_EDE3KeyGenerator

public DES_EDE3KeyGenerator()
Method Detail

isWeak

protected boolean isWeak(byte[] key)
Returns true iff the first 24 bytes of key represent a weak or semi-weak Triple DES key.
Overrides:
isWeak in class DESKeyGenerator