deno.land / std@0.166.0 / node / _crypto / crypto_browserify / asn1.js / mod.js

نووسراو ببینە
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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
// Copyright 2018-2022 the Deno authors. All rights reserved. MIT license.// Copyright 2017 Fedor Indutny. All rights reserved. MIT license.
import bignum from "../bn.js/bn.js";import { Node } from "./base/node.js";import { DecoderBuffer, EncoderBuffer } from "./base/buffer.js";import { Reporter } from "./base/reporter.js";import { DEREncoder } from "./encoders/der.js";import { PEMEncoder } from "./encoders/pem.js";import { DERDecoder } from "./decoders/der.js";import { PEMDecoder } from "./decoders/pem.js";import * as der from "./constants/der.js";
export const base = { DecoderBuffer, EncoderBuffer, Node, Reporter,};export const encoders = { der: DEREncoder, pem: PEMEncoder };export const decoders = { der: DERDecoder, pem: PEMDecoder };export const constants = { der };export { bignum };
export function define(name, body) { return new Entity(name, body);}
function Entity(name, body) { this.name = name; this.body = body;
this.decoders = {}; this.encoders = {};}
Entity.prototype._createNamed = function createNamed(Base) { const name = this.name;
function Generated(entity) { this._initNamed(entity, name); } // inherits(Generated, Base); Generated.prototype = Object.create(Base.prototype, { constructor: { value: Generated, enumerable: false, writable: true, configurable: true, }, }); Generated.prototype._initNamed = function _initNamed(entity, name) { Base.call(this, entity, name); }; return new Generated(this);};
Entity.prototype._getDecoder = function _getDecoder(enc) { enc = enc || "der"; // Lazily create decoder // deno-lint-ignore no-prototype-builtins if (!this.decoders.hasOwnProperty(enc)) { this.decoders[enc] = this._createNamed(decoders[enc]); } return this.decoders[enc];};
Entity.prototype.decode = function decode(data, enc, options) { return this._getDecoder(enc).decode(data, options);};
Entity.prototype._getEncoder = function _getEncoder(enc) { enc = enc || "der"; // Lazily create encoder // deno-lint-ignore no-prototype-builtins if (!this.encoders.hasOwnProperty(enc)) { this.encoders[enc] = this._createNamed(encoders[enc]); } return this.encoders[enc];};
Entity.prototype.encode = function encode(data, enc, /* internal */ reporter) { return this._getEncoder(enc).encode(data, reporter);};
export default { base, bignum, constants, decoders, define, encoders,};
std

Version Info

Tagged at
a year ago