mirror of
https://code.briarproject.org/briar/briar.git
synced 2026-02-15 04:18:53 +01:00
Made secret keys erasable from memory.
This commit is contained in:
@@ -6,26 +6,23 @@ import java.security.Signature;
|
||||
|
||||
import javax.crypto.Cipher;
|
||||
import javax.crypto.Mac;
|
||||
import javax.crypto.SecretKey;
|
||||
|
||||
public interface CryptoComponent {
|
||||
|
||||
SecretKey deriveIncomingFrameKey(byte[] secret);
|
||||
ErasableKey deriveIncomingFrameKey(byte[] secret);
|
||||
|
||||
SecretKey deriveIncomingIvKey(byte[] secret);
|
||||
ErasableKey deriveIncomingIvKey(byte[] secret);
|
||||
|
||||
SecretKey deriveIncomingMacKey(byte[] secret);
|
||||
ErasableKey deriveIncomingMacKey(byte[] secret);
|
||||
|
||||
SecretKey deriveOutgoingFrameKey(byte[] secret);
|
||||
ErasableKey deriveOutgoingFrameKey(byte[] secret);
|
||||
|
||||
SecretKey deriveOutgoingIvKey(byte[] secret);
|
||||
ErasableKey deriveOutgoingIvKey(byte[] secret);
|
||||
|
||||
SecretKey deriveOutgoingMacKey(byte[] secret);
|
||||
ErasableKey deriveOutgoingMacKey(byte[] secret);
|
||||
|
||||
KeyPair generateKeyPair();
|
||||
|
||||
SecretKey generateSecretKey();
|
||||
|
||||
Cipher getFrameCipher();
|
||||
|
||||
Cipher getIvCipher();
|
||||
@@ -39,4 +36,6 @@ public interface CryptoComponent {
|
||||
SecureRandom getSecureRandom();
|
||||
|
||||
Signature getSignature();
|
||||
|
||||
ErasableKey generateTestKey();
|
||||
}
|
||||
|
||||
9
api/net/sf/briar/api/crypto/ErasableKey.java
Normal file
9
api/net/sf/briar/api/crypto/ErasableKey.java
Normal file
@@ -0,0 +1,9 @@
|
||||
package net.sf.briar.api.crypto;
|
||||
|
||||
import javax.crypto.SecretKey;
|
||||
|
||||
public interface ErasableKey extends SecretKey {
|
||||
|
||||
/** Erases the key from memory. */
|
||||
void erase();
|
||||
}
|
||||
Reference in New Issue
Block a user