public abstract class AbstractKeyring extends java.lang.Object implements Keyring, CryptoKeyring
Constructor and Description |
---|
AbstractKeyring() |
Modifier and Type | Method and Description |
---|---|
protected char[] |
ask()
Convenience method using the underlying callback to ask for a password
(typically used when the password is not saved in the keyring)
|
protected abstract java.io.InputStream |
decrypt(java.lang.String path) |
protected abstract void |
encrypt(java.lang.String path,
java.io.InputStream unencrypted) |
char[] |
getAsChars(java.lang.String path)
Returns the confidential information as chars.
|
java.io.InputStream |
getAsStream(java.lang.String path)
Returns the confidential information as a stream.
|
protected javax.crypto.SecretKey |
getSecretKey(char[] password)
Triggers lazy initialization
|
protected java.security.Provider |
getSecurityProvider() |
protected abstract void |
handleKeySpecCallback(PBEKeySpecCallback pbeCallback)
Populates the key spec callback
|
protected abstract java.lang.Boolean |
isSetup()
Whether the keyring has already been created in the past with a master
password
|
void |
set(java.lang.String path,
char[] arr) |
void |
set(java.lang.String path,
java.io.InputStream in) |
void |
setCharset(java.lang.String charset) |
void |
setDefaultCallbackHandler(javax.security.auth.callback.CallbackHandler defaultCallbackHandler) |
void |
setSecurityProviderName(java.lang.String securityProviderName) |
protected abstract void |
setup(char[] password)
Setup the keyring persistently,
isSetup() must return true
afterwards |
void |
unlock(char[] password) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
changePassword
protected abstract java.lang.Boolean isSetup()
protected abstract void setup(char[] password)
isSetup()
must return true
afterwardsprotected abstract void handleKeySpecCallback(PBEKeySpecCallback pbeCallback)
protected abstract void encrypt(java.lang.String path, java.io.InputStream unencrypted)
protected abstract java.io.InputStream decrypt(java.lang.String path)
protected javax.crypto.SecretKey getSecretKey(char[] password)
public java.io.InputStream getAsStream(java.lang.String path)
Keyring
getAsStream
in interface Keyring
public void set(java.lang.String path, java.io.InputStream in)
public char[] getAsChars(java.lang.String path)
Keyring
getAsChars
in interface Keyring
public void unlock(char[] password)
unlock
in interface CryptoKeyring
protected java.security.Provider getSecurityProvider()
public void setDefaultCallbackHandler(javax.security.auth.callback.CallbackHandler defaultCallbackHandler)
public void setCharset(java.lang.String charset)
public void setSecurityProviderName(java.lang.String securityProviderName)
protected char[] ask()
Copyright © 2007–2020. All rights reserved.