2
0
mirror of https://github.com/gchq/CyberChef synced 2025-12-18 09:13:43 +00:00

Merge remote-tracking branch 'upstream/esm' into esmconversion

Also removed substitute operation from legacy module
This commit is contained in:
Matt C
2018-05-14 18:09:21 +01:00
48 changed files with 4100 additions and 2523 deletions

View File

@@ -568,44 +568,6 @@ DES uses a key length of 8 bytes (64 bits).`;
}
},
/**
* @constant
* @default
*/
SUBS_PLAINTEXT: "ABCDEFGHIJKLMNOPQRSTUVWXYZ",
/**
* @constant
* @default
*/
SUBS_CIPHERTEXT: "XYZABCDEFGHIJKLMNOPQRSTUVW",
/**
* Substitute operation.
*
* @param {string} input
* @param {Object[]} args
* @returns {string}
*/
runSubstitute: function (input, args) {
let plaintext = Utils.expandAlphRange(args[0]).join(""),
ciphertext = Utils.expandAlphRange(args[1]).join(""),
output = "",
index = -1;
if (plaintext.length !== ciphertext.length) {
output = "Warning: Plaintext and Ciphertext lengths differ\n\n";
}
for (let i = 0; i < input.length; i++) {
index = plaintext.indexOf(input[i]);
output += index > -1 && index < ciphertext.length ? ciphertext[index] : input[i];
}
return output;
},
/**
* A mapping of string formats to their classes in the CryptoJS library.
*