CertificateFactorySpi.EngineGenerateCertificate(Stream) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
生成证书对象,并使用从输入流 inStream
读取的数据初始化它。
[Android.Runtime.Register("engineGenerateCertificate", "(Ljava/io/InputStream;)Ljava/security/cert/Certificate;", "GetEngineGenerateCertificate_Ljava_io_InputStream_Handler")]
public abstract Java.Security.Cert.Certificate? EngineGenerateCertificate(System.IO.Stream? inStream);
[<Android.Runtime.Register("engineGenerateCertificate", "(Ljava/io/InputStream;)Ljava/security/cert/Certificate;", "GetEngineGenerateCertificate_Ljava_io_InputStream_Handler")>]
abstract member EngineGenerateCertificate : System.IO.Stream -> Java.Security.Cert.Certificate
参数
- inStream
- Stream
包含证书数据的输入流。
返回
使用输入流中的数据初始化的证书对象。
- 属性
例外
如果检测到分析问题,
注解
生成证书对象,并使用从输入流 inStream
读取的数据初始化它。
为了利用此证书工厂支持的专用证书格式,返回的证书对象可以键入到相应的证书类。 例如,如果此证书工厂实现 X.509 证书,则返回的证书对象可以键入到 X509Certificate
该类。
对于 X.509 证书的证书工厂,提供的 inStream
证书必须经过 DER 编码,并且可以以二进制或可打印 (Base64) 编码提供。 如果证书以 Base64 编码提供,则必须通过 -----BEGIN CERTIFICATE 在开头进行绑定-----,并且必须通过 -----END CERTIFICATE 在末尾绑定-----.
请注意,如果给定的输入流不支持 java.io.InputStream#mark(int) mark
并且 java.io.InputStream#reset() reset
此方法将使用整个输入流。 否则,每次调用此方法都会使用一个证书,输入流的读取位置将定位到固有的证书结束标记之后的下一个可用字节。 如果输入流中的数据不包含固有的证书结束标记(而不是 EOF),并在分析证书后存在尾随数据,则会引发一个 CertificateException
。
本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。