當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Ruby Primitive類用法及代碼示例

本文簡要介紹ruby語言中 OpenSSL::ASN1::Primitive類 的用法。

所有原始編碼的父類。屬性與 ASN1Data 相同,但添加了 tagging Primitive 值永遠不能以不定長度形式編碼,因此無法為 Primitive 及其子類設置indefinite_length 屬性。

Primitive 子類及其到 Ruby 類的映射

  • OpenSSL::ASN1::EndOfContent <=> value 總是 nil

  • OpenSSL::ASN1::Boolean <=> valuetruefalse

  • OpenSSL::ASN1::Integer <=> value 是一個 OpenSSL::BN

  • OpenSSL::ASN1::BitString <=> value String

  • OpenSSL::ASN1::OctetString <=> value String

  • OpenSSL::ASN1::Null <=> value 總是 nil

  • OpenSSL::ASN1::Object <=> value 是一個 String

  • OpenSSL::ASN1::Enumerated <=> value 是一個 OpenSSL::BN

  • OpenSSL::ASN1::UTF8String <=> value String

  • OpenSSL::ASN1::NumericString <=> value String

  • OpenSSL::ASN1::PrintableString <=> value String

  • OpenSSL::ASN1::T61String <=> value String

  • OpenSSL::ASN1::VideotexString <=> value String

  • OpenSSL::ASN1::IA5String <=> value String

  • OpenSSL::ASN1::UTCTime <=> value Time

  • OpenSSL::ASN1::GeneralizedTime <=> value Time

  • OpenSSL::ASN1::GraphicString <=> value String

  • OpenSSL::ASN1::ISO64String <=> value String

  • OpenSSL::ASN1::GeneralString <=> value String

  • OpenSSL::ASN1::UniversalString <=> value String

  • OpenSSL::ASN1::BMPString <=> value String

OpenSSL::ASN1::BitString

附加屬性

unused_bits :如果底層 BIT STRING 的長度是 8 的倍數,則 unused_bits 為 0。否則 unused_bits 指示在 BitString 的 value 的最後一個八位字節中要忽略的位數。

OpenSSL::ASN1::ObjectId

注意:雖然 OpenSSL::ASN1::ObjectId.new 將分配一個新的 ObjectId ,但通常不會以這種方式分配,而是從已解析的 ASN1 編碼中接收。

附加屬性

  • sn :在 中定義的短名稱。

  • ln : 中定義的長名稱。

  • oid :作為 String 的對象標識符,例如“1.2.3.4.5”

  • short_namesn 的別名。

  • long_nameln 的別名。

例子

使用 OpenSSL::ASN1::EndOfContent 的 Exception ,每個 Primitive 類構造函數至少采用一個參數 value

創建EndOfContent

eoc = OpenSSL::ASN1::EndOfContent.new

創建任何其他 Primitive

prim = <class>.new(value) # <class> being one of the sub-classes except EndOfContent
prim_zero_tagged_implicit = <class>.new(value, 0, :IMPLICIT)
prim_zero_tagged_explicit = <class>.new(value, 0, :EXPLICIT)

相關用法


注:本文由純淨天空篩選整理自ruby-lang.org大神的英文原創作品 Primitive類。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。