-
public interface Extension
此接口表示X.509扩展。扩展提供了一种将附加属性与用户或公钥相关联并用于管理认证层次结构的方法。 扩展格式还允许社区定义私人扩展以携带这些社区独有的信息。
每个扩展包含对象标识符,指示其是关键还是非关键扩展的临界性设置,以及ASN.1 DER编码值。 其ASN.1的定义是:
Extension ::= SEQUENCE { extnId OBJECT IDENTIFIER, critical BOOLEAN DEFAULT FALSE, extnValue OCTET STRING -- contains a DER encoding of a value -- of the type registered for use with -- the extnId object identifier value }
该接口旨在提供对单个扩展的访问,而不像
X509Extension
更适合访问一组扩展。- 从以下版本开始:
- 1.7
-
-
方法摘要
所有方法 接口方法 抽象方法 Modifier and Type 方法 描述 void
encode(OutputStream out)
生成扩展的DER编码,并将其写入输出流。String
getId()
获取扩展的对象标识符。byte[]
getValue()
获取扩展程序的DER编码值。boolean
isCritical()
获取扩展的临界值设置。
-
-
-
方法详细信息
-
getId
String getId()
获取扩展的对象标识符。- 结果
- 对象标识符作为字符串
-
isCritical
boolean isCritical()
获取扩展的临界值设置。- 结果
- 如果这是一个关键的扩展,则为true。
-
getValue
byte[] getValue()
获取扩展程序的DER编码值。 注意,这是编码为OCTET STRING的字节。 它不包括OCTET STRING标签和长度。- 结果
-
扩展值的副本,如果没有扩展值,
null
。
-
encode
void encode(OutputStream out) throws IOException
生成扩展的DER编码,并将其写入输出流。- 参数
-
out
- 输出流 - 异常
-
IOException
- 编码或输出错误。 -
NullPointerException
- 如果out
是null
。
-
-