-
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
-
-
方法摘要
所有方法 实例方法 抽象方法 变量和类型 方法 描述 void
encode(OutputStream out)
生成扩展的DER编码并将其写入输出流。String
getId()
获取扩展的对象标识符。byte[]
getValue()
获取扩展的DER编码值。boolean
isCritical()
获取扩展的关键性设置。
-
-
-
方法详细信息
-
getId
String getId()
获取扩展的对象标识符。- 结果
- 对象标识符为String
-
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
。
-
-