- Removed the dependency on the collection package (only used in tests)
- Fixes 73. You should be able to add more objects to a sequence and get encodedBytes between each add.
- Equals method needs to use deep list equality!
- Equals method was comparing unencoded object.
- Add equals and hashCode to ASN1Object
- Fixes #68
- Support the ability to parse objects with extended tags (more than one byte). #65
- Simplify by converting ASN1Length to Dart records
- Make a number of fields
final
that should not be changed. - Add types to a few members.
- Remove nullability from a field fields.
- Require Dart 3.0
- Fix null assertion when accessing valueBytes before encodedBytes.
- Reverted parsing of APPLICATION tags to the older behavior. If the constructed bit is set, the tag is parsed as an ASN1Sequence. The recent updates broke LDAP ASN1 parsing.
- Adds classes to handle non primitive classes: ASN1Application,ASN1ContextSpecific, ASN1Private.
- This is a potential change in behavior for consumers that expect some of these classes to be parsed as primitive or sequence types. See [README.md]
- The
encodeApplicationTagsAsObject
option on ASN1Parser has been dropped as it is now the default. Consumers should reparse bytes they know to be a sequence, etc.
- Fix #62. Allow context specific tags to be cast to an asn1 sequence.
- Fix #57
- Fix #61. Adds a flag to the parser
encodeApplicationTagsAsObject
that will force APPLICATION objects to be encoded as ASN1Objects, skipping any attempt to create sequences.
- fix: Use the correct value for
unusedBits
inASN1BitString.fromBytes
- Add optional flag whether to relax parsing, off by default, for backwards-compatibility
- Add ASN1BMPString support
- Better toString() for ASN1ObjectIdentifier
- Add ASN1NumericString support
- Bumped to 1.0.0 as this is now null safe
- Code cleanup
- Requires Dart 2.12
- Enable null-safety
- Allow OID octets to be 0
- Fix ASN1Integer.toString() typo
- Add ASN1IpAddress object based on ASN1OctetString
- Add tests for ASN1IpAddress
- Allow parsing of unrecognized application tags into generic ASN1Objects
- Fix parser test filename typo
- Add new tag tests
- Improve object identifier tests
- Fix ASN1ObjectIdentifier static methods fromBytes() and fromComponents()
- Add new object identifiers
- Fix ASN1Object.preEncoded bytes range
- Add unit tests
- Add ASN1TeletextString Parser
- Add unit tests
- Small fix for the ASN1GeneralizedTime parser
- Add sha1WithRSAEncryption object identifier
- Add ASN1GeneralizedTime Parser
- Add unit tests
- Fix all linter warnings
- Add businessCategory object identifier
- Add DN for subjectAltName
- Merged #37. Improved length computing in the ASN1Parser.
- Added new unit tests.
- Merged #36. Improved length computing in the ASN1Parser.
- Merged #34. Added example
- Merged #32. Update length in asn1 parser.
- Merged #31. Improve fromBytes. Logic from Java Bouncy Castle.
Merged #30
- Add IA5String
- Add associated tests
- Make sure parser handles IA5 and UT8 String
- Add large test case with PEM Certificate that includes IA5 and UTF8 Strings
- Cleanup README
Merged #29
- Expand AS1NNull to accept tag
- Associated test cases
- Added David Janes as author
Merged #28
Add ASN1UTF8String
Merged #27
Updates to ASN1ObjectIdentifier to:
- allow creation from dotted number lists
- allow creation from dotted number strings
- allow names to be registered, for shorthands
- allow bulk name registration
- commonly used names (obviously, what this is could be expanded)
Fixed #26
Add AS1Integer.fromInt factory method
- Convert use of BigInteger to dart SDK BigInt
- Updates for dart 2
- Added
contentBytes()
getter - Removed Int64List dependency and use bignum's BigInteger instead