org.bouncycastle.crypto.tls
Class Chacha20Poly1305
java.lang.Object
org.bouncycastle.crypto.tls.Chacha20Poly1305
- All Implemented Interfaces:
- TlsCipher
public class Chacha20Poly1305
- extends java.lang.Object
- implements TlsCipher
Method Summary |
protected byte[] |
calculateRecordMAC(KeyParameter macKey,
byte[] additionalData,
byte[] buf,
int off,
int len)
|
byte[] |
decodeCiphertext(long seqNo,
short type,
byte[] ciphertext,
int offset,
int len)
|
byte[] |
encodePlaintext(long seqNo,
short type,
byte[] plaintext,
int offset,
int len)
|
protected byte[] |
getAdditionalData(long seqNo,
short type,
int len)
|
int |
getPlaintextLimit(int ciphertextLimit)
|
protected KeyParameter |
initRecordMAC(ChaChaEngine cipher,
boolean forEncryption,
long seqNo)
|
protected void |
updateRecordMAC(Mac mac,
byte[] buf,
int off,
int len)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
context
protected TlsContext context
encryptCipher
protected ChaChaEngine encryptCipher
decryptCipher
protected ChaChaEngine decryptCipher
Chacha20Poly1305
public Chacha20Poly1305(TlsContext context)
throws java.io.IOException
- Throws:
java.io.IOException
getPlaintextLimit
public int getPlaintextLimit(int ciphertextLimit)
- Specified by:
getPlaintextLimit
in interface TlsCipher
encodePlaintext
public byte[] encodePlaintext(long seqNo,
short type,
byte[] plaintext,
int offset,
int len)
throws java.io.IOException
- Specified by:
encodePlaintext
in interface TlsCipher
- Throws:
java.io.IOException
decodeCiphertext
public byte[] decodeCiphertext(long seqNo,
short type,
byte[] ciphertext,
int offset,
int len)
throws java.io.IOException
- Specified by:
decodeCiphertext
in interface TlsCipher
- Throws:
java.io.IOException
initRecordMAC
protected KeyParameter initRecordMAC(ChaChaEngine cipher,
boolean forEncryption,
long seqNo)
calculateRecordMAC
protected byte[] calculateRecordMAC(KeyParameter macKey,
byte[] additionalData,
byte[] buf,
int off,
int len)
updateRecordMAC
protected void updateRecordMAC(Mac mac,
byte[] buf,
int off,
int len)
getAdditionalData
protected byte[] getAdditionalData(long seqNo,
short type,
int len)
throws java.io.IOException
- Throws:
java.io.IOException