The OSS ASN.1 Tools for C# is a development tool for building C# applications using ASN.1. It supports the ASN.1 syntax as described by the ASN.1:1990 through ASN.1:2021 standards and the following encoding rules:

  • Basic Encoding Rules (BER)
  • Packed Encoding Rules (Aligned: PER, Unaligned: UPER)
  • Octet Encoding Rules (Basic: OER, Canonical: COER)
  • JSON Encoding Rules (JSON)
  • Distinguished Encoding Rules (DER)
  • XML Encoding Rules (Basic: XER, Canonical: CXER, Extended: E-XER)

The OSS ASN.1 Tools for C# is designed to meet your needs and comes with customization features which include command-line options and compiler directives.


The OSS ASN.1 Tools for C# package includes the following components:

The ASN.1/C# compiler is an executable that takes one or more ASN.1 schema files as input and generates C# code that

  • Represents the ASN.1 schema types (PDUs/messages).
  • Provides encoding/decoding routines for the types defined in the schema.
  • Provides helper functionality for validation, printing and more.

The Codec runtime library is a .NET assembly that provides schema-independent encoder/decoder functionality, base classes for ASN.1 representation, and other utility objects.

ASN.1 Studio is a visual environment (IDE) that speeds up ASN.1 development by featuring ASN.1 project workflow, intelligent editing and compilation, and interactive analysis of ASN.1 messages. ASN.1 Studio provides rich schema and encoding editors, syntax checking, and code generation.

You can use ASN.1 Studio to:

  • ASN.1-compile.
  • Work with ASN.1 encoded data.
  • Build different types of ASN.1 applications instantly.

To read more about its features, see ASN.1 Studio.

Also, you can use the OSS ASN.1 Tools for C# to develop applications with .NET languages such as VB.NET by compiling the generated C# code into a .NET assembly (a DLL) that can be invoked from any .NET language.

The following diagram shows an overview of the ASN.1 Development workflow:

ASN.1 Development Workflow

ASN.1 Development Workflow


This documentation applies to the OSS® ASN.1 Tools for C# release 5.3 and later.

Copyright © 2024 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 the OSS® ASN.1 Tools for C# is associated with a specific license and related unique license number. That license determines, among other things, what functions of the OSS ASN.1 Tools for C# are available to you.