Skip to content

Commit 7378a87

Browse files
committed
Removing dependency on base64url module
1 parent b7117ca commit 7378a87

File tree

1 file changed

+6
-7
lines changed

1 file changed

+6
-7
lines changed

lib/mcapi/crypto/jwe-crypto.js

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ const forge = require('node-forge');
22
const fs = require('fs');
33
const utils = require('../utils/utils');
44
const nodeCrypto = require('crypto');
5-
const base64url = require('base64url');
65

76
/**
87
* @class JWE Crypto
@@ -41,7 +40,7 @@ function JweCrypto(config) {
4140
"enc": "A256GCM"
4241
};
4342

44-
const encodedJweHeader = base64url.encode(JSON.stringify(jweHeader));
43+
const encodedJweHeader = Buffer.from(JSON.stringify(jweHeader)).toString('base64url');
4544

4645
const secretKey = nodeCrypto.randomBytes(32);
4746
const secretKeyBuffer = Buffer.from(secretKey, 'binary');
@@ -63,10 +62,10 @@ function JweCrypto(config) {
6362
cipherText += cipher.final('base64');
6463
const authTag = cipher.getAuthTag().toString("base64");
6564

66-
const encodedEncryptedSecretKey = base64url.encode(encryptedSecretKey, 'binary');
67-
const encodedIv = base64url.encode(iv, 'binary');
68-
const encodedEncryptedText = base64url.encode(cipherText, "base64");
69-
const encodedAuthTag = base64url.encode(authTag, "base64");
65+
const encodedEncryptedSecretKey = Buffer.from(encryptedSecretKey, 'binary').toString('base64url');
66+
const encodedIv = Buffer.from(iv, 'binary').toString('base64url');
67+
const encodedEncryptedText = Buffer.from(cipherText, "base64").toString('base64url');
68+
const encodedAuthTag = Buffer.from(authTag, "base64").toString('base64url');
7069

7170
const encryptedData = serialize(encodedJweHeader, encodedEncryptedSecretKey, encodedIv, encodedEncryptedText, encodedAuthTag);
7271
return { [this.encryptedValueFieldName] : encryptedData};
@@ -84,7 +83,7 @@ function JweCrypto(config) {
8483
}
8584

8685
const jweTokenParts = deSerialize(encryptedData);
87-
const jweHeader = base64url.decode(jweTokenParts[0]);
86+
const jweHeader = Buffer.from(jweTokenParts[0], 'base64url').toString('utf8');
8887
const encryptedSecretKey = Buffer.from(jweTokenParts[1], 'base64url');
8988
const iv = Buffer.from(jweTokenParts[2], 'base64url');
9089
const encryptedText = Buffer.from(jweTokenParts[3], 'base64url');

0 commit comments

Comments
 (0)