JavaTM Platform
Standard Ed. 6

类 java.security.Provider
的使用

使用 Provider 的软件包
java.security 为安全框架提供类和接口。 
java.security.cert 提供用于解析和管理证书、证书撤消列表 (CRL) 和证书路径的类和接口。 
javax.crypto 为加密操作提供类和接口。 
javax.net.ssl 提供用于安全套接字包的类。 
javax.security.auth.login 此包提供可插入的验证框架。 
javax.xml.crypto.dsig 用于生成和验证 XML 数字签名的类。 
javax.xml.crypto.dsig.keyinfo 用来解析和处理 KeyInfo 元素和结构的类。 
org.ietf.jgss 此包提供一个框架,该框架允许应用程序开发人员通过利用统一的 API 使用一些来自各种基础安全机制(如 Kerberos)的安全服务,如验证、数据完整性和和数据机密性。 
 

java.securityProvider 的使用
 

java.securityProvider 的子类
 class AuthProvider
          此类定义 provider 的登录和注销方法。
 

返回 Providerjava.security 中的方法
 Provider AlgorithmParameterGenerator.getProvider()
          返回此算法参数生成器对象的提供者。
 Provider KeyPairGenerator.getProvider()
          返回此密钥对生成器对象的提供者。
 Provider KeyStore.getProvider()
          返回此 keystore 的提供者。
 Provider SecureRandom.getProvider()
          返回此 SecureRandom 对象的提供者。
 Provider Signature.getProvider()
          返回此签名对象的提供者。
 Provider AlgorithmParameters.getProvider()
          返回此参数对象的提供者。
 Provider KeyFactory.getProvider()
          返回此密钥工厂对象的提供者。
 Provider MessageDigest.getProvider()
          返回此信息摘要对象的提供者。
 Provider Provider.Service.getProvider()
          返回此服务的 Provider。
 Provider Policy.getProvider()
          返回此 Policy 的 Provider。
static Provider Security.getProvider(String name)
          返回使用指定的名称安装的提供者(如果有)。
static Provider[] Security.getProviders()
          返回包含所有已安装的提供者的数组。
static Provider[] Security.getProviders(Map<String,String> filter)
          返回包含可以满足指定的 * 选择标准的所有已安装的提供者的数组,如果尚未安装此类提供者,则返回 null。
static Provider[] Security.getProviders(String filter)
          返回包含满足指定的选择标准的所有已安装的提供者的数组,如果尚未安装此类提供者,则返回 null。
 

参数类型为 Providerjava.security 中的方法
static int Security.addProvider(Provider provider)
          将提供者添加到下一个可用位置。
static Policy Policy.getInstance(String type, Policy.Parameters params, Provider provider)
          返回指定类型的 Policy 对象。
static AlgorithmParameterGenerator AlgorithmParameterGenerator.getInstance(String algorithm, Provider provider)
          返回生成与指定算法一起使用的参数集的 AlgorithmParameterGenerator 对象。
static KeyPairGenerator KeyPairGenerator.getInstance(String algorithm, Provider provider)
          返回生成指定算法的 public/private 密钥对的 KeyPairGenerator 对象。
static KeyStore KeyStore.getInstance(String type, Provider provider)
          返回指定类型的 keystore 对象。
static SecureRandom SecureRandom.getInstance(String algorithm, Provider provider)
          返回实现指定随机数生成器 (RNG) 算法的 SecureRandom 对象。
static Signature Signature.getInstance(String algorithm, Provider provider)
          返回实现指定签名算法的 Signature 对象。
static AlgorithmParameters AlgorithmParameters.getInstance(String algorithm, Provider provider)
          返回指定算法的参数对象。
static KeyFactory KeyFactory.getInstance(String algorithm, Provider provider)
          返回转换指定算法的 public/private 关键字的 KeyFactory 对象。
static MessageDigest MessageDigest.getInstance(String algorithm, Provider provider)
          返回实现指定摘要算法的 MessageDigest 对象。
static int Security.insertProviderAt(Provider provider, int position)
          在指定的位置添加新的提供者。
static KeyStore.Builder KeyStore.Builder.newInstance(String type, Provider provider, File file, KeyStore.ProtectionParameter protection)
          返回新的 Builder 对象。
static KeyStore.Builder KeyStore.Builder.newInstance(String type, Provider provider, KeyStore.ProtectionParameter protection)
          返回新的 Builder 对象。
 

参数类型为 Providerjava.security 中的构造方法
AlgorithmParameterGenerator(AlgorithmParameterGeneratorSpi paramGenSpi, Provider provider, String algorithm)
          创建一个 AlgorithmParameterGenerator 对象。
AlgorithmParameters(AlgorithmParametersSpi paramSpi, Provider provider, String algorithm)
          创建一个 AlgorithmParameters 对象。
KeyFactory(KeyFactorySpi keyFacSpi, Provider provider, String algorithm)
          创建一个 KeyFactory 对象。
KeyStore(KeyStoreSpi keyStoreSpi, Provider provider, String type)
          创建给定类型的 KeyStore 对象,并在其中封装给定的提供者实现(SPI 对象)。
Provider.Service(Provider provider, String type, String algorithm, String className, List<String> aliases, Map<String,String> attributes)
          构造新的服务。
SecureRandom(SecureRandomSpi secureRandomSpi, Provider provider)
          创建 SecureRandom 对象。
 

java.security.certProvider 的使用
 

返回 Providerjava.security.cert 中的方法
 Provider CertPathBuilder.getProvider()
          返回此 CertPathBuilder 的提供者。
 Provider CertPathValidator.getProvider()
          返回此 CertPathValidatorProvider
 Provider CertStore.getProvider()
          返回此 CertStore 的提供者。
 Provider CertificateFactory.getProvider()
          返回此 CertificateFactory 的提供者。
 

参数类型为 Providerjava.security.cert 中的方法
static CertStore CertStore.getInstance(String type, CertStoreParameters params, Provider provider)
          返回一个实现指定 CertStore 类型的 CertStore 对象。
static CertPathBuilder CertPathBuilder.getInstance(String algorithm, Provider provider)
          返回实现了指定算法的 CertPathBuilder 对象。
static CertPathValidator CertPathValidator.getInstance(String algorithm, Provider provider)
          返回实现指定算法的 CertPathValidator 对象。
static CertificateFactory CertificateFactory.getInstance(String type, Provider provider)
          返回指定证书类型的 CertificateFactory 对象。
 

参数类型为 Providerjava.security.cert 中的构造方法
CertificateFactory(CertificateFactorySpi certFacSpi, Provider provider, String type)
          创建给定类型的 CertificateFactory 对象,并在其中封装给定的提供者实现(SPI 对象)。
CertPathBuilder(CertPathBuilderSpi builderSpi, Provider provider, String algorithm)
          创建一个给定算法的 CertPathBuilder 对象,并在其中封装给定的提供者实现(SPI 对象)。
CertPathValidator(CertPathValidatorSpi validatorSpi, Provider provider, String algorithm)
          创建一个给定算法的 CertPathValidator 对象,并在其中封装给定的提供者实现(SPI 对象)。
CertStore(CertStoreSpi storeSpi, Provider provider, String type, CertStoreParameters params)
          创建一个给定类型的 CertStore 对象,并在其中封装给定提供者实现(SPI 对象)。
 

javax.cryptoProvider 的使用
 

返回 Providerjavax.crypto 中的方法
 Provider Cipher.getProvider()
          返回此 Cipher 对象的提供者。
 Provider ExemptionMechanism.getProvider()
          返回此 ExemptionMechanism 对象的提供者。
 Provider KeyAgreement.getProvider()
          返回此 KeyAgreement 对象的提供者。
 Provider KeyGenerator.getProvider()
          返回此 KeyGenerator 对象的提供者。
 Provider Mac.getProvider()
          返回此 Mac 对象的提供者。
 Provider SecretKeyFactory.getProvider()
          返回此 SecretKeyFactory 对象的提供者。
 

参数类型为 Providerjavax.crypto 中的方法
static Cipher Cipher.getInstance(String transformation, Provider provider)
          返回实现指定转换的 Cipher 对象。
static ExemptionMechanism ExemptionMechanism.getInstance(String algorithm, Provider provider)
          返回实现指定豁免机制算法的 ExemptionMechanism 对象。
static KeyAgreement KeyAgreement.getInstance(String algorithm, Provider provider)
          返回实现指定密钥协定算法的 KeyAgreement 对象。
static KeyGenerator KeyGenerator.getInstance(String algorithm, Provider provider)
          返回生成指定算法的秘密密钥的 KeyGenerator 对象。
static Mac Mac.getInstance(String algorithm, Provider provider)
          返回实现指定 MAC 算法的 Mac 对象。
static SecretKeyFactory SecretKeyFactory.getInstance(String algorithm, Provider provider)
          返回转换指定算法的秘密密钥的 SecretKeyFactory 对象。
 PKCS8EncodedKeySpec EncryptedPrivateKeyInfo.getKeySpec(Key decryptKey, Provider provider)
          将密封的 PKCS8EncodedKeySpec 对象从加密的数据中抽取出来并将其返回。
 

参数类型为 Providerjavax.crypto 中的构造方法
Cipher(CipherSpi cipherSpi, Provider provider, String transformation)
          创建 Cipher 对象。
ExemptionMechanism(ExemptionMechanismSpi exmechSpi, Provider provider, String mechanism)
          创建 ExemptionMechanism 对象。
KeyAgreement(KeyAgreementSpi keyAgreeSpi, Provider provider, String algorithm)
          创建一个 KeyAgreement 对象。
KeyGenerator(KeyGeneratorSpi keyGenSpi, Provider provider, String algorithm)
          创建一个 KeyGenerator 对象。
Mac(MacSpi macSpi, Provider provider, String algorithm)
          创建一个 MAC 对象。
SecretKeyFactory(SecretKeyFactorySpi keyFacSpi, Provider provider, String algorithm)
          创建一个 SecretKeyFactory 对象。
 

javax.net.sslProvider 的使用
 

返回 Providerjavax.net.ssl 中的方法
 Provider KeyManagerFactory.getProvider()
          返回此 KeyManagerFactory 对象的提供者。
 Provider SSLContext.getProvider()
          返回此 SSLContext 对象的提供者。
 Provider TrustManagerFactory.getProvider()
          返回此 TrustManagerFactory 对象的提供者。
 

参数类型为 Providerjavax.net.ssl 中的方法
static KeyManagerFactory KeyManagerFactory.getInstance(String algorithm, Provider provider)
          返回充当密钥管理器工厂的 KeyManagerFactory 对象。
static SSLContext SSLContext.getInstance(String protocol, Provider provider)
          返回实现指定安全套接字协议的 SSLContext 对象。
static TrustManagerFactory TrustManagerFactory.getInstance(String algorithm, Provider provider)
          返回充当信任管理器工厂的 TrustManagerFactory 对象。
 

参数类型为 Providerjavax.net.ssl 中的构造方法
KeyManagerFactory(KeyManagerFactorySpi factorySpi, Provider provider, String algorithm)
          创建 KeyManagerFactory 对象。
SSLContext(SSLContextSpi contextSpi, Provider provider, String protocol)
          创建 SSLContext 对象。
TrustManagerFactory(TrustManagerFactorySpi factorySpi, Provider provider, String algorithm)
          创建 TrustManagerFactory 对象。
 

javax.security.auth.loginProvider 的使用
 

返回 Providerjavax.security.auth.login 中的方法
 Provider Configuration.getProvider()
          返回此 Configuration 的 Provider。
 

参数类型为 Providerjavax.security.auth.login 中的方法
static Configuration Configuration.getInstance(String type, Configuration.Parameters params, Provider provider)
          返回指定类型的 Configuration 对象。
 

javax.xml.crypto.dsigProvider 的使用
 

返回 Providerjavax.xml.crypto.dsig 中的方法
 Provider TransformService.getProvider()
          返回此 TransformService 的提供者。
 Provider XMLSignatureFactory.getProvider()
          返回此 XMLSignatureFactory 的提供者。
 

参数类型为 Providerjavax.xml.crypto.dsig 中的方法
static XMLSignatureFactory XMLSignatureFactory.getInstance(String mechanismType, Provider provider)
          返回支持请求的 XML 处理机制和表示形式类型(比如:“DOM”)的 XMLSignatureFactory,由指定提供者提供。
static TransformService TransformService.getInstance(String algorithm, String mechanismType, Provider provider)
          返回支持指定算法 URI(比如:Transform.XPATH2)和机制类型(比如:DOM)的 TransformService,由指定提供者提供。
 

javax.xml.crypto.dsig.keyinfoProvider 的使用
 

返回 Providerjavax.xml.crypto.dsig.keyinfo 中的方法
 Provider KeyInfoFactory.getProvider()
          返回此 KeyInfoFactory 的提供者。
 

参数类型为 Providerjavax.xml.crypto.dsig.keyinfo 中的方法
static KeyInfoFactory KeyInfoFactory.getInstance(String mechanismType, Provider provider)
          返回支持所需的 XML 处理机制和表示形式类型(比如:“DOM”)的 KeyInfoFactory,由指定提供者提供。
 

org.ietf.jgssProvider 的使用
 

参数类型为 Providerorg.ietf.jgss 中的方法
abstract  void GSSManager.addProviderAtEnd(Provider p, Oid mech)
          此方法用于向 GSSManager 指示,如果没有其他的提供者支持指定的机制,则应用程序将使用特定的提供者。
abstract  void GSSManager.addProviderAtFront(Provider p, Oid mech)
          此方法用来向 GSSManager 表示,当支持是指定的机制所需要的支持时,应用程序希望优先于其他所有提供者使用特定的提供者。
 


JavaTM Platform
Standard Ed. 6

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策