summaryrefslogtreecommitdiff
path: root/ext/node/polyfills/_crypto/crypto_browserify/asn1.js/constants/der.js
blob: 807a978641616b66137b1cc6eec80bfcf099fff5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
// Copyright 2018-2023 the Deno authors. All rights reserved. MIT license.
// Copyright 2017 Fedor Indutny. All rights reserved. MIT license.

// Helper
function reverse(map) {
  const res = {};

  Object.keys(map).forEach(function (key) {
    // Convert key to integer if it is stringified
    if ((key | 0) == key) {
      key = key | 0;
    }

    const value = map[key];
    res[value] = key;
  });

  return res;
}

export const tagClass = {
  0: "universal",
  1: "application",
  2: "context",
  3: "private",
};
export const tagClassByName = reverse(tagClass);

export const tag = {
  0x00: "end",
  0x01: "bool",
  0x02: "int",
  0x03: "bitstr",
  0x04: "octstr",
  0x05: "null_",
  0x06: "objid",
  0x07: "objDesc",
  0x08: "external",
  0x09: "real",
  0x0a: "enum",
  0x0b: "embed",
  0x0c: "utf8str",
  0x0d: "relativeOid",
  0x10: "seq",
  0x11: "set",
  0x12: "numstr",
  0x13: "printstr",
  0x14: "t61str",
  0x15: "videostr",
  0x16: "ia5str",
  0x17: "utctime",
  0x18: "gentime",
  0x19: "graphstr",
  0x1a: "iso646str",
  0x1b: "genstr",
  0x1c: "unistr",
  0x1d: "charstr",
  0x1e: "bmpstr",
};
export const tagByName = reverse(tag);