rasn1 0.4.0 has been released.
* home: <https://github.com/sdaubert/rasn1>
* bugs: <https://github.com/sdaubert/rasn1/issues>
* doc: <https://github.com/sdaubert/rasn1/wiki>
RASN1 is a pure ruby ASN.1 library. RASN1 helps to create ASN.1 parsers
and encoders.
The RASN1::Model class is the entry point to create a parser/encoder.
Simple example:
From ASN1. definition:
Record ::= SEQUENCE {
id INTEGER,
room [0] INTEGER OPTIONAL,
house [1] INTEGER DEFAULT 0
}
a model may be defined this way:
class Record < RASN1::Model
sequence :record,
content: [integer(:id),
integer(:room, implicit: 0, optional: true),
integer(:house, implicit: 1, default: 0)]
end
Then, parsing is as simple as:
record = Record.parse(der_string)
record[:id] # => RASN1::Integer
record[:id].value # => Integer
And encoding:
record[:id].value = 16_543_154
record.to_der # => String
Changes:
### 0.4.0 / 2017-12-03
* remove support for Ruby 2.1
* add #inspect to RASN1::Model and RASN1::Types::* classes
* add a wiki : https://github.com/sdaubert/rasn1/wiki