Downloads of v 1.4.1:


Last Update:

21 Dec 2019

Package Maintainer(s):

Software Author(s):

  • Vadims Podāns


ASN.1 editor display edit format convert ASN.1-encoded data

ASN.1 Editor

  • 1
  • 2
  • 3

1.4.1 | Updated: 21 Dec 2019



Downloads of v 1.4.1:



Software Author(s):

  • Vadims Podāns

  • 1
  • 2
  • 3
ASN.1 Editor 1.4.1

  • 1
  • 2
  • 3

All Checks are Passing

3 Passing Tests

Validation Testing Passed

Verification Testing Passed


Scan Testing Successful:

No detections found in any package files

Learn More

Deployment Method: Individual Install, Upgrade, & Uninstall

To install ASN.1 Editor, run the following command from the command line or from PowerShell:


To upgrade ASN.1 Editor, run the following command from the command line or from PowerShell:


To uninstall ASN.1 Editor, run the following command from the command line or from PowerShell:


Deployment Method:

📝 NOTE: This applies to both open source and commercial editions of Chocolatey.

1. Enter Your Internal Repository Url

(this should look similar to

2. Setup Your Environment

1. Ensure you are set for organizational deployment

Please see the organizational deployment guide

2. Get the package into your environment

  • Open Source or Commercial:
    • Proxy Repository - Create a proxy nuget repository on Nexus, Artifactory Pro, or a proxy Chocolatey repository on ProGet. Point your upstream to Packages cache on first access automatically. Make sure your choco clients are using your proxy repository as a source and NOT the default community repository. See source command for more information.
    • You can also just download the package and push it to a repository Download

3. Copy Your Script

choco upgrade asn1editor -y --source="'INTERNAL REPO URL'" [other options]

See options you can pass to upgrade.

See best practices for scripting.

Add this to a PowerShell script or use a Batch script with tools and in places where you are calling directly to Chocolatey. If you are integrating, keep in mind enhanced exit codes.

If you do use a PowerShell script, use the following to ensure bad exit codes are shown as failures:

choco upgrade asn1editor -y --source="'INTERNAL REPO URL'" 

Write-Verbose "Exit code was $exitCode"
$validExitCodes = @(0, 1605, 1614, 1641, 3010)
if ($validExitCodes -contains $exitCode) {
  Exit 0

Exit $exitCode

- name: Install asn1editor
    name: asn1editor
    version: '1.4.1'
    state: present

See docs at

chocolatey_package 'asn1editor' do
  action    :install
  source   'INTERNAL REPO URL'
  version  '1.4.1'

See docs at

cChocoPackageInstaller asn1editor
    Name     = "asn1editor"
    Version  = "1.4.1"
    Source   = "INTERNAL REPO URL"

Requires cChoco DSC Resource. See docs at

package { 'asn1editor':
  ensure   => '1.4.1',
  provider => 'chocolatey',
  source   => 'INTERNAL REPO URL',

Requires Puppet Chocolatey Provider module. See docs at

4. If applicable - Chocolatey configuration/installation

See infrastructure management matrix for Chocolatey configuration elements and examples.

This package was approved as a trusted package on 27 Aug 2020.


The code consist of two parts:

  1. ASN.1 parser library. This library I wrote, is very fast and memory efficient.
  2. Graphical User Interface provided by Windows Presentation Framework (WPF) with MVVM (Model-View-ViewModel) pattern.

Old tool has unacceptable slow performance. For example, it took about 7 minutes to open a 90kb certificate revocation list file. While, for my tool it is a matter of 2-3 seconds on the same hardware. Feel the difference.

Same look new quality

The new tool resembles WinForms tool visual behavior, so existing editor users will not have difficulties with new tool:


and comparing with previous tool:


Very similar, so existing editor users will not face problems while using my own (if they wish to use new editor).

Main Features

Main features in most are the same.

Dump Text Format data

You can view the selected node branch text dump by right-clicking the designated node and selecting “View Node Text”:


This window provides TreeView textual visualization. It defines four columns:

  • Offset – specifies the start offset of the specified structure;
  • Len – specifies the structure’s payload length in bytes;
  • LenByte – specifies how many bytes are required to store length bytes (including transitional length byte). I’m not sure whether it is necessary, maybe we need more interesting data?
    Tree View text visualizer with decoded primitive type value.
    You can save this information to a file and print, if necessary.

Hex data viewer


in previous tool, hex data viewer was a separate window. I decided to combine them in the same window. By default, hex viewer is collapsed and can be opened by toggling the button in the toolbar. Hex viewer panel contains two toggle buttons. They are used to hide hex address and ASCII data panes:


When you select node in the Tree View panel, corresponding bytes are highlighted in the hex viewer as follows:

  • Red – this color indicates tag byte
  • Green – this color indicates length bytes. This includes transitional byte (if any).
  • Black – this color indicates the payload bytes.

Node data editor

By double-clicking on a node (or selecting from tree node context menu), a node data editor is opened:


You can edit data for any primitive non-constructed type (except, NULL tag). Explicit value presentation depends on data type. For many types, textual value is displayed and allowed for input. However, not for all types there is encoder and decoder, so for certain types you will see raw hex view (and raw hex text should be inserted):


As already said, NULL and constructed types are not editable:


Note: node content editor applies restrictions for certain data types. For example, if you are editing numeric strict, the code verifies whether all characters in the text are valid for numeric string.

# Microsoft Public License (Ms-PL)

Copyright (c) 2019 Vadims Podans

This license governs use of the accompanying software. If you use the software, you accept this license. If you do not accept the license, do not use the software.

1. Definitions

The terms "reproduce," "reproduction," "derivative works," and "distribution" have the same meaning here as under U.S. copyright law.

A "contribution" is the original software, or any additions or changes to the software.

A "contributor" is any person that distributes its contribution under this license.

"Licensed patents" are a contributor's patent claims that read directly on its contribution.

2. Grant of Rights

(A) Copyright Grant- Subject to the terms of this license, including the license conditions and limitations in section 3, each contributor grants you a non-exclusive, worldwide, royalty-free copyright license to reproduce its contribution, prepare derivative works of its contribution, and distribute its contribution or any derivative works that you create.

(B) Patent Grant- Subject to the terms of this license, including the license conditions and limitations in section 3, each contributor grants you a non-exclusive, worldwide, royalty-free license under its licensed patents to make, have made, use, sell, offer for sale, import, and/or otherwise dispose of its contribution in the software or derivative works of the contribution in the software.

3. Conditions and Limitations

(A) No Trademark License- This license does not grant you rights to use any contributors' name, logo, or trademarks.

(B) If you bring a patent claim against any contributor over patents that you claim are infringed by the software, your patent license from such contributor to the software ends automatically.

(C) If you distribute any portion of the software, you must retain all copyright, patent, trademark, and attribution notices that are present in the software.

(D) If you distribute any portion of the software in source code form, you may do so only under this license by including a complete copy of this license with your distribution. If you distribute any portion of the software in compiled or object code form, you may only do so under a license that complies with this license.

(E) The software is licensed "as-is." You bear the risk of using it. The contributors give no express warranties, guarantees or conditions. You may have additional consumer rights under your local laws which this license cannot change. To the extent permitted under your local laws, the contributors exclude the implied warranties of merchantability, fitness for a particular purpose and non-infringement.
Verification is intended to assist the Chocolatey moderators and community
in verifying that this package's contents are trustworthy.
Package can be verified like this:
1. Download:
2. You can use one of the following methods to obtain the SHA256 checksum:
   - Use powershell function 'Get-FileHash'
   - Use Chocolatey utility 'checksum.exe'
   checksum type: sha256
   checksum32: 38f108a41d0c81f1ccbbba1a3c8bc1faceef718e4527846911b1665403d3fa45
   checksum64: 38f108a41d0c81f1ccbbba1a3c8bc1faceef718e4527846911b1665403d3fa45
File 'LICENSE.txt' is obtained from:
md5: E8025D53A3A29020AC1DBD820EF559A0 | sha1: 876045CBC46070458DF641C66BA817DF27CB1C64 | sha256: 38F108A41D0C81F1CCBBBA1A3C8BC1FACEEF718E4527846911B1665403D3FA45 | sha512: A39AB6802B24FE0F5545A26B0C4BE7F28B9BC9A635BA4B6331101DEEF5BBBA616A0C5F2137FCAB2A22A6AE2C38C07CB8338EBB9ED148F4A347BBA0DC09A4C930
$ErrorActionPreference = 'Stop';
$toolsDir   = "$(Split-Path -parent $MyInvocation.MyCommand.Definition)"

$packageArgs = @{
  packageName   = $env:ChocolateyPackageName
  destination   = "$toolsDir"
  file          = "$toolsDir\"

Get-ChocolateyUnzip @packageArgs

# Install start menu shortcut
$programs = [environment]::GetFolderPath([environment+specialfolder]::Programs)
$OSArchitectureWidth = Get-OSArchitectureWidth
$shortcutFilePath = Join-Path $programs "ASN.1 Editor.lnk"
$targetPath = Join-Path $toolsDir "Asn1Editor-v1.4.1\Asn1Editor-x${OSArchitectureWidth}.exe"
Install-ChocolateyShortcut -shortcutFilePath $shortcutFilePath -targetPath $targetPath
# Remove start menu shortcut
$programs = [environment]::GetFolderPath([environment+specialfolder]::Programs)
$shortcutFilePath = Join-Path $programs "ASN.1 Editor.lnk"
if (Test-Path $shortcutFilePath) { Remove-Item $shortcutFilePath }

Log in or click on link to see number of positives.

In cases where actual malware is found, the packages are subject to removal. Software sometimes has false positives. Moderators do not necessarily validate the safety of the underlying software, only that a package retrieves software from the official distribution point and/or validate embedded software against official distribution point (where distribution rights allow redistribution).

Chocolatey Pro provides runtime protection from possible malware.

Add to Builder Version Downloads Last Updated Status
ASN.1 Editor 1.4 112 Tuesday, December 17, 2019 Approved
ASN.1 Editor 189 Saturday, August 17, 2019 Approved
ASN.1 Editor 166 Saturday, May 4, 2019 Approved

This package has no dependencies.

Discussion for the ASN.1 Editor Package

Ground Rules:

  • This discussion is only about ASN.1 Editor and the ASN.1 Editor package. If you have feedback for Chocolatey, please contact the Google Group.
  • This discussion will carry over multiple versions. If you have a comment about a particular version, please note that in your comments.
  • The maintainers of this Chocolatey Package will be notified about new comments that are posted to this Disqus thread, however, it is NOT a guarantee that you will get a response. If you do not hear back from the maintainers after posting a message below, please follow up by using the link on the left side of this page or follow this link to contact maintainers. If you still hear nothing back, please follow the package triage process.
  • Tell us what you love about the package or ASN.1 Editor, or tell us what needs improvement.
  • Share your experiences with the package, or extra configuration or gotchas that you've found.
  • If you use a url, the comment will be flagged for moderation until you've been whitelisted. Disqus moderated comments are approved on a weekly schedule if not sooner. It could take between 1-5 days for your comment to show up.
comments powered by Disqus