mirror of
https://github.com/gchq/CyberChef.git
synced 2024-11-02 14:11:02 +01:00
ESM: Tidied up Rotate operations
This commit is contained in:
parent
af51090ebb
commit
fad4713a90
@ -9,13 +9,6 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Default values for rotation operations
|
|
||||||
*/
|
|
||||||
export const ROTATE_AMOUNT = 1;
|
|
||||||
export const ROTATE_CARRY = false;
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Runs rotation operations across the input data.
|
* Runs rotation operations across the input data.
|
||||||
*
|
*
|
||||||
@ -64,7 +57,6 @@ export function rotl(b) {
|
|||||||
* Rotates a byte array to the right by a specific amount as a whole, so that bits are wrapped
|
* Rotates a byte array to the right by a specific amount as a whole, so that bits are wrapped
|
||||||
* from the end of the array to the beginning.
|
* from the end of the array to the beginning.
|
||||||
*
|
*
|
||||||
* @private
|
|
||||||
* @param {byteArray} data
|
* @param {byteArray} data
|
||||||
* @param {number} amount
|
* @param {number} amount
|
||||||
* @returns {byteArray}
|
* @returns {byteArray}
|
||||||
@ -90,7 +82,6 @@ export function rotrCarry(data, amount) {
|
|||||||
* Rotates a byte array to the left by a specific amount as a whole, so that bits are wrapped
|
* Rotates a byte array to the left by a specific amount as a whole, so that bits are wrapped
|
||||||
* from the beginning of the array to the end.
|
* from the beginning of the array to the end.
|
||||||
*
|
*
|
||||||
* @private
|
|
||||||
* @param {byteArray} data
|
* @param {byteArray} data
|
||||||
* @param {number} amount
|
* @param {number} amount
|
||||||
* @returns {byteArray}
|
* @returns {byteArray}
|
||||||
|
@ -6,13 +6,6 @@
|
|||||||
|
|
||||||
import Operation from "../Operation";
|
import Operation from "../Operation";
|
||||||
|
|
||||||
/**
|
|
||||||
* Default arguments for ROT13 operation
|
|
||||||
*/
|
|
||||||
const ROT13_AMOUNT = 13,
|
|
||||||
ROT13_LOWERCASE = true,
|
|
||||||
ROT13_UPPERCASE = true;
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ROT13 operation.
|
* ROT13 operation.
|
||||||
@ -34,23 +27,23 @@ class ROT13 extends Operation {
|
|||||||
{
|
{
|
||||||
name: "Rotate lower case chars",
|
name: "Rotate lower case chars",
|
||||||
type: "boolean",
|
type: "boolean",
|
||||||
value: ROT13_LOWERCASE
|
value: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "Rotate upper case chars",
|
name: "Rotate upper case chars",
|
||||||
type: "boolean",
|
type: "boolean",
|
||||||
value: ROT13_UPPERCASE
|
value: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "Amount",
|
name: "Amount",
|
||||||
type: "number",
|
type: "number",
|
||||||
value: ROT13_AMOUNT
|
value: 13
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param {string} input
|
* @param {byteArray} input
|
||||||
* @param {Object[]} args
|
* @param {Object[]} args
|
||||||
* @returns {byteArray}
|
* @returns {byteArray}
|
||||||
*/
|
*/
|
||||||
|
@ -6,11 +6,6 @@
|
|||||||
|
|
||||||
import Operation from "../Operation";
|
import Operation from "../Operation";
|
||||||
|
|
||||||
/**
|
|
||||||
* Default argument for ROT47 operation
|
|
||||||
*/
|
|
||||||
const ROT47_AMOUNT = 47;
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ROT47 operation.
|
* ROT47 operation.
|
||||||
@ -32,13 +27,13 @@ class ROT47 extends Operation {
|
|||||||
{
|
{
|
||||||
name: "Amount",
|
name: "Amount",
|
||||||
type: "number",
|
type: "number",
|
||||||
value: ROT47_AMOUNT
|
value: 47
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param {string} input
|
* @param {byteArray} input
|
||||||
* @param {Object[]} args
|
* @param {Object[]} args
|
||||||
* @returns {byteArray}
|
* @returns {byteArray}
|
||||||
*/
|
*/
|
||||||
|
@ -5,7 +5,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
import Operation from "../Operation";
|
import Operation from "../Operation";
|
||||||
import { rot, rotl, rotlCarry, ROTATE_AMOUNT, ROTATE_CARRY } from "../lib/Rotate";
|
import {rot, rotl, rotlCarry} from "../lib/Rotate";
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Rotate left operation.
|
* Rotate left operation.
|
||||||
@ -27,18 +28,18 @@ class RotateLeft extends Operation {
|
|||||||
{
|
{
|
||||||
name: "Amount",
|
name: "Amount",
|
||||||
type: "number",
|
type: "number",
|
||||||
value: ROTATE_AMOUNT
|
value: 1
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "Carry through",
|
name: "Carry through",
|
||||||
type: "boolean",
|
type: "boolean",
|
||||||
value: ROTATE_CARRY
|
value: false
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param {string} input
|
* @param {byteArray} input
|
||||||
* @param {Object[]} args
|
* @param {Object[]} args
|
||||||
* @returns {byteArray}
|
* @returns {byteArray}
|
||||||
*/
|
*/
|
||||||
|
@ -5,7 +5,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
import Operation from "../Operation";
|
import Operation from "../Operation";
|
||||||
import { rot, rotr, rotrCarry, ROTATE_AMOUNT, ROTATE_CARRY } from "../lib/Rotate";
|
import {rot, rotr, rotrCarry} from "../lib/Rotate";
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Rotate right operation.
|
* Rotate right operation.
|
||||||
@ -27,18 +28,18 @@ class RotateRight extends Operation {
|
|||||||
{
|
{
|
||||||
name: "Amount",
|
name: "Amount",
|
||||||
type: "number",
|
type: "number",
|
||||||
value: ROTATE_AMOUNT
|
value: 1
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "Carry through",
|
name: "Carry through",
|
||||||
type: "boolean",
|
type: "boolean",
|
||||||
value: ROTATE_CARRY
|
value: false
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param {string} input
|
* @param {byteArray} input
|
||||||
* @param {Object[]} args
|
* @param {Object[]} args
|
||||||
* @returns {byteArray}
|
* @returns {byteArray}
|
||||||
*/
|
*/
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/**
|
/**
|
||||||
* Base64 tests.
|
* Rotate tests.
|
||||||
*
|
*
|
||||||
* @author Matt C [matt@artemisbot.uk]
|
* @author Matt C [matt@artemisbot.uk]
|
||||||
*
|
*
|
||||||
@ -8,6 +8,7 @@
|
|||||||
*/
|
*/
|
||||||
import TestRegister from "../../TestRegister";
|
import TestRegister from "../../TestRegister";
|
||||||
|
|
||||||
|
|
||||||
TestRegister.addTests([
|
TestRegister.addTests([
|
||||||
{
|
{
|
||||||
name: "Rotate left: nothing",
|
name: "Rotate left: nothing",
|
||||||
|
Loading…
Reference in New Issue
Block a user