Author Archives: Ed

ASN1C v7.4 Release for 2020 Features Python Code Gen

We are pleased to announce a new major release of ASN1C for 2020, version 7.4.

The main new feature in this release is the capability to generate Python encoders and decoders. Currently supported is generation of code for the BER/DER and JSON (JER) encoding rules. The BER support includes options to generate forward encoders using indefinite lengths and also includes support for parsing and formatting 3GPP TS 32.297 headers as used in standard 3GPP CDR formats.

The new capability provides for generation of 100% Python code, not wrappers around platform-specific DLL’s or shared object files.

We plan to add support for PER, OER, and XER later this year.

In addition to Python, other features in the new release include:

  • Support for 5G ASN.1-based protocols as well as 5G NAS (3GPP TS 24.501)
  • Support for Visual Studio 2019 in the Windows versions
  • The capability to use ASN1C project files created with the GUI from the command-line

Further information can be found in the documentation on the product support page.

ASN1VE and ASN2TXT 3.0 Releases

We are proud to announce the release of new major versions of our ASN1VE and ASN2TXT products for 2020.

ASN1VE (ASN.1 Viewer / Editor) is a graphical user interface (GUI) tool for analyzing and editing ASN.1 encoded data. In the new 3.0 release, we have added the following capabilities:

  1. Added verification and encoding support for canonical encoding rules including DER, CER, and COER. The new capability checks for canonical rule violations within the encoded data. New messages can be created in these formats and existing messages transformed to ensure canonical form.
  2. The capability to import JSON or XML messages into Octet Encoding Rules (OER) format has been added.
  3. The capability to copy and paste tree nodes in element view has been added.
  4. Improved performance in loading and searching for data in large TAP3 and other CDR files.
  5. Changed the Windows installation procedure to first deinstall an existing version before trying to install a newer version.

ASN2TXT (ASN.1 to text translator) is a command-line tool for translating ASN.1 encoded data to and from various textual formats (XML, JSON, CSV). The main new capability added in the 3.0 release is a Python wrapper that makes it possible to use the DLL in Python applications.

Other new features for the two products are documented in the Release Notes and Change Log. See the Product Support Page at obj-sys.com/support.php

Viewing Huawei IMS CDR’s in ASN1VE (Updated)

This is an update to the original blog post on this topic done on June 28, 2011 at http://www.obj-sys.com/blog/?p=355. At the time, we did not have support in ASN1VE to process 3GPP TS 32.297 CDR headers, which is what the Huawei IMS CDR’s mentioned in the post contained. Although it is still possible to skip these headers, this is not reliable as the headers may be variable length. The updated procedure to view these CDR files with a newer version of ASN1VE is as follows:

  1. Open the CDR file. The “Assign All Items Wizard” popup window will appear:

    wizard1

    Select the “cdr” option (not “ber”) and click Next.

  2. The second wizard popup will appear:

    wizard1

    On this popup, check the “3GPP TS 32.297 Headers” radio button and click Next.

The normal procedure for assigning an ASN.1 schema file can then be followed from that point forward. The result will be the display of the CDR file with the headers fully decoded.

An example of this can be found in the sample/ts32297 directory within an ASN1VE installation.

New XBinder Release

We are pleased to announce the release of XBinder 2.6.1. XBinder is an XML schema code generation tool (also commonly known as an XML data-binding application) that generates C/C++, Java, and C# code to encode/decode schema instances in XML or JSON.

This is primarily a maintenance release providing bug fixes and improvements accumulated over the past year. One significant new feature that was added was support for Visual Studio 2019. For further details on fixes, please refer to the change log at https://www.obj-sys.com/support/change-log-xbinder-2.6.php.

A free 30-day trial may be downloaded from the following URL:

https://www.obj-sys.com/products/xbinder/download.php

New ASN1VE and ASN2TXT releases for 2019

New major releases of our ASN1VE and ASN2TXT products are now available. The primary new feature added to each is support for the new ASN.1 JSON Encoding Rules (JER) as documented in the ITU-T X.697 standard that was made public last fall. ASN1VE now has a JSON tab that shows the JSON encoding for any binary message type. In addition, the Import and Export options under the File pulldown menu allow export to, or importing from JSON. ASN2TXT support translations in both directions (binary -> JSON and JSON -> binary).

Other improvements to ASN1VE included the following:

  • Added the capability to display and edit the contents of OCTET or BIT STRING types with contents constraints (CONTAINING constructs) using the inner contained type.
  • Added level to the tag search dialog to make it possible to search for tags at a given level instead of at any level.
  • Improved PDU tag matching for BER/DER messages with UNIVERSAL tags (common in ASN.1 used in security specifications). This makes it easier to find the PDU type of a message if it is not known.
  • Changed the Windows and Mac installation procedures to install the executable files in the Program Files area and sample programs in the User area. On Windows, sample programs are now copied to the user’s Documents directory under the ASN1VE folder.

For ASN2TXT, the capability do tag path filtering was another new feature that was added. This makes it possible to find and output elements in textual form if the full ASN.1 specification is not available. This capability was further described in this blog post.

Further details can be found in the release notes:

ASN1VE Release Notes
ASN2TXT Release Notes