|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcryptix.tools.KAT
public final class KAT
For a designated symmetric block cipher algorithm, this command generates and exercises Known Answer Tests data for both Variable Key and Variable Text suites.
KAT's output file format is in conformance with the layout described in Section 3 of NIST's document "Description of Known Answer Tests and Monte Carlo Tests for Advanced Encryption Standard (AES) Candidate Algorithm Submissions" dated January 7, 1998.
If the -p argument is not specified, this command assumes that the name of the designated cipher algorithm is also that of its Security Provider. It always tries processing the user's request using Java Reflection API methods on an XXX_Algorithm class, if such a class exists --XXX being the name of the AES candidate algorithm. When such a class exists, it is assumed to include the following static methods:
The duality of functionalities are there for performance reasons since speed is faster with the Reflection API than with the IJCE one --on a Pentium 133MHz, without JIT, using JDK-1.1.5 Reflection API brings more than 10% speed improvement.
Copyright © 1998
Systemics Ltd on behalf of the
Cryptix Development Team.
All rights reserved.
$Revision: 1.6 $
Nested Class Summary | |
---|---|
(package private) class |
KAT.KAT_Key
|
Field Summary | |
---|---|
(package private) java.lang.Class |
algorithm
|
(package private) java.lang.reflect.Method |
blockSize
|
(package private) Cipher |
cipher
|
(package private) java.lang.String |
cipherName
|
(package private) long |
decBlocks
|
(package private) java.lang.reflect.Method |
decrypt
|
(package private) java.io.File |
destination
|
(package private) java.lang.String |
dirName
|
(package private) long |
encBlocks
|
(package private) java.lang.reflect.Method |
encrypt
|
(package private) long |
keyCount
|
(package private) java.lang.String |
keylengths
|
(package private) int[] |
keys
|
(package private) java.lang.reflect.Method |
makeKey
|
(package private) java.lang.String |
provider
|
(package private) static java.lang.String |
SUBMITTER
|
(package private) boolean |
useReflection
|
(package private) boolean |
varKey
|
(package private) boolean |
varText
|
(package private) static java.lang.String |
VERSION
|
(package private) java.lang.String |
vkFileName
|
(package private) java.lang.String |
vtFileName
|
Constructor Summary | |
---|---|
KAT()
|
Method Summary | |
---|---|
(package private) static void |
halt(java.lang.String s)
Print an error message to System.err and halts execution returning -1 to the JVM. |
static void |
main(java.lang.String[] args)
|
(package private) static void |
notify(java.lang.String s)
Write a notification message to System.out. |
(package private) void |
printUsage()
write help text and quit. |
(package private) void |
run()
main action. |
(package private) void |
vkForKeyIjce(int keysize,
java.io.PrintWriter out)
|
(package private) void |
vkForKeyReflect(int keysize,
java.io.PrintWriter out)
|
(package private) void |
vkKAT(java.lang.String fileName)
|
(package private) void |
vtForKeyIjce(int keysize,
java.io.PrintWriter out)
|
(package private) void |
vtForKeyReflect(int keysize,
java.io.PrintWriter out)
|
(package private) void |
vtKAT(java.lang.String fileName)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
static final java.lang.String VERSION
static final java.lang.String SUBMITTER
boolean varKey
boolean varText
java.lang.String dirName
java.lang.String keylengths
java.lang.String provider
java.lang.String cipherName
java.io.File destination
int[] keys
final java.lang.String vkFileName
final java.lang.String vtFileName
long encBlocks
long decBlocks
long keyCount
java.lang.Class algorithm
java.lang.reflect.Method blockSize
java.lang.reflect.Method makeKey
java.lang.reflect.Method encrypt
java.lang.reflect.Method decrypt
Cipher cipher
boolean useReflection
Constructor Detail |
---|
public KAT()
Method Detail |
---|
public static void main(java.lang.String[] args)
static void halt(java.lang.String s)
s
- a message to output on System.errstatic void notify(java.lang.String s)
s
- string to output to System.out.void printUsage()
void run()
void vkKAT(java.lang.String fileName) throws java.security.KeyException
java.security.KeyException
void vkForKeyReflect(int keysize, java.io.PrintWriter out) throws java.lang.IllegalAccessException, java.lang.reflect.InvocationTargetException
java.lang.IllegalAccessException
java.lang.reflect.InvocationTargetException
void vkForKeyIjce(int keysize, java.io.PrintWriter out) throws java.security.KeyException
java.security.KeyException
void vtKAT(java.lang.String fileName) throws java.security.KeyException
java.security.KeyException
void vtForKeyReflect(int keysize, java.io.PrintWriter out) throws java.lang.IllegalAccessException, java.lang.reflect.InvocationTargetException
java.lang.IllegalAccessException
java.lang.reflect.InvocationTargetException
void vtForKeyIjce(int keysize, java.io.PrintWriter out) throws java.security.KeyException
java.security.KeyException
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |