15270821319 4e5c5d37f9 初步设计数据库,注册登录 10 mēneši atpakaļ
..
.github 4e5c5d37f9 初步设计数据库,注册登录 10 mēneši atpakaļ
lib 4e5c5d37f9 初步设计数据库,注册登录 10 mēneši atpakaļ
.eslintrc 4e5c5d37f9 初步设计数据库,注册登录 10 mēneši atpakaļ
.taprc.yml 4e5c5d37f9 初步设计数据库,注册登录 10 mēneši atpakaļ
CONTRIBUTING.md 4e5c5d37f9 初步设计数据库,注册登录 10 mēneši atpakaļ
LICENSE 4e5c5d37f9 初步设计数据库,注册登录 10 mēneši atpakaļ
README.md 4e5c5d37f9 初步设计数据库,注册登录 10 mēneši atpakaļ
coverage-map.js 4e5c5d37f9 初步设计数据库,注册登录 10 mēneši atpakaļ
index.js 4e5c5d37f9 初步设计数据库,注册登录 10 mēneši atpakaļ
index.test.js 4e5c5d37f9 初步设计数据库,注册登录 10 mēneši atpakaļ
package.json 4e5c5d37f9 初步设计数据库,注册登录 10 mēneši atpakaļ

README.md

@ldapjs/asn1

@ldapjs/asn1 is a library for encoding and decoding ASN.1 datatypes in pure JS. Currently BER encoding is supported.

Decoding

The following reads an ASN.1 sequence with a boolean.

const { BerReader, BerTypes } = require('@ldapjs/asn1')
const reader = new BerReader(Buffer.from([0x30, 0x03, 0x01, 0x01, 0xff]))

reader.readSequence()
console.log('Sequence len: ' + reader.length)
if (reader.peek() === BerTypes.Boolean)
console.log(reader.readBoolean())

Encoding

The following generates the same payload as above.

const { BerWriter } = require('@ldapjs/asn1');
const writer = new BerWriter();

writer.startSequence();
writer.writeBoolean(true);
writer.endSequence();

console.log(writer.buffer);

Installation

npm install @ldapjs/asn1

Bugs

See https://github.com/ldapjs/asn1/issues.