Skip to content

Commit 1e9eabf

Browse files
committed
Remove dead wrapKey module
- Delete the unreachable msrcryptoWrapKey module (src/wrapKey.js): its operations.register("wrapKey"/"unwrapKey") handlers were never dispatched, since executeOperation is only ever called with encrypt/decrypt/sign/verify/ digest/generateKey/deriveBits/importKey/exportKey. - Public subtle.wrapKey/unwrapKey remain fully functional via the standard exportKey+encrypt / decrypt+importKey composition in subtleInterface.js. - Drop src/wrapKey.js from the build.mjs fullBuild list. - Remove the now-orphaned keyToJwkBytes serializer and its stringToArray helper from src/jwk.js (keyToJwk/jwkToKey are unaffected). - Remove the dead wrapKey/unwrapKey entries from subtleParametersSets and the dead operationName === "wrapKey" branch in executeOperation.
1 parent 043cd08 commit 1e9eabf

4 files changed

Lines changed: 2 additions & 191 deletions

File tree

build.mjs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,6 @@ const fullBuild = [
7575
"src/subtle/workerManager.js",
7676
"src/subtle/subtleInterface.js",
7777
"src/subtle/tail.js",
78-
"src/wrapKey.js",
7978
"src/bundleTail.js",
8079
"src/subtle/promises.js",
8180
];

src/jwk.js

Lines changed: 0 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -20,21 +20,6 @@ var msrcryptoJwk = (function() {
2020

2121
var utils = msrcryptoUtilities;
2222

23-
function stringToArray(stringData) {
24-
25-
var result = [];
26-
27-
for (var i = 0; i < stringData.length; i++) {
28-
result[i] = stringData.charCodeAt(i);
29-
}
30-
31-
if (result[result.length - 1] === 0) {
32-
result.pop();
33-
}
34-
35-
return result;
36-
}
37-
3823
function getKeyType(keyHandle) {
3924

4025
var algType = keyHandle.algorithm.name.slice(0, 3).toUpperCase();
@@ -124,34 +109,6 @@ var msrcryptoJwk = (function() {
124109
return key;
125110
}
126111

127-
function keyToJwkBytes(keyHandle, keyData) {
128-
129-
var key = {};
130-
131-
key.kty = getKeyType(keyHandle);
132-
key.extractable = keyHandle.extractable;
133-
134-
// Using .pop to determine if a property value is an array.
135-
if (keyData.pop) {
136-
key.k = utils.toBase64(keyData, true);
137-
} else {
138-
// Convert the base64Url properties to byte arrays
139-
for (var property in keyData) {
140-
if (keyData[property].pop) {
141-
key[property] = utils.toBase64(keyData[property], true);
142-
}
143-
}
144-
}
145-
146-
if (keyHandle.algorithm.namedCurve) {
147-
key.crv = keyHandle.algorithm.namedCurve;
148-
}
149-
150-
var stringData = JSON.stringify(key, null, "\t");
151-
152-
return stringToArray(stringData);
153-
}
154-
155112
// 'jwkKeyData' is an array of bytes. Each byte is a charCode for a json key string
156113
function jwkToKey(keyData, algorithm, propsToArray) {
157114
// Convert the json string to an object
@@ -170,7 +127,6 @@ var msrcryptoJwk = (function() {
170127
}
171128

172129
return {
173-
keyToJwkBytes: keyToJwkBytes,
174130
keyToJwk: keyToJwk,
175131
jwkToKey: jwkToKey
176132
};

src/subtle/subtleInterface.js

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -51,9 +51,7 @@ var subtleParametersSets = {
5151
importKeyJwk: [4, 5, 0, 10, 11],
5252
exportKey: [0, 4, 1, 6, 7],
5353
deriveKey: [0, 1, 8, 6, 7],
54-
deriveBits: [0, 1, 9],
55-
wrapKey: [1, 1, 0],
56-
unwrapKey: [2, 0, 1, 6, 7]
54+
deriveBits: [0, 1, 9]
5755
};
5856

5957
// Looks up the stored key data for a given keyHandle
@@ -200,7 +198,7 @@ function executeOperation(operationName, parameterSet, keyFunc) {
200198

201199
// Run the crypto now if a buffer is supplied
202200
// else wait until process() and finish() are called.
203-
if (keyFunc || pc.buffer || operationName === "deriveBits" || operationName === "wrapKey") {
201+
if (keyFunc || pc.buffer || operationName === "deriveBits") {
204202
workerManager.runJob(op, pc);
205203
}
206204

src/wrapKey.js

Lines changed: 0 additions & 142 deletions
This file was deleted.

0 commit comments

Comments
 (0)