Security News
Node.js EOL Versions CVE Dubbed the "Worst CVE of the Year" by Security Experts
Critics call the Node.js EOL CVE a misuse of the system, sparking debate over CVE standards and the growing noise in vulnerability databases.
RC4 stream cipher. You can select from ["arc4", "rc4a", "vmpc", "rc4+"] algorithm
Encode/decode with different encodings for *String only, from nodejs doc:
- 'ascii' - for 7 bit ASCII data only. This encoding method is very fast, and will strip the high bit if set.
- 'utf8' - Multibyte encoded Unicode characters. Many web pages and other document formats use UTF-8.
- 'utf16le' - 2 or 4 bytes, little endian encoded Unicode characters. Surrogate pairs (U+10000 to U+10FFFF) are supported.
- 'ucs2' - Alias of 'utf16le'.
- 'base64' - Base64 string encoding.
- 'binary' - A way of encoding raw binary data into strings by using only the first 8 bits of each character. This encoding method is deprecated and should be avoided in favor of Buffer objects where possible. This encoding will be removed in future versions of Node.
- 'hex' - Encode each byte as two hexadecimal characters.
My original python code
Install through NPM
npm install arc4
or
git clone git://github.com/hex7c0/arc4.git
inside nodejs project
var rc4 = require('arc4');
var cipher = rc4('arc4', 'secret_key');
var d = cipher.encodeString('ciao');
var e = cipher.decodeString(d);
change your key and reload gKsa (warning)
cipher.change('foo');
cipher.change([30, 31]);
cipher.change(new Buffer('foo'));
encode a plaintext string, you can optionally choose input (defaults to 'utf8') and output (defaults to 'hex') encoding
cipher.encodeString(plaintext [, input_encoding [, output_encoding]]);
cipher.encodeString('string', 'utf8', 'base64');
encode a plaintext array
cipher.encodeArray([49, 50, 51]);
encode a plaintext buffer data
cipher.encodeBuffer(new Buffer('ciao'));
select right function according with plaintext data type. Set input and output encoding only if data is a String
cipher.encode(your_data [, input_encoding [, output_encoding]]);
decode a ciphertext string, you can optionally choose input (defaults to 'hex') and output (defaults to 'utf8') encoding
cipher.decodeString(ciphertext [, input_encoding [, output_encoding]]);
cipher.decodeString('string', 'utf8', 'base64');
decode a ciphertext array
cipher.decodeArray([49,50,51]);
decode a ciphertext buffer data
cipher.decodeBuffer(new Buffer('ciao'));
select right function according with ciphertext data type. Set input and output encoding only if data is a String
cipher.decode(your_data [, input_encoding [, output_encoding]]);
password
- String | Array | Buffer Your key (default "throw Error")Take a look at my examples
FAQs
rc4 stream cipher
The npm package arc4 receives a total of 887 weekly downloads. As such, arc4 popularity was classified as not popular.
We found that arc4 demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Critics call the Node.js EOL CVE a misuse of the system, sparking debate over CVE standards and the growing noise in vulnerability databases.
Security News
cURL and Go security teams are publicly rejecting CVSS as flawed for assessing vulnerabilities and are calling for more accurate, context-aware approaches.
Security News
Bun 1.2 enhances its JavaScript runtime with 90% Node.js compatibility, built-in S3 and Postgres support, HTML Imports, and faster, cloud-first performance.