net.named_data.jndn.security.identity
public class BasicIdentityStorage extends Sqlite3IdentityStorageBase
INIT_CERT_TABLE1, INIT_CERT_TABLE2, INIT_CERT_TABLE3, INIT_ID_TABLE1, INIT_ID_TABLE2, INIT_KEY_TABLE1, INIT_KEY_TABLE2, SELECT_doesCertificateExist, SELECT_doesIdentityExist, SELECT_doesKeyExist, SELECT_getAllCertificateNamesOfKey_default_false, SELECT_getAllCertificateNamesOfKey_default_true, SELECT_getAllIdentities_default_false, SELECT_getAllIdentities_default_true, SELECT_getAllKeyNamesOfIdentity_default_false, SELECT_getAllKeyNamesOfIdentity_default_true, SELECT_getCertificate, SELECT_getDefaultCertificateNameForKey, SELECT_getDefaultIdentity, SELECT_getDefaultKeyNameForIdentity, SELECT_getKey, SELECT_MASTER_CERT_TABLE, SELECT_MASTER_ID_TABLE, SELECT_MASTER_KEY_TABLE, WHERE_deleteCertificateInfo, WHERE_deleteIdentityInfo, WHERE_deletePublicKeyInfo, WHERE_setDefaultCertificateNameForKey_reset, WHERE_setDefaultCertificateNameForKey_set, WHERE_setDefaultIdentity_reset, WHERE_setDefaultIdentity_set, WHERE_setDefaultKeyNameForIdentity_reset, WHERE_setDefaultKeyNameForIdentity_set, WHERE_updateKeyStatus
Constructor and Description |
---|
BasicIdentityStorage()
Create a new BasicIdentityStorage to use the SQLite3 file in the
default location.
|
BasicIdentityStorage(String databaseFilePath)
Create a new BasicIdentityStorage to use the given SQLite3 file.
|
Modifier and Type | Method and Description |
---|---|
void |
addCertificate(IdentityCertificate certificate)
Add a certificate to the identity storage.
|
void |
addIdentity(Name identityName)
Add a new identity.
|
void |
addKey(Name keyName,
KeyType keyType,
Blob publicKeyDer)
Add a public key to the identity storage.
|
void |
deleteCertificateInfo(Name certificateName)
Delete a certificate.
|
void |
deleteIdentityInfo(Name identityName)
Delete an identity and related public keys and certificates.
|
void |
deletePublicKeyInfo(Name keyName)
Delete a public key and related certificates.
|
boolean |
doesCertificateExist(Name certificateName)
Check if the specified certificate already exists.
|
boolean |
doesIdentityExist(Name identityName)
Check if the specified identity already exists.
|
boolean |
doesKeyExist(Name keyName)
Check if the specified key already exists.
|
void |
getAllCertificateNamesOfKey(Name keyName,
ArrayList nameList,
boolean isDefault)
Append all the certificate names of a particular key name to the nameList.
|
void |
getAllIdentities(ArrayList nameList,
boolean isDefault)
Append all the identity names to the nameList.
|
void |
getAllKeyNamesOfIdentity(Name identityName,
ArrayList nameList,
boolean isDefault)
Append all the key names of a particular identity to the nameList.
|
IdentityCertificate |
getCertificate(Name certificateName)
Get a certificate from the identity storage.
|
Name |
getDefaultCertificateNameForKey(Name keyName)
Get the default certificate name for the specified key.
|
Name |
getDefaultIdentity()
Get the default identity.
|
Name |
getDefaultKeyNameForIdentity(Name identityName)
Get the default key name for the specified identity.
|
Blob |
getKey(Name keyName)
Get the public key DER blob from the identity storage.
|
boolean |
revokeIdentity()
Revoke the identity.
|
void |
setDefaultCertificateNameForKey(Name keyName,
Name certificateName)
Set the default key name for the specified identity.
|
void |
setDefaultIdentity(Name identityName)
Set the default identity.
|
void |
setDefaultKeyNameForIdentity(Name keyName,
Name identityNameCheck)
Set a key as the default key of an identity.
|
protected void |
updateKeyStatus(Name keyName,
boolean isActive)
In table Key, set 'active' to isActive for the keyName.
|
activateKey, checkSetDefaultKeyNameForIdentity, deactivateKey
getDefaultCertificate, getDefaultCertificateNameForIdentity, getNewKeyName, setDefaultKeyNameForIdentity
public BasicIdentityStorage() throws SecurityException
SecurityException
public BasicIdentityStorage(String databaseFilePath) throws SecurityException
databaseFilePath
- The path of the SQLite file.SecurityException
public final boolean doesIdentityExist(Name identityName) throws SecurityException
doesIdentityExist
in class IdentityStorage
identityName
- The identity name.SecurityException
public final void addIdentity(Name identityName) throws SecurityException
addIdentity
in class IdentityStorage
identityName
- The identity name to be added.SecurityException
public final boolean revokeIdentity()
revokeIdentity
in class IdentityStorage
public final boolean doesKeyExist(Name keyName) throws SecurityException
doesKeyExist
in class IdentityStorage
keyName
- The name of the key.SecurityException
public final void addKey(Name keyName, KeyType keyType, Blob publicKeyDer) throws SecurityException
addKey
in class IdentityStorage
keyName
- The name of the public key to be added.keyType
- Type of the public key to be added.publicKeyDer
- A blob of the public key DER to be added.SecurityException
public final Blob getKey(Name keyName) throws SecurityException
getKey
in class IdentityStorage
keyName
- The name of the requested public key.SecurityException
- if the key doesn't exist.protected void updateKeyStatus(Name keyName, boolean isActive) throws SecurityException
updateKeyStatus
in class Sqlite3IdentityStorageBase
keyName
- The name of the key.isActive
- The value for the 'active' field.SecurityException
public final boolean doesCertificateExist(Name certificateName) throws SecurityException
doesCertificateExist
in class IdentityStorage
certificateName
- The name of the certificate.SecurityException
public final void addCertificate(IdentityCertificate certificate) throws SecurityException
addCertificate
in class IdentityStorage
certificate
- The certificate to be added. This makes a copy of the
certificate.SecurityException
public final IdentityCertificate getCertificate(Name certificateName) throws SecurityException
getCertificate
in class IdentityStorage
certificateName
- The name of the requested certificate.SecurityException
- if the certificate doesn't exist.public final Name getDefaultIdentity() throws SecurityException
getDefaultIdentity
in class IdentityStorage
SecurityException
- if the default identity is not set.public final Name getDefaultKeyNameForIdentity(Name identityName) throws SecurityException
getDefaultKeyNameForIdentity
in class IdentityStorage
identityName
- The identity name.SecurityException
- if the default key name for the identity is not set.public final Name getDefaultCertificateNameForKey(Name keyName) throws SecurityException
getDefaultCertificateNameForKey
in class IdentityStorage
keyName
- The key name.SecurityException
- if the default certificate name for the key name
is not set.public void getAllIdentities(ArrayList nameList, boolean isDefault) throws SecurityException
getAllIdentities
in class IdentityStorage
nameList
- Append result names to nameList.isDefault
- If true, add only the default identity name. If false, add
only the non-default identity names.SecurityException
public void getAllKeyNamesOfIdentity(Name identityName, ArrayList nameList, boolean isDefault) throws SecurityException
getAllKeyNamesOfIdentity
in class IdentityStorage
identityName
- The identity name to search for.nameList
- Append result names to nameList.isDefault
- If true, add only the default key name. If false, add only
the non-default key names.SecurityException
public void getAllCertificateNamesOfKey(Name keyName, ArrayList nameList, boolean isDefault) throws SecurityException
getAllCertificateNamesOfKey
in class IdentityStorage
keyName
- The key name to search for.nameList
- Append result names to nameList.isDefault
- If true, add only the default certificate name. If false,
add only the non-default certificate names.SecurityException
public final void setDefaultIdentity(Name identityName) throws SecurityException
setDefaultIdentity
in class IdentityStorage
identityName
- The default identity name.SecurityException
public final void setDefaultKeyNameForIdentity(Name keyName, Name identityNameCheck) throws SecurityException
setDefaultKeyNameForIdentity
in class IdentityStorage
keyName
- The name of the key.identityNameCheck
- The identity name to check that the keyName
contains the same identity name. If an empty name, it is ignored.SecurityException
public final void setDefaultCertificateNameForKey(Name keyName, Name certificateName) throws SecurityException
setDefaultCertificateNameForKey
in class IdentityStorage
keyName
- The key name.certificateName
- The certificate name.SecurityException
public void deleteCertificateInfo(Name certificateName) throws SecurityException
deleteCertificateInfo
in class IdentityStorage
certificateName
- The certificate name.SecurityException
public void deletePublicKeyInfo(Name keyName) throws SecurityException
deletePublicKeyInfo
in class IdentityStorage
keyName
- The key name.SecurityException
public void deleteIdentityInfo(Name identityName) throws SecurityException
deleteIdentityInfo
in class IdentityStorage
identityName
- The identity name.SecurityException
Copyright © 2016. All rights reserved.