TOP

What Can ASN-1Step Do?

Applies to: ASN-1Step 8.2

ASN-1Step can
  • Syntax check your ASN.1 specification.
  • Encode any valid value reference into BER, CER, DER, PER, UPER, OER, C-OER, XER, CXER, E-XER, JSON, or CSV format.
  • Decode any valid BER, CER, DER, PER, UPER, OER, C-OER, XER, CXER, E-XER, JSON, or CSV encoding given its ASN.1 type definition.
  • Generate test encodings for all value notation in the input ASN.1 specification.
  • Re-encode messages from one BER, CER, DER, PER, UPER, OER, C-OER, XER, CXER, E-XER, JSON, or CSV encoding format into another.
  • Convert encoded messages to ASN.1 value notation format and save it in a text file.
  • Display a detailed analysis of a PER encoding.
ASN.1 Studio (included with Windows, Linux, and macOS versions only) can
  • Display any PDU message saved in a file encoded using any standard encoding rules in a graphical expandable/collapsible tree-like view.
  • Use a tree-like view to graphically modify values of any field in a message and save the resultant value to an encoding file using any of the available encoding rules.
  • Graphically create any arbitrary ASN.1 value for any valid PDU type.

Check Syntax

The ASN-1Step syntax checker is similar to the syntax checker found in the commercial version of the OSS ASN.1 Compiler. Thus, it fully conforms to the ASN.1:1990, ASN.1:2002, ASN.1:2008, and ASN.1:2015 standards.

To check the syntax of an ASN.1 specification using command-line ASN-1Step, specify an .asn text file on the asn1step command-line along with the -pedantic option.

You can also check syntax in ASN.1 Studio by creating an ASN.1 project and adding files to it. Next, select Project > Settings > ASN.1 compiler > ASN.1 syntax checking and check the boxes that correspond to the -syntaxOnly and -pedantic options. Finally, click the Compile button to start syntax checking. For more details, see the ASN.1 Studio Help documentation.

Encode Values

Use ASN-1Step to encode ASN.1 value notation placed inside an .asn file. The resulting BER, CER, DER, PER, UPER, OER, C-OER, XER, CXER, E-XER, JSON, or CSV encoding is written to a binary or text file of your choice.

When using command-line ASN-1Step, the filename extension that you specify for the output encodings file determines which of the supported encoding rules is used. Refer to the -encodeValue option for more details.

When using ASN.1 Studio, you have the flexibility to select not only the file name and its location, but also any available encoding rules. For more details, see the ASN.1 Studio Help documentation.

Decode Encodings

ASN-1Step can decode any valid BER, CER, DER, PER, UPER, OER, C-OER, XER, CXER, E-XER, JSON, or CSV encoding in a binary or text file that corresponds to an ASN.1 definition in an .asn file.

When using command-line ASN-1Step, the resulting human-readable decoded data can be written either to standard output or to a file. The filename extension of the input encoding file determines which of the supported encoding rules is used. Refer to the -decodePdu option for more details.

When using ASN.1 Studio, a similar option is available using the context menu. Just create an ASN.1 project and add the .asn files and the file to be decoded to the project. Next, right-click the filename and select the Decode to Trace option. For more details, see the ASN.1 Studio Help documentation.

Analyze PER Encodings

The ASN-1Step PER encoding analyzer function is similar to the ossPrintPER() utility. This analyzer is automatically invoked every time you decode a PER encoding.

With ASN.1 Studio, it's easy to analyze PER encodings in the ASN.1 Value Editor because it can expand and collapse the details of nested PER encodings. You can also synchronize views of ASN.1 values in the PDU Value table with views of the matching PER encodings details in the Encoding Viewer, as shown in the image below. See the ASN.1 Studio Help documentation for more details.

Test Value Reference Encoding and Decoding

Use the -test option in command-line ASN-1Step to display the result of encode and decode operations for any valid ASN.1 value reference whose type is a PDU included in the ASN.1 syntax. This offers a quick and easy way to analyze application messages.

When using ASN.1 Studio, a similar option is available via a toolbar button. Just create an ASN.1 project, add the .asn files with ASN.1 value references to the project, and click the Test All Value References button to begin testing. For more details, see the ASN.1 Studio Help documentation.

Convert to and from Comma-Separated Values (CSV) Format

ASN-1Step supports conversion of ASN.1 messages to and from CSV format. To represent a structured ASN.1 message in CSV format, ASN-1Step flattens it into a fixed number of columns by recursively expanding complex SET, SEQUENCE, and CHOICE types up to the innermost fields with simple ASN.1 types. See Converting to and from CSV Format for a full discussion.

View and Edit ASN.1 Values Graphically with ASN.1 Studio

Use ASN.1 Studio to graphically view and edit any arbitrary ASN.1 value for any valid PDU type. This is a great feature for those people who find ASN.1 value notation difficult to use or too verbose to write.

The screenshot below shows various components of the ASN.1 Studio main window with the encoded message from the file myCard.ber opened in the ASN.1 Value Editor to the right. Messages can be graphically modified and displayed in different encoding formats in the Encoding Viewer pane at the bottom of the editor. Refer to the ASN.1 Studio Help documentation for more details.


This documentation applies to release 8.2 and later of ASN-1Step®. For earlier versions, consult the PDF manual available in your product installation.

Copyright © 2017 OSS Nokalva, Inc. All rights reserved.
No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form or by any means electronic, mechanical, photocopying, recording or otherwise, without the prior permission of OSS Nokalva, Inc.
Every distributed copy of ASN-1Step is associated with a specific license and related unique license number. That license determines, among other things, what functions of ASN-1Step are available to you.