org.bouncycastle.crypto.tls
Class TlsMac
java.lang.Object
org.bouncycastle.crypto.tls.TlsMac
public class TlsMac
- extends java.lang.Object
A generic TLS MAC implementation, which can be used with any kind of
Digest to act as an HMAC.
Constructor Summary |
protected |
TlsMac(Digest digest,
byte[] key_block,
int offset,
int len)
Generate a new instance of an TlsMac. |
Method Summary |
protected byte[] |
calculateMac(short type,
byte[] message,
int offset,
int len)
Calculate the mac for some given data. |
protected int |
getSize()
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
seqNo
private long seqNo
mac
private HMac mac
TlsMac
protected TlsMac(Digest digest,
byte[] key_block,
int offset,
int len)
- Generate a new instance of an TlsMac.
- Parameters:
digest
- The digest to use.key_block
- A byte-array where the key for this mac is located.offset
- The number of bytes to skip, before the key starts in the buffer.len
- The length of the key.
getSize
protected int getSize()
- Returns:
- The Keysize of the mac.
calculateMac
protected byte[] calculateMac(short type,
byte[] message,
int offset,
int len)
- Calculate the mac for some given data.
TlsMac will keep track of the sequence number internally.
- Parameters:
type
- The message type of the message.message
- A byte-buffer containing the message.offset
- The number of bytes to skip, before the message starts.len
- The length of the message.
- Returns:
- A new byte-buffer containing the mac value.