initial commit
This commit is contained in:
17
server/node_modules/jose/dist/node/esm/jws/compact/sign.js
generated
vendored
Normal file
17
server/node_modules/jose/dist/node/esm/jws/compact/sign.js
generated
vendored
Normal file
@@ -0,0 +1,17 @@
|
||||
import { FlattenedSign } from '../flattened/sign.js';
|
||||
export class CompactSign {
|
||||
constructor(payload) {
|
||||
this._flattened = new FlattenedSign(payload);
|
||||
}
|
||||
setProtectedHeader(protectedHeader) {
|
||||
this._flattened.setProtectedHeader(protectedHeader);
|
||||
return this;
|
||||
}
|
||||
async sign(key, options) {
|
||||
const jws = await this._flattened.sign(key, options);
|
||||
if (jws.payload === undefined) {
|
||||
throw new TypeError('use the flattened module for creating JWS with b64: false');
|
||||
}
|
||||
return `${jws.protected}.${jws.payload}.${jws.signature}`;
|
||||
}
|
||||
}
|
||||
21
server/node_modules/jose/dist/node/esm/jws/compact/verify.js
generated
vendored
Normal file
21
server/node_modules/jose/dist/node/esm/jws/compact/verify.js
generated
vendored
Normal file
@@ -0,0 +1,21 @@
|
||||
import { flattenedVerify } from '../flattened/verify.js';
|
||||
import { JWSInvalid } from '../../util/errors.js';
|
||||
import { decoder } from '../../lib/buffer_utils.js';
|
||||
export async function compactVerify(jws, key, options) {
|
||||
if (jws instanceof Uint8Array) {
|
||||
jws = decoder.decode(jws);
|
||||
}
|
||||
if (typeof jws !== 'string') {
|
||||
throw new JWSInvalid('Compact JWS must be a string or Uint8Array');
|
||||
}
|
||||
const { 0: protectedHeader, 1: payload, 2: signature, length } = jws.split('.');
|
||||
if (length !== 3) {
|
||||
throw new JWSInvalid('Invalid Compact JWS');
|
||||
}
|
||||
const verified = await flattenedVerify({ payload, protected: protectedHeader, signature }, key, options);
|
||||
const result = { payload: verified.payload, protectedHeader: verified.protectedHeader };
|
||||
if (typeof key === 'function') {
|
||||
return { ...result, key: verified.key };
|
||||
}
|
||||
return result;
|
||||
}
|
||||
Reference in New Issue
Block a user