要約
ASN.1 のオブジェクト識別子を表すクラス。
* ITU-T X.660 https://www.itu.int/rec/T-REC-X.660/en
目次
継承しているメソッド
- OpenSSL::ASN1::Primitiveから継承しているメソッド
- OpenSSL::ASN1::ASN1Dataから継承しているメソッド
特異メソッド
new(value) -> OpenSSL::ASN1::ObjectId
[permalink][rdoc][edit]new(value, tag, tagging, tag_class) -> OpenSSL::ASN1::ObjectId
-
ASN.1 のオブジェクト識別子を表わす OpenSSL::ASN1::ObjectId のオブジェクトを生成します。
value としては、ドット区切り数字表記、short name、long name の文字列のをいずれかを渡します。
value 以外の引数を省略した場合はタグクラスは :UNIVERSAL、タグ は OpenSSL::ASN1::OBJECT となります。
例:
require "openssl" include OpenSSL p ASN1::ObjectId.new("1.2.840.10040.4.3").long_name # => "dsaWithSHA1" p ASN1::ObjectId.new("dsaWithSHA1").oid # => "1.2.840.10040.4.3"
- [PARAM] value:
- ASN.1 オブジェクト識別子を表す文字列
- [PARAM] tag:
- タグ番号
- [PARAM] tagging:
- タグ付けの方法(:IMPLICIT もしくは :EXPLICIT)
- [PARAM] tag_class:
- タグクラス(:UNIVERSAL, :CONTEXT_SPECIFIC, :APPLICATION, :PRIVATE のいずれか)
register(oid, short_name, long_name) -> true
[permalink][rdoc][edit]-
オブジェクト識別子に対応する名前(short name と long name)を OpenSSLの内部テーブルに登録します。
登録した名前は OpenSSL::X509::Extension などで利用できるようになります。
例:
require "openssl" OpenSSL::ASN1::ObjectId.register( "2.5.29.9", "subjectDirAttrs", "X509v3 Subject Directory Attributes") p OpenSSL::ASN1::ObjectId.new("2.5.29.9").long_name # => "X509v3 Subject Directory Attributes"
- [PARAM] oid:
- 登録する識別子(ドット区切り数字表記の文字列)
- [PARAM] short_name:
- short nameとして登録する文字列
- [PARAM] long_name:
- long nameとして登録する文字列
- [EXCEPTION] OpenSSL::ASN1::ASN1Error:
- 登録に失敗した場合に発生します。
インスタンスメソッド
ln -> String | nil
[permalink][rdoc][edit]long_name -> String | nil
-
オブジェクト識別子に対応する long name を返します。
例:
require "openssl" oid = OpenSSL::ASN1::ObjectId.new("subjectAltName") p oid.ln #=> "X509v3 Subject Alternative Name"
[SEE_ALSO] OpenSSL::ASN1::ObjectId#sn
oid -> String
[permalink][rdoc][edit]-
オブジェクト識別子のドット区切り数値を文字列で返します。
例:
require "openssl" oid = OpenSSL::ASN1::ObjectId.new("subjectAltName") p oid.oid #=> "2.5.29.17"
- [EXCEPTION] OpenSSL::ASN1::ASN1Error:
- オブジェクト識別子名が未知である場合に発生します
sn -> String | nil
[permalink][rdoc][edit]short_name -> String | nil
-
オブジェクト識別子に対応する short name を返します。
例:
require "openssl" oid = OpenSSL::ASN1::ObjectId.new("subjectAltName") p oid.sn #=> "subjectAltName"
[SEE_ALSO] OpenSSL::ASN1::ObjectId#ln