com.ibm.security.krb5.internal.crypto
Class Rc4HMac
- java.lang.Object
com.ibm.security.krb5.internal.crypto.EType
com.ibm.security.krb5.internal.crypto.Rc4HMac
Direct known subclasses:
- public class Rc4HMac
- extends EType
Author:
Thomas Owusu
Field Summary
Modifier and Type | Field and Description |
---|---|
|
FORTY_BITS
Byte array representation of the ASCII string
"fortybits" ,
including the terminating null.
|
|
KD_AP_REP
Key derivation constant for the server-returned AP-REP
|
|
KD_AP_REQ
Key derivation constant for the service ticket in an AP-REQ
|
|
KD_AP_REQ_AUTHN
Key derivation constant for Authenticator in AP-REQ
|
|
KD_AS_REP
Key derivation constant for AS-REP
|
|
KD_AS_REP_SERV
Key derivation constant for AS-REP with session key
|
|
KD_AS_REQ_PA_ENC_TS
Key derivation constant for PA-ENC-TS in AS-REQ.
|
|
KD_TGS_REP
Key derivation constant for TGS-REP
|
|
KD_TGS_REP_SUB
|
|
KD_TGS_REQ_AUTHN
Key derivation constant for Authenticator in TGS-REQ
|
|
KD_TGS_REQ_CKSUM
Key derivation constant for the request checksum in TGS-REQ
|
|
SIGNATURE_KEY
Byte array representation of the ASCII string
"signaturekey" , including the terminating null.
|
Constructor Summary
Constructor and Description |
---|
Rc4HMac()
|
Method Summary
Modifier and Type | Method and Description |
---|---|
|
blockSize()
DOCUMENT ME!
|
|
calculateChecksum(byte[] data,int size)
Unsupported.
|
|
checksumSize()
DOCUMENT ME!
|
|
checksumType()
DOCUMENT ME!
|
|
confounderSize()
DOCUMENT ME!
|
|
decrypt(byte[] cipher,byte[] key)
Unsupported.
|
|
decrypt(byte[] cipher,byte[] key,byte[] ivec)
Unsupported.
|
|
decrypt(byte[] cipher,byte[] key,int messageType)
DOCUMENT ME!
|
|
decryptedData(byte[] data)
|
|
encrypt(byte[] data,byte[] key)
Unsupported.
|
|
encrypt(byte[] data,byte[] key,byte[] ivec)
Unsupported.
|
|
encrypt(byte[] data,byte[] key,int messageType)
DOCUMENT ME!
|
|
eType()
DOCUMENT ME!
|
|
hmacMd5Digest(javax.crypto.Mac hmacMD5,byte[] key,byte[] data)
DOCUMENT ME!
|
|
hmacMd5Digest(javax.crypto.Mac hmacMD5,byte[] key,byte[] data,int offset,int len)
DOCUMENT ME!
|
|
isValidMessageType(int messageType)
DOCUMENT ME!
|
|
keySize()
DOCUMENT ME!
|
|
keyType()
DOCUMENT ME!
|
|
makeKey(byte[] key,int messageType)
DOCUMENT ME!
|
|
makeKey(javax.crypto.Mac mac,byte[] key,int messageType)
DOCUMENT ME!
|
|
messageTypeToBytes(int messageType)
Converts the input key derivation constant a four-byte array in little
endian (that is, least-significant-bit-first) format.
|
|
minimumPadSize()
DOCUMENT ME!
|
|
rc4Encipher(byte[] key,byte[] data,boolean encrypt)
DOCUMENT ME!
|
|
rc4Encipher(byte[] key,byte[] data,int offset,int len,boolean encrypt)
DOCUMENT ME!
|
|
rc4HMacDecrypt(byte[] cipher,byte[] k1,byte[] k2)
DOCUMENT ME!
|
|
rc4HMacEncrypt(byte[] data,byte[] k1,byte[] k2)
DOCUMENT ME!
|
|
stringToKey(java.lang.String password)
Converts the input (password) string to a key.
|
Methods inherited from class com.ibm.security.krb5.internal.crypto.EType |
---|
checksumField, copyChecksumField, dataSize, decrypt, encrypt, generateChecksum, getBuiltInDefaults, getDefaults, getDefaults, getInstance, getInstance, isChecksumEqual, isChecksumValid, isSupported, isSupported, padSize, resetChecksumField, setChecksum, startOfChecksum, startOfData, startOfPad, toString |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail
SIGNATURE_KEY
- public static final byte[] SIGNATURE_KEY
FORTY_BITS
- public static final byte[] FORTY_BITS
Byte array representation of the ASCII string
"fortybits"
,
including the terminating null.
KD_AS_REQ_PA_ENC_TS
- public static final int KD_AS_REQ_PA_ENC_TS
Key derivation constant for PA-ENC-TS in AS-REQ.
See Also:
KD_AP_REQ
- public static final int KD_AP_REQ
Key derivation constant for the service ticket in an AP-REQ
See Also:
KD_TGS_REQ_CKSUM
- public static final int KD_TGS_REQ_CKSUM
Key derivation constant for the request checksum in TGS-REQ
See Also:
KD_TGS_REQ_AUTHN
- public static final int KD_TGS_REQ_AUTHN
Key derivation constant for Authenticator in TGS-REQ
See Also:
KD_AS_REP
- public static final int KD_AS_REP
Key derivation constant for AS-REP
See Also:
KD_AS_REP_SERV
- public static final int KD_AS_REP_SERV
Key derivation constant for AS-REP with session key
See Also:
KD_TGS_REP
- public static final int KD_TGS_REP
Key derivation constant for TGS-REP
See Also:
KD_TGS_REP_SUB
- public static final int KD_TGS_REP_SUB
See Also:
KD_AP_REQ_AUTHN
- public static final int KD_AP_REQ_AUTHN
Key derivation constant for Authenticator in AP-REQ
See Also:
KD_AP_REP
- public static final int KD_AP_REP
Key derivation constant for the server-returned AP-REP
See Also:
Constructor Detail
Rc4HMac
- public Rc4HMac()
Method Detail
messageTypeToBytes
- public static byte[] messageTypeToBytes( int messageType)
Converts the input key derivation constant a four-byte array in little
endian (that is, least-significant-bit-first) format.
Parameters:
messageType
- DOCUMENT ME! Returns:
DOCUMENT ME!
isValidMessageType
- public static boolean isValidMessageType( int messageType)
DOCUMENT ME!
Parameters:
messageType
- DOCUMENT ME! Returns:
DOCUMENT ME!
stringToKey
- public static byte[] stringToKey( java.lang.String password)
- throws KrbCryptoException
Converts the input (password) string to a key.
encrypt
- public byte[] encrypt(byte[] data,
- byte[] key,
- int messageType)
- throws KrbCryptoException
DOCUMENT ME!
Parameters:
data
- DOCUMENT ME! key
- DOCUMENT ME! messageType
- DOCUMENT ME! Returns:
DOCUMENT ME!
Throws:
KrbCryptoException
- DOCUMENT ME! rc4HMacEncrypt
- protected byte[] rc4HMacEncrypt( byte[] data,
- byte[] k1,
- byte[] k2)
- throws KrbCryptoException
DOCUMENT ME!
Parameters:
data
- DOCUMENT ME! k1
- DOCUMENT ME! k2
- DOCUMENT ME! Returns:
DOCUMENT ME!
Throws:
KrbCryptoException
- DOCUMENT ME! decrypt
- public void decrypt(byte[] cipher,
- byte[] key,
- int messageType)
- throws KrbApErrException
- KrbCryptoException
DOCUMENT ME!
Parameters:
cipher
- DOCUMENT ME! key
- DOCUMENT ME! messageType
- DOCUMENT ME! Throws:
KrbApErrException
- DOCUMENT ME! KrbCryptoException
- DOCUMENT ME! rc4HMacDecrypt
- protected void rc4HMacDecrypt(byte[] cipher,
- byte[] k1,
- byte[] k2)
- throws KrbApErrException
- KrbCryptoException
DOCUMENT ME!
Parameters:
cipher
- DOCUMENT ME! k1
- DOCUMENT ME! k2
- DOCUMENT ME! Throws:
KrbApErrException
- DOCUMENT ME! KrbCryptoException
- DOCUMENT ME! makeKey
- public static byte[] makeKey(byte[] key,
- int messageType)
- throws KrbCryptoException
DOCUMENT ME!
Parameters:
key
- DOCUMENT ME! messageType
- DOCUMENT ME! Returns:
DOCUMENT ME!
Throws:
KrbCryptoException
- DOCUMENT ME! makeKey
- public static byte[] makeKey(javax.crypto.Mac mac,
- byte[] key,
- int messageType)
- throws KrbCryptoException
DOCUMENT ME!
Parameters:
mac
- DOCUMENT ME! key
- DOCUMENT ME! messageType
- DOCUMENT ME! Returns:
DOCUMENT ME!
Throws:
KrbCryptoException
- DOCUMENT ME! rc4Encipher
- public static byte[] rc4Encipher( byte[] key,
- byte[] data,
- boolean encrypt)
- throws java.lang.Exception
DOCUMENT ME!
Parameters:
key
- DOCUMENT ME! data
- DOCUMENT ME! encrypt
- DOCUMENT ME! Returns:
DOCUMENT ME!
Throws:
java.lang.Exception
- DOCUMENT ME! rc4Encipher
- public static byte[] rc4Encipher( byte[] key,
- byte[] data,
- int offset,
- int len,
- boolean encrypt)
- throws java.lang.Exception
DOCUMENT ME!
Parameters:
key
- DOCUMENT ME! data
- DOCUMENT ME! offset
- DOCUMENT ME! len
- DOCUMENT ME! encrypt
- DOCUMENT ME! Returns:
DOCUMENT ME!
Throws:
java.lang.Exception
- DOCUMENT ME! hmacMd5Digest
- public static byte[] hmacMd5Digest( javax.crypto.Mac hmacMD5,
- byte[] key,
- byte[] data)
- throws java.lang.Exception
DOCUMENT ME!
Parameters:
hmacMD5
- DOCUMENT ME! key
- DOCUMENT ME! data
- DOCUMENT ME! Returns:
DOCUMENT ME!
Throws:
java.lang.Exception
- DOCUMENT ME! hmacMd5Digest
- public static byte[] hmacMd5Digest( javax.crypto.Mac hmacMD5,
- byte[] key,
- byte[] data,
- int offset,
- int len)
- throws java.lang.Exception
DOCUMENT ME!
Parameters:
hmacMD5
- DOCUMENT ME! key
- DOCUMENT ME! data
- DOCUMENT ME! offset
- DOCUMENT ME! len
- DOCUMENT ME! Returns:
DOCUMENT ME!
Throws:
java.lang.Exception
- DOCUMENT ME! KrbCryptoException
- DOCUMENT ME! decryptedData
- public byte[] decryptedData(byte[] data)
Description copied from class:
EType
DOCUMENT ME!
Overrides:
decryptedData
in class EType
Parameters:
data
- DOCUMENT ME! Returns:
DOCUMENT ME!
eType
- public int eType()
DOCUMENT ME!
Returns:
DOCUMENT ME!
confounderSize
- public int confounderSize()
DOCUMENT ME!
Specified by:
confounderSize
in class EType
Returns:
DOCUMENT ME!
minimumPadSize
- public int minimumPadSize()
DOCUMENT ME!
Specified by:
minimumPadSize
in class EType
Returns:
DOCUMENT ME!
blockSize
- public int blockSize()
DOCUMENT ME!
Returns:
DOCUMENT ME!
checksumSize
- public int checksumSize()
DOCUMENT ME!
Specified by:
checksumSize
in class EType
Returns:
DOCUMENT ME!
checksumType
- public int checksumType()
DOCUMENT ME!
Specified by:
checksumType
in class EType
Returns:
DOCUMENT ME!
keyType
- public int keyType()
DOCUMENT ME!
Returns:
DOCUMENT ME!
keySize
- public int keySize()
DOCUMENT ME!
Returns:
DOCUMENT ME!
calculateChecksum
- public byte[] calculateChecksum( byte[] data,
- int size)
- throws KrbCryptoException
Unsupported.
Specified by:
calculateChecksum
in class EType
Parameters:
data
- DOCUMENT ME! size
- DOCUMENT ME! Returns:
DOCUMENT ME!
Throws:
KrbCryptoException
- DOCUMENT ME! encrypt
- public byte[] encrypt(byte[] data,
- byte[] key)
- throws KrbCryptoException
Unsupported.
Parameters:
data
- DOCUMENT ME! key
- DOCUMENT ME! Returns:
DOCUMENT ME!
Throws:
KrbCryptoException
- DOCUMENT ME! encrypt
- public byte[] encrypt(byte[] data,
- byte[] key,
- byte[] ivec)
- throws KrbCryptoException
Unsupported.
Parameters:
data
- DOCUMENT ME! key
- DOCUMENT ME! ivec
- DOCUMENT ME! Returns:
DOCUMENT ME!
Throws:
KrbCryptoException
- DOCUMENT ME! decrypt
- public void decrypt(byte[] cipher,
- byte[] key)
- throws KrbApErrException
- KrbCryptoException
Unsupported.
Parameters:
cipher
- DOCUMENT ME! key
- DOCUMENT ME! Throws:
KrbApErrException
- DOCUMENT ME! KrbCryptoException
- DOCUMENT ME! decrypt
- public void decrypt(byte[] cipher,
- byte[] key,
- byte[] ivec)
- throws KrbApErrException
- KrbCryptoException
Unsupported.
Parameters:
cipher
- DOCUMENT ME! key
- DOCUMENT ME! ivec
- DOCUMENT ME! Throws:
KrbApErrException
- DOCUMENT ME! KrbCryptoException
- DOCUMENT ME!
"signaturekey"
, including the terminating null.