SmartASN1

Yet another asn1 compiler written in C++. It generates pretty good C++ code and javascript code. The initial purpose was to be able to create a csta protocol analyser. This goal has been reached. Many compilers already provide BER/PER/XER encoding/decoding. That lead me to explore another area and support the following features are supported:

  • Decoding BER / Encoding still needs some work.
  • Parsing ROSE and generating appropriate c++ code. Checks defined syntax (to make a differents with freely available compilers)
  • ASN1 1994 syntax supported
  • Automatic tagging
  • Uses C++ namespace
  • nested and un nested structure are possible.

Language mapping

  • C++
  • javascript

ASN1 Standards

  • X.680 ASN1 Syntax (2008 spec under work)
  • X.681 Information Object Specification
  • X.682 Constraint Specification (Parsing works find)
  • X.683 Parameterization of ASN1 syntax (Parsing supported)

ASN1 Encoding Standards

  • X.690 BER decoging / encoding except REAL types. INTEGER only 4 bytes max.
  • JSON encoding / decoding underwork
  • X.696 OER encoding rules planned

List of parsed syntaxes

  • H323
  • megago
  • H248
  • TAP
  • CSTA phase 2 and CSTA phase 3
  • RRC
  • ACSE-1
  • CMIP-1
  • PKIX-88
Send comments or suggestion to :