@sighmir/blowfish
v1.0.2
Published
Blowfish encryption in TypeScript with custom schedule
Downloads
34
Maintainers
Readme
blowfish
Blowfish encryption in TypeScript with custom schedule
Inspired by egoroof-blowfish and melia
Example
import blowfish from "@sighmir/blowfish";
const bf = blowfish("my_key");
const buffer = Buffer.from("blowfish");
bf.encipher(buffer);
console.log(buffer); // c8a2de2a895325f5
bf.decipher(buffer);
console.log(buffer); // 626c6f7766697368
API
blowfish(key, schedule)
Create blowfish encryption object using specified key, if no key is provided it will use "blowfish" as the default key, if no schedule is provided it will use the default one used on the blowfish encryption algorithm, the schedule must be a Buffer of 1042 bytes, the first 18 bytes will fill P, the next 1024 will fill S with 4 Uint32Array of 256 bytes.
bf.decipher(buffer)
Will decipher the buffer in place, altering the buffer passed as argument.
bf.encipher(buffer)
Will encipher the buffer in place, altering the buffer passed as argument.
License
blowfish - Blowfish encryption in TypeScript with custom schedule
Copyright (C) 2020 Guilherme Caulada
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.