public class EncryptionCodec extends AbstractCodec<EncryptionMetadata>
| Modifier and Type | Class and Description |
|---|---|
protected class |
EncryptionCodec.SigningEncodeMetadataListener |
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
AES_CBC_PKCS5_CIPHER |
static int |
DEFAULT_KEY_SIZE |
static int |
PRIORITY |
static java.lang.String |
PROP_KEY_PROVIDER |
static java.lang.String |
PROP_KEY_SIZE |
static java.lang.String |
PROP_SECURITY_PROVIDER |
static java.lang.String |
SECURE_RANDOM_INSTANCE |
| Constructor and Description |
|---|
EncryptionCodec() |
| Modifier and Type | Method and Description |
|---|---|
protected KeyProvider |
_getKeyProvider(java.util.Map<java.lang.String,java.lang.Object> codecProperties) |
boolean |
canProcess(java.lang.String encodeSpec) |
protected javax.crypto.Cipher |
createCipher(java.lang.String cipherSpec,
java.security.Provider provider) |
EncryptionMetadata |
createEncodeMetadata(java.lang.String encodeSpec,
java.util.Map<java.lang.String,java.lang.String> metaMap) |
static java.lang.String |
encodeSpec(java.lang.String cipherSpec) |
java.lang.String |
encryptKey(javax.crypto.SecretKey key,
java.security.KeyPair masterKey,
java.security.Provider provider) |
protected javax.crypto.SecretKey |
generateKey(java.lang.String cipherSpec,
int keySize,
java.security.Provider provider) |
long |
getDecodedSize(EncryptionMetadata encodeInfo) |
java.io.InputStream |
getDecodingStream(java.io.InputStream originalStream,
EncryptionMetadata metadata,
java.util.Map<java.lang.String,java.lang.Object> codecProperties) |
java.io.OutputStream |
getDecodingStream(java.io.OutputStream originalStream,
EncryptionMetadata metadata,
java.util.Map<java.lang.String,java.lang.Object> codecProperties) |
java.lang.String |
getDefaultEncodeSpec() |
long |
getEncodedSize(long originalSize,
java.lang.String encodeSpec,
java.util.Map<java.lang.String,java.lang.Object> codecProperties) |
EncodeInputStream<EncryptionMetadata> |
getEncodingStream(java.io.InputStream originalStream,
java.lang.String encodeSpec,
java.util.Map<java.lang.String,java.lang.Object> codecProperties) |
EncodeOutputStream<EncryptionMetadata> |
getEncodingStream(java.io.OutputStream originalStream,
java.lang.String encodeSpec,
java.util.Map<java.lang.String,java.lang.Object> codecProperties) |
static KeyProvider |
getKeyProvider(java.util.Map<java.lang.String,java.lang.Object> codecProperties) |
static int |
getKeySize(java.util.Map<java.lang.String,java.lang.Object> codecProperties) |
int |
getPriority() |
protected java.security.SecureRandom |
getSecureRandom(java.security.Provider provider) |
static java.security.Provider |
getSecurityProvider(java.util.Map<java.lang.String,java.lang.Object> codecProperties) |
protected javax.crypto.Cipher |
initDecryptCipher(EncryptionMetadata metadata,
KeyProvider keyProvider,
java.security.Provider provider) |
protected javax.crypto.Cipher |
initEncryptCipher(java.lang.String cipherSpec,
javax.crypto.SecretKey key,
java.security.Provider provider) |
boolean |
isSizePredictable() |
void |
rekey(EncryptionMetadata metadata,
java.util.Map<java.lang.String,java.lang.Object> codecProperties) |
void |
rekey(java.util.Map<java.lang.String,java.lang.String> metaMap,
java.util.Map<java.lang.String,java.lang.Object> codecProperties) |
static void |
setKeyProvider(java.util.Map<java.lang.String,java.lang.Object> codecProperties,
KeyProvider keyProvider) |
static void |
setKeySize(java.util.Map<java.lang.String,java.lang.Object> codecProperties,
int keySize) |
static void |
setPropSecurityProvider(java.util.Map<java.lang.String,java.lang.Object> codecProperties,
java.security.Provider securityProvider) |
canDecode, canEncode, compareTo, getEncodedSize, getEncodingStream, getEncodingStreampublic static final int PRIORITY
public static final java.lang.String SECURE_RANDOM_INSTANCE
public static final java.lang.String AES_CBC_PKCS5_CIPHER
public static final java.lang.String PROP_KEY_SIZE
public static final java.lang.String PROP_KEY_PROVIDER
public static final java.lang.String PROP_SECURITY_PROVIDER
public static final int DEFAULT_KEY_SIZE
public static java.lang.String encodeSpec(java.lang.String cipherSpec)
public static int getKeySize(java.util.Map<java.lang.String,java.lang.Object> codecProperties)
public static void setKeySize(java.util.Map<java.lang.String,java.lang.Object> codecProperties,
int keySize)
public static KeyProvider getKeyProvider(java.util.Map<java.lang.String,java.lang.Object> codecProperties)
public static void setKeyProvider(java.util.Map<java.lang.String,java.lang.Object> codecProperties,
KeyProvider keyProvider)
public static java.security.Provider getSecurityProvider(java.util.Map<java.lang.String,java.lang.Object> codecProperties)
public static void setPropSecurityProvider(java.util.Map<java.lang.String,java.lang.Object> codecProperties,
java.security.Provider securityProvider)
public boolean canProcess(java.lang.String encodeSpec)
canProcess in class AbstractCodec<EncryptionMetadata>public java.lang.String getDefaultEncodeSpec()
public int getPriority()
public EncryptionMetadata createEncodeMetadata(java.lang.String encodeSpec, java.util.Map<java.lang.String,java.lang.String> metaMap)
public long getDecodedSize(EncryptionMetadata encodeInfo)
public java.io.OutputStream getDecodingStream(java.io.OutputStream originalStream,
EncryptionMetadata metadata,
java.util.Map<java.lang.String,java.lang.Object> codecProperties)
public java.io.InputStream getDecodingStream(java.io.InputStream originalStream,
EncryptionMetadata metadata,
java.util.Map<java.lang.String,java.lang.Object> codecProperties)
public boolean isSizePredictable()
public long getEncodedSize(long originalSize,
java.lang.String encodeSpec,
java.util.Map<java.lang.String,java.lang.Object> codecProperties)
public EncodeOutputStream<EncryptionMetadata> getEncodingStream(java.io.OutputStream originalStream, java.lang.String encodeSpec, java.util.Map<java.lang.String,java.lang.Object> codecProperties)
public EncodeInputStream<EncryptionMetadata> getEncodingStream(java.io.InputStream originalStream, java.lang.String encodeSpec, java.util.Map<java.lang.String,java.lang.Object> codecProperties)
public void rekey(java.util.Map<java.lang.String,java.lang.String> metaMap,
java.util.Map<java.lang.String,java.lang.Object> codecProperties)
public void rekey(EncryptionMetadata metadata, java.util.Map<java.lang.String,java.lang.Object> codecProperties)
protected javax.crypto.Cipher initEncryptCipher(java.lang.String cipherSpec,
javax.crypto.SecretKey key,
java.security.Provider provider)
protected javax.crypto.Cipher initDecryptCipher(EncryptionMetadata metadata, KeyProvider keyProvider, java.security.Provider provider)
protected javax.crypto.Cipher createCipher(java.lang.String cipherSpec,
java.security.Provider provider)
protected javax.crypto.SecretKey generateKey(java.lang.String cipherSpec,
int keySize,
java.security.Provider provider)
public java.lang.String encryptKey(javax.crypto.SecretKey key,
java.security.KeyPair masterKey,
java.security.Provider provider)
protected KeyProvider _getKeyProvider(java.util.Map<java.lang.String,java.lang.Object> codecProperties)
protected java.security.SecureRandom getSecureRandom(java.security.Provider provider)