|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.gregoire.util.crypto.Rijndael_Algorithm
Rijndael --pronounced Reindaal-- is a variable block-size (128-, 192- and 256-bit), variable key-size (128-, 192- and 256-bit) symmetric cipher.
Rijndael was written by Vincent Rijmen and Joan Daemen.
Portions of this code are Copyright © 1997, 1998
Systemics Ltd on behalf of the
Cryptix Development Team.
All rights reserved.
Constructor Summary | |
Rijndael_Algorithm()
|
Method Summary | |
static void |
blockDecrypt(byte[] in,
byte[] result,
int inOffset,
java.lang.Object sessionKey)
Convenience method to decrypt exactly one block of plaintext, assuming Rijndael's default block size (128-bit). |
static void |
blockDecrypt(byte[] in,
byte[] result,
int inOffset,
java.lang.Object sessionKey,
int blockSize)
Decrypt exactly one block of ciphertext. |
static void |
blockEncrypt(byte[] in,
byte[] result,
int inOffset,
java.lang.Object sessionKey)
Convenience method to encrypt exactly one block of plaintext, assuming Rijndael's default block size (128-bit). |
static void |
blockEncrypt(byte[] in,
byte[] result,
int inOffset,
java.lang.Object sessionKey,
int blockSize)
Encrypt exactly one block of plaintext. |
static int |
blockSize()
|
static int |
getRounds(int keySize,
int blockSize)
Return The number of rounds for a given Rijndael's key and block sizes. |
static void |
main(java.lang.String[] args)
|
static java.lang.Object |
makeKey(byte[] k)
Convenience method to expand a user-supplied key material into a session key, assuming Rijndael's default block size (128-bit). |
static java.lang.Object |
makeKey(byte[] k,
int blockSize)
Expand a user-supplied key material into a session key. |
static boolean |
self_test()
A basic symmetric encryption/decryption test. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public Rijndael_Algorithm()
Method Detail |
public static final java.lang.Object makeKey(byte[] k) throws java.security.InvalidKeyException
k
- The 128/192/256-bit user-key to use.
java.security.InvalidKeyException
- If the key is invalid.public static final void blockEncrypt(byte[] in, byte[] result, int inOffset, java.lang.Object sessionKey)
in
- The plaintext.result
- The buffer into which to write the resulting ciphertext.inOffset
- Index of in from which to start considering data.sessionKey
- The session key to use for encryption.public static final void blockDecrypt(byte[] in, byte[] result, int inOffset, java.lang.Object sessionKey)
in
- The ciphertext.result
- the resulting ciphertextinOffset
- Index of in from which to start considering data.sessionKey
- The session key to use for decryption.public static boolean self_test()
public static final int blockSize()
public static final java.lang.Object makeKey(byte[] k, int blockSize) throws java.security.InvalidKeyException
k
- The 128/192/256-bit user-key to use.blockSize
- The block size in bytes of this Rijndael.
java.security.InvalidKeyException
- If the key is invalid.public static final void blockEncrypt(byte[] in, byte[] result, int inOffset, java.lang.Object sessionKey, int blockSize)
in
- The plaintext.result
- The buffer into which to write the resulting ciphertext.inOffset
- Index of in from which to start considering data.sessionKey
- The session key to use for encryption.blockSize
- The block size in bytes of this Rijndael.public static final void blockDecrypt(byte[] in, byte[] result, int inOffset, java.lang.Object sessionKey, int blockSize)
in
- The ciphertext.result
- The resulting ciphertext.inOffset
- Index of in from which to start considering data.sessionKey
- The session key to use for decryption.blockSize
- The block size in bytes of this Rijndael.public static final int getRounds(int keySize, int blockSize)
keySize
- The size of the user key material in bytes.blockSize
- The desired block size in bytes.
public static void main(java.lang.String[] args)
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |