One of the simplest forms of encryption
pnpm add @gykh/caesar-cipherRequires Node.js 18 or newer.
Version 3 implements a classic Caesar cipher for ASCII letters. A-Z and
a-z shift with wraparound, while punctuation, whitespace, digits, and
non-letter characters are preserved.
Encrypt and decrypt strings:
const { encryptString, decryptString } = require("@gykh/caesar-cipher");
const str = "Hello, World! 123";
const encrypted = encryptString(str, 3);
console.log(encrypted); // Khoor, Zruog! 123
const decrypted = decryptString(encrypted, 3);
console.log(str === decrypted); // trueEncrypt and decrypt buffers:
const { encrypt, decrypt } = require("@gykh/caesar-cipher");
const { readFile } = require("fs/promises");
const buffer = await readFile(inputFile);
const encrypted = encrypt(buffer, 3);
const decrypted = decrypt(encrypted, 3);
console.log(buffer.equals(decrypted)); // trueEncrypt and decrypt streams. Use this for large data or files:
const { EncryptTransform, DecryptTransform } = require("@gykh/caesar-cipher");
const fs = require("fs");
const { pipeline } = require("stream/promises");
await pipeline(
fs.createReadStream(inputFile),
new EncryptTransform(3),
new DecryptTransform(3),
fs.createWriteStream(outputFile)
);Type: string
Required
Type: number
Required
key should be an integer between 0-25
Type: string
Required
Type: number
Required
key should be an integer between 0-25
Type: Buffer
Required
Type: number
Required
key should be an integer between 0-25
Type: Buffer
Required
Type: number
Required
key should be an integer between 0-25
Type: number
Required
key should be an integer between 0-25
Type: number
Required
key should be an integer between 0-25
The Caesar cipher, also known as a shift cipher, is one of the simplest forms of encryption. It is a substitution cipher where each letter in the original message (called the plaintext) is replaced with a letter corresponding to a certain number of letters up or down in the alphabet. Learn more
MIT © 2021 get-your-knowledge-here
