Skip to content

Commit

Permalink
Expand on DER ASCII's design goals slightly.
Browse files Browse the repository at this point in the history
  • Loading branch information
davidben committed Jan 9, 2017
1 parent 28353fa commit 51c2309
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 1 deletion.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ or BER
([Basic Encoding Rules](https://en.wikipedia.org/wiki/X.690#BER_encoding))
encodings of
[ASN.1](https://en.wikipedia.org/wiki/Abstract_Syntax_Notation_One)
structures.
structures and malformed variants of them.

It provides two tools, `ascii2der` and `der2ascii`, to convert DER ASCII to a
byte string and vice versa. To install them, run:
Expand Down
18 changes: 18 additions & 0 deletions language.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,23 @@
# DER ASCII Language Specification.

# DER ASCII was designed to represent valid DER and BER encodings in a
# human-readable and human-editable format. This gives it different properties
# from a typical ASN.1 printer.
#
# First, it is reversible, so all encoding variations must be represented in the
# language directly. Indefinite lengths print differently from definite lengths,
# BER constructed strings capture the entire tree of constructed and primitive
# elements, etc.
#
# Second, DER ASCII is intended to create both valid and invalid encodings. It
# has minimal knowledge of DER and BER, so elements in the input file may freely
# be replaced by raw byte strings. This means element contents do not have
# type-specific interpretations, and length-prefixes may not even correspond to
# tags.
#
# As a consequence, it is not a goal to abstract all details of DER and BER
# encoding from the user.
#
# This specification is a valid DER ASCII file.


Expand Down

0 comments on commit 51c2309

Please sign in to comment.