UNPKG

2.31 kBJavaScriptView Raw
1var assert = require('assert');
2var rfc2560 = require('..');
3
4var Buffer = require('buffer').Buffer;
5
6describe('asn1.js RFC2560', function() {
7 it('should decode OCSP response', function() {
8 var data = new Buffer(
9 '308201d40a0100a08201cd308201c906092b0601050507300101048201ba308201b630' +
10 '819fa216041499e4405f6b145e3e05d9ddd36354fc62b8f700ac180f32303133313133' +
11 '303037343531305a30743072304a300906052b0e03021a050004140226ee2f5fa28108' +
12 '34dacc3380e680ace827f604041499e4405f6b145e3e05d9ddd36354fc62b8f700ac02' +
13 '1100bb4f9a31232b1ba52a0b77af481800588000180f32303133313133303037343531' +
14 '305aa011180f32303133313230343037343531305a300d06092a864886f70d01010505' +
15 '00038201010027813333c9b46845dfe3d0cb6b19c03929cdfc9181c1ce823929bb911a' +
16 'd9de05721790fcccbab43f9fbdec1217ab8023156d07bbcc3555f25e9e472fbbb5e019' +
17 '2835efcdc71b3dbc5e5c4c5939fc7a610fc6521d4ed7d2b685a812fa1a3a129ea87873' +
18 '972be3be54618ba4a4d96090d7f9aaa5f70d4f07cf5cf3611d8a7b3adafe0b319459ed' +
19 '40d456773d5f45f04c773711d86cc41d274f771a31c10d30cd6f846b587524bfab2445' +
20 '4bbb4535cff46f6b341e50f26a242dd78e246c8dea0e2fabcac9582e000c138766f536' +
21 'd7f7bab81247c294454e62b710b07126de4e09685818f694df5783eb66f384ce5977f1' +
22 '2721ff38c709f3ec580d22ff40818dd17f',
23 'hex');
24
25 var res = rfc2560.OCSPResponse.decode(data, 'der');
26 assert.equal(res.responseStatus, 'successful');
27 assert.equal(res.responseBytes.responseType, 'id-pkix-ocsp-basic');
28
29 var basic = rfc2560.BasicOCSPResponse.decode(
30 res.responseBytes.response,
31 'der'
32 );
33 assert.equal(basic.tbsResponseData.version, 'v1');
34 assert.equal(basic.tbsResponseData.producedAt, 1385797510000);
35 });
36
37 it('should encode/decode OCSP response', function() {
38 var encoded = rfc2560.OCSPResponse.encode({
39 responseStatus: 'malformed_request',
40 responseBytes: {
41 responseType: 'id-pkix-ocsp-basic',
42 response: 'random-string'
43 }
44 }, 'der');
45 var decoded = rfc2560.OCSPResponse.decode(encoded, 'der');
46 assert.equal(decoded.responseStatus, 'malformed_request');
47 assert.equal(decoded.responseBytes.responseType, 'id-pkix-ocsp-basic');
48 assert.equal(decoded.responseBytes.response.toString(), 'random-string');
49 });
50});