1<!DOCTYPE html>
2<html>
3<head>
4 <meta charset="US-ASCII">
5 <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
6 <title>ASN.1 JavaScript decoder</title>
7 <link rel="stylesheet" href="index.css" type="text/css">
8</head>
9<body>
10<h1>ASN.1 JavaScript decoder</h1>
11<div style="position: relative; padding-bottom: 1em;">
12 <div id="dump" style="position: absolute; right: 0px;"></div>
13 <div id="tree"></div>
14</div>
15<form>
16 <textarea id="area" style="width: 100%;" rows="8">
17MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIAwggHvMIIB
18WKADAgECAhAvoXazbunwSfREtACZZhlFMA0GCSqGSIb3DQEBBQUAMAwxCjAIBgNVBAMMAWEwHhcN
19MDgxMDE1MTUwMzQxWhcNMDkxMDE1MTUwMzQxWjAMMQowCAYDVQQDDAFhMIGfMA0GCSqGSIb3DQEB
20AQUAA4GNADCBiQKBgQCJUwlwhu5hR8X01f+vG0mKPRHsVRjpZNxSEmsmFPdDiD9kylE3ertTDf0g
21RkpIvWfNJ+eymuxoXF0Qgl5gXAVuSrjupGD6J+VapixJiwLXJHokmDihLs3zfGARz08O3qnO5ofB
22y0pRxq5isu/bAAcjoByZ1sI/g0iAuotC1UFObwIDAQABo1IwUDAOBgNVHQ8BAf8EBAMCBPAwHQYD
23VR0OBBYEFEIGXQB4h+04Z3y/n7Nv94+CqPitMB8GA1UdIwQYMBaAFEIGXQB4h+04Z3y/n7Nv94+C
24qPitMA0GCSqGSIb3DQEBBQUAA4GBAE0G7tAiaacJxvP3fhEj+yP9VDxL0omrRRAEaMXwWaBf/Ggk
251T/u+8/CDAdjuGNCiF6ctooKc8u8KpnZJsGqnpGQ4n6L2KjTtRUDh+hija0eJRBFdirPQe2HAebQ
26GFnmOk6Mn7KiQfBIsOzXim/bFqaBSbf06bLTQNwFouSO+jwOAAAxggElMIIBIQIBATAgMAwxCjAI
27BgNVBAMMAWECEC+hdrNu6fBJ9ES0AJlmGUUwCQYFKw4DAhoFAKBdMBgGCSqGSIb3DQEJAzELBgkq
28hkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTA4MTAxNTE1MDM0M1owIwYJKoZIhvcNAQkEMRYEFAAA
29AAAAAAAAAAAAAAAAAAAAAAAAMA0GCSqGSIb3DQEBAQUABIGAdB7ShyMGf5lVdZtvwKlnYLHMUqJW
30uBnFk7aQwHAmg3JnH6OcgId2F+xfg6twXm8hhUBkhHPlHGoWa5kQtN9n8rz3NorzvcM/1Xv9+0Ea
31l7NYSn2Hb0C0DMj2XNIYH2C6CLIHkmy1egzUvzsomZPTkx5nGDWm+8WHCjWb9A6lyrMAAAAAAAA=
32</textarea>
33 <br>
34 <label title="can be slow with big files"><input type="checkbox" id="wantHex" checked="checked"> with hex dump</label>
35 <input type="button" value="decode" onclick="decodeArea();">
36 <input type="button" value="clear" onclick="clearAll();">
37 <input type="file" id="file">
38</form>
39<div id="help">
40 <h2>Instructions</h2>
41 <p>This page contains a JavaScript generic ASN.1 parser that can decode any valid ASN.1 DER or BER structure whether Base64-encoded (raw base64, PEM armoring and <span class="tt">begin-base64</span> are recognized) or Hex-encoded. </p>
42 <p>This tool can be used online at the address <a href="http://lapo.it/asn1js/"><span class="tt">http://lapo.it/asn1js/</span></a> or offline, unpacking <a href="http://lapo.it/asn1js/asn1js.zip">the ZIP file</a> in a directory and opening <span class="tt">index.html</span> in a browser</p>
43 <p>On the left of the page will be printed a tree representing the hierarchical structure, on the right side an hex dump will be shown. <br>
44 Hovering on the tree highlights ancestry (the hovered node and all its ancestors get colored) and the position of the hovered node gets highlighted in the hex dump (with header and content in a different colors). <br>
45 Clicking a node in the tree will hide its sub-nodes (collapsed nodes can be noticed because they will become <i>italic</i>).</p>
46 <div class="license">
47 <h3>Copyright</h3>
48 <div class="ref"><p class="hidden">
49 ASN.1 JavaScript decoder<br>
50 Copyright © 2008-2018 Lapo Luchini <lapo@lapo.it><br>
51 <br>
52 Permission to use, copy, modify, and/or distribute this software for any
53 purpose with or without fee is hereby granted, provided that the above
54 copyright notice and this permission notice appear in all copies.<br>
55 <br>
56 THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
57 WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
58 MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
59 ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
60 WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
61 ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
62 OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
63 </p></div>
64 <p>ASN.1 JavaScript decoder Copyright © 2008-2018 <a href="http://lapo.it/">Lapo Luchini</a>; released as <a href="http://opensource.org/licenses/isc-license.txt">opensource</a> under the <a href="http://en.wikipedia.org/wiki/ISC_licence">ISC license</a>.</p>
65 </div>
66 <p><span class="tt">OBJECT IDENTIFIER</span> values are recognized using data taken from Peter Gutmann's <a href="http://www.cs.auckland.ac.nz/~pgut001/#standards">dumpasn1</a> program.</p>
67 <h3>Links</h3>
68 <ul>
69 <li><a href="http://lapo.it/asn1js/">official website</a></li>
70 <li><a href="http://idf.lapo.it/p/asn1js/">InDefero tracker</a></li>
71 <li><a href="https://github.com/lapo-luchini/asn1js">github mirror</a></li>
72 <li><a href="https://www.ohloh.net/p/asn1js">Ohloh code stats</a></li>
73 </ul>
74</div>
75<script type="text/javascript" src="hex.js"></script>
76<script type="text/javascript" src="base64.js"></script>
77<script type="text/javascript" src="oids.js"></script>
78<script type="text/javascript" src="int10.js"></script>
79<script type="text/javascript" src="asn1.js"></script>
80<script type="text/javascript" src="dom.js"></script>
81<script type="text/javascript" src="index.js"></script>
82</body>
83</html>