public class Des3CbcSha1KdEncryption extends EncryptionEngine implements ChecksumEngine
Constructor and Description |
---|
Des3CbcSha1KdEncryption() |
Modifier and Type | Method and Description |
---|---|
byte[] |
calculateChecksum(byte[] data,
byte[] key,
KeyUsage usage)
Calculate a checksum given raw bytes and an (optional) key.
|
byte[] |
calculateIntegrity(byte[] data,
byte[] key,
KeyUsage usage) |
ChecksumType |
checksumType()
Returns the checksum type of this checksum engine.
|
byte[] |
decrypt(byte[] cipherText,
byte[] keyBytes) |
protected byte[] |
deriveKey(byte[] baseKey,
byte[] usage,
int n,
int k)
Derived Key = DK(Base Key, Well-Known Constant)
DK(Key, Constant) = random-to-key(DR(Key, Constant))
DR(Key, Constant) = k-truncate(E(Key, Constant, initial-cipher-state))
|
byte[] |
encrypt(byte[] plainText,
byte[] keyBytes) |
protected byte[] |
getBitGroup(byte[] seed,
int group) |
int |
getChecksumLength() |
int |
getConfounderLength() |
byte[] |
getDecryptedData(EncryptionKey key,
EncryptedData data,
KeyUsage usage) |
EncryptedData |
getEncryptedData(EncryptionKey key,
byte[] plainText,
KeyUsage usage) |
EncryptionType |
getEncryptionType() |
protected byte[] |
randomToKey(byte[] seed) |
protected byte[] |
setParity(byte[] in) |
concatenateBytes, deriveRandom, getBit, getRandomBytes, getUsageKc, getUsageKe, getUsageKi, padString, removeLeadingBytes, removeTrailingBytes, setBit
public Des3CbcSha1KdEncryption()
public EncryptionType getEncryptionType()
getEncryptionType
in class EncryptionEngine
public int getConfounderLength()
getConfounderLength
in class EncryptionEngine
public int getChecksumLength()
getChecksumLength
in class EncryptionEngine
public ChecksumType checksumType()
ChecksumEngine
checksumType
in interface ChecksumEngine
public byte[] calculateChecksum(byte[] data, byte[] key, KeyUsage usage)
ChecksumEngine
calculateChecksum
in interface ChecksumEngine
data
- The datakey
- The keyusage
- The Key usage numberpublic byte[] calculateIntegrity(byte[] data, byte[] key, KeyUsage usage)
calculateIntegrity
in class EncryptionEngine
public byte[] getDecryptedData(EncryptionKey key, EncryptedData data, KeyUsage usage) throws KerberosException
getDecryptedData
in class EncryptionEngine
KerberosException
public EncryptedData getEncryptedData(EncryptionKey key, byte[] plainText, KeyUsage usage)
getEncryptedData
in class EncryptionEngine
public byte[] encrypt(byte[] plainText, byte[] keyBytes)
encrypt
in class EncryptionEngine
public byte[] decrypt(byte[] cipherText, byte[] keyBytes)
decrypt
in class EncryptionEngine
protected byte[] deriveKey(byte[] baseKey, byte[] usage, int n, int k)
baseKey
- The base key to deriveusage
- The key usagen
- The number of resulting bytesk
- The number of bytesprotected byte[] randomToKey(byte[] seed)
protected byte[] getBitGroup(byte[] seed, int group)
protected byte[] setParity(byte[] in)
Copyright © 2003–2020 The Apache Software Foundation. All rights reserved.