cryptix.provider.key

Class LOKI91KeyGenerator

Implemented Interfaces:
Cloneable, ExtendedKeyGenerator, Parameterized

public class LOKI91KeyGenerator
extends RawKeyGenerator

A key generator for LOKI91.

LOKI91 keys have a fixed length of 64 bits.

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

$Revision: 1.2 $

Authors:
Raif S. Naffah
David Hopwood

Since:
Cryptix 2.2.0a, 2.2.2

Constructor Summary

LOKI91KeyGenerator()

Method Summary

boolean
isWeak(byte[] key)
Returns true iff the byte array key represents a weak or semi-weak LOKI91 key.

Methods inherited from class cryptix.provider.key.RawKeyGenerator

engineGenerateKey, generateKey, generateKey, getDefaultKeyLength, getMaximumKeyLength, getMinimumKeyLength, initialize, initialize, isValidKeyLength, isWeak, isWeakAllowed, setWeakAllowed

Methods inherited from class xjava.security.KeyGenerator

clone, engineGetParameter, engineSetParameter, generateKey, getAlgorithm, getAlgorithms, getAlgorithms, getInstance, getInstance, getParameter, initialize, setParameter, toString

Constructor Details

LOKI91KeyGenerator

public LOKI91KeyGenerator()

Method Details

isWeak

public boolean isWeak(byte[] key)
Returns true iff the byte array key represents a weak or semi-weak LOKI91 key.

LOKI91 has four weak keys and twelve semi-weak keys. Here are the lists of these keys (values given in hexadecimal form):

Weak Keys:

  • 00000000 00000000
  • FFFFFFFF FFFFFFFF
  • 55555555 AAAAAAAA
  • AAAAAAAA 55555555
Semi-Weak Keys:
  • 00000000 55555555
  • AAAAAAAA 00000000
  • 00000000 AAAAAAAA
  • 55555555 00000000
  • 00000000 FFFFFFFF
  • FFFFFFFF 00000000
  • 55555555 55555555
  • AAAAAAAA AAAAAAAA
  • 55555555 FFFFFFFF
  • FFFFFFFF AAAAAAAA
  • AAAAAAAA FFFFFFFF
  • FFFFFFFF 55555555
Overrides:
isWeak in interface RawKeyGenerator

Parameters:
key - the byte array containing user key data.