java.lang.Object | |||||
↳ | java.util.Dictionary<K, V> | ||||
↳ | java.util.Hashtable<K, V> | ||||
↳ | java.util.Properties | ||||
↳ | java.security.Provider | ||||
↳ | com.samsung.android.knox.ucm.plugin.agent.UcmAgentProviderImpl |
This class represents a "provider" for the Java Security API, where a provider implements some or all parts of Java Security.
API level 20 |
KNOX 2.7 |
Nested Classes | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
UcmAgentProviderImpl.UcmAgentCipherSpi | This class provide API's extended from CipherSpi. | ||||||||||
UcmAgentProviderImpl.UcmAgentKeyGeneratorSpi | This class provide API's extended from KeyGeneratorSpi. | ||||||||||
UcmAgentProviderImpl.UcmAgentKeyPairGeneratorSpi | This class provide API's extended from KeyPairGeneratorSpi. | ||||||||||
UcmAgentProviderImpl.UcmAgentKeyStoreSpi | This class provide API's extended from KeyStoreSpi. | ||||||||||
UcmAgentProviderImpl.UcmAgentMacSpi | This class provide API's extended from MacSpi If vendor want to support Mac as JCE, plugin application should implement this Spi and add as Service Provider. | ||||||||||
UcmAgentProviderImpl.UcmAgentSecureRandomSpi | This class provide API's extended from SecureRandomSpi. | ||||||||||
UcmAgentProviderImpl.UcmAgentSignatureSpi | This class provide API's extended from SignatureSpi. | ||||||||||
UcmAgentProviderImpl.UcmAgentSpiProperty | This interface provide API's and constants which is implemented by UCM SPI classes. |
Constants | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
String | CIPHER | Cipher type | |||||||||
String | CIPHER_RSA_ECB_PKCS1PADDING | Cipher Algorithm | |||||||||
String | KEYGENERATOR | KeyGenerator type | |||||||||
String | KEYPAIRGENERATOR | KeyPairGenerator type | |||||||||
String | KEYPAIRGENERATOR_RSA | KeyPairGenerator Algorithm | |||||||||
String | KEYSTORE | KeyStore type | |||||||||
String | KEYSTORE_TYPE | KeyStore | |||||||||
String | MAC | Mac type | |||||||||
String | SECURERANDOM | SecureRandom type | |||||||||
String | SECURERANDOM_SHA1PRNG | SecureRandom Algorithm |
[Expand]
Inherited Fields | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class
java.util.Properties
|
Public Constructors | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Constructs a new instance of
Provider with its name, version and description. |
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
API to register UCM Service Provider class with Security Provider.
| |||||||||||
API to remove UCM SPI service class from provider.
|
[Expand]
Inherited Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class
java.security.Provider
| |||||||||||
From class
java.util.Properties
| |||||||||||
From class
java.util.Hashtable
| |||||||||||
From class
java.util.Dictionary
| |||||||||||
From class
java.lang.Object
| |||||||||||
From interface
java.util.Map
|
Cipher type
API level 20 |
KNOX 2.7 |
Cipher Algorithm
API level 20 |
KNOX 2.7 |
KeyGenerator type
API level 37 |
KNOX 3.10 |
KeyPairGenerator type
API level 20 |
KNOX 2.7 |
KeyPairGenerator Algorithm
API level 20 |
KNOX 2.7 |
KeyStore type
API level 20 |
KNOX 2.7 |
KeyStore
API level 20 |
KNOX 2.7 |
Mac type
API level 37 |
KNOX 3.10 |
SecureRandom type
API level 20 |
KNOX 2.7 |
SecureRandom Algorithm
API level 20 |
KNOX 2.7 |
Constructs a new instance of Provider
with its name, version and description.
API level 20 |
KNOX 2.7 |
API to register UCM Service Provider class with Security Provider.
service | Provider Service |
---|
To support JCE operation, plugin application should register Provider Service and SPI, and the SPI should be extended by UcmAgentCipherSpi, UcmAgentKeyPairGeneratorSpi, UcmAgentKeyStoreSpi or UcmAgentSecureRandomSpi. Plugin application can use this API to add UCM extended SPI and Provider Service to UCM framework.
public class VendorPluginService extends UcmAgentService { private void initializeProvider() { UcmAgentProviderImpl providerImpl = (UcmAgentProviderImpl) getProvider(); // KeyStore VendorKeyStoreProviderService serviceKeyStoreProvider = new VendorKeyStoreProviderService(providerImpl, UcmAgentProviderImpl.KEYSTORE, UcmAgentProviderImpl.KEYSTORE_TYPE, VendorKeyStoreSpi.class.getName(), getApplicationContext()); providerImpl.putServiceImpl(serviceKeyStoreProvider); // Cipher VendorCipherProviderService serviceCipherProvider = new VendorCipherProviderService(providerImpl, UcmAgentProviderImpl.CIPHER, CIPHER_RSA_ECB_PKCS1PADDING, VendorCipherSpi.class.getName(), getApplicationContext()); providerImpl.putServiceImpl(serviceCipherProvider); // KeyPairGenerator VendorKeyPairGeneratorService serviceKeyPairProvider = new VendorKeyPairGeneratorService(providerImpl, UcmAgentProviderImpl.KEYPAIRGENERATOR, "RSA", VendorKeyPairGeneratorSpi.class.getName(), getApplicationContext()); providerImpl.putServiceImpl(serviceKeyPairProvider); // SecureRandom VendorSecureRandomService serviceSecureRandomProvider = new VendorSecureRandomService(providerImpl, UcmAgentProviderImpl.SECURERANDOM, "SHA1PRNG", VendorSecureRandomSpi.class.getName(), getApplicationContext()); providerImpl.putServiceImpl(serviceSecureRandomProvider); } } Note: All SPI and Provider Service class are implemented by plugin vendor. |
API level 20 |
KNOX 2.7 |
Global Scope |
API to remove UCM SPI service class from provider.
service | Provider Service |
---|
API to remove UCM SPI service class from provider. To perform a particular operation, plugin application can use this API to remove Provider Service.
public class VendorPluginService extends UcmAgentService { private void initializeProvider() { UcmAgentProviderImpl providerImpl = (UcmAgentProviderImpl) getProvider(); // KeyStore Provider.Service serviceKeyStoreProvider = providerImpl.getService(UcmAgentProviderImpl.KEYSTORE, UcmAgentProviderImpl.KEYSTORE_TYPE); providerImpl.removeServiceImpl(serviceKeyStoreProvider); // Cipher Provider.Service serviceCipherProvider = providerImpl.getService(UcmAgentProviderImpl.CIPHER, CIPHER_RSA_ECB_PKCS1PADDING); providerImpl.removeServiceImpl(serviceCipherProvider); // KeyPairGenerator Provider.Service serviceKeyPairProvider = providerImpl.getService(UcmAgentProviderImpl.KEYPAIRGENERATOR, "RSA"); providerImpl.removeServiceImpl(serviceKeyPairProvider); // SecureRandom Provider.Service serviceSecureRandomProvider = providerImpl.getService(UcmAgentProviderImpl.SECURERANDOM, "SHA1PRNG"); providerImpl.removeServiceImpl(serviceSecureRandomProvider); } } |
API level 20 |
KNOX 2.7 |
Global Scope |