Skip to content

Latest commit

 

History

History
112 lines (87 loc) · 4.09 KB

File metadata and controls

112 lines (87 loc) · 4.09 KB

Compatibility

nvim-chef uses CyberChef's public operation names and positional argument order. An operation is listed as native only when its data path is implemented in Lua and covered by a deterministic test.

Native operations

Encodings and radices

  • To Base, From Base for radices 2 through 36, including arbitrary-size integers and fractions
  • To Base32, From Base32
  • To Base45, From Base45
  • To Base58, From Base58
  • To Base62, From Base62
  • To Base64, From Base64
  • To Base85, From Base85
  • To Base92, From Base92
  • To Hex, From Hex
  • To Binary, From Binary
  • To Octal, From Octal
  • To Decimal, From Decimal
  • URL Encode, URL Decode
  • To Charcode, From Charcode
  • To HTML Entity, From HTML Entity (common named entities plus numeric entities)
  • To Quoted Printable, From Quoted Printable
  • To Modhex, From Modhex
  • To Hex Content, From Hex Content
  • To COBS, From COBS
  • Escape Unicode Characters, Unescape Unicode Characters

Byte and text operations

  • XOR, including Standard, Cascade, Input differential, and Output differential schemes
  • AND, OR, NOT, ADD, SUB
  • ROT13
  • Reverse in Character, Byte, and Line modes
  • To Lower case, To Upper case
  • Take bytes, Drop bytes, Take nth bytes, Drop nth bytes
  • Remove null bytes, Swap endianness
  • Head, Tail, Sort, Unique, Split, Wrap, Pad lines
  • Add line numbers, Remove line numbers, Remove whitespace
  • Find / Replace and Count occurrences for simple and extended strings
  • Swap case, To Camel case, To Snake case, To Kebab case

Regex mode in Find / Replace and Count occurrences is not registered as compatible yet and returns an explicit error; Vim regex syntax is not silently substituted for CyberChef regex syntax.

Classical ciphers

  • ROT47, Atbash Cipher
  • Affine Cipher Encode, Affine Cipher Decode
  • A1Z26 Cipher Encode, A1Z26 Cipher Decode
  • Vigenère Encode, Vigenère Decode
  • To Morse Code, From Morse Code

Safe networking text

  • Defang URL, Fang URL, Defang IP Addresses

Hashing and authentication

  • MD5
  • SHA1, including CyberChef's configurable round count
  • SHA2: SHA-224, SHA-256, SHA-384, SHA-512, SHA-512/224, and SHA-512/256
  • SHA3: SHA3-224, SHA3-256, SHA3-384, and SHA3-512
  • Shake: SHAKE128 and SHAKE256 with variable output length
  • HMAC: MD5, SHA-1, SHA-224, SHA-256, SHA-384, SHA-512, SHA-512/224, and SHA-512/256
  • Adler-32 Checksum, XOR Checksum
  • Fletcher-8 Checksum, Fletcher-16 Checksum, Fletcher-32 Checksum, Fletcher-64 Checksum
  • MurmurHash3
  • CRC Checksum: custom CRCs up to 32 bits plus CRC-8, CRC-8/MAXIM, CRC-16/ARC, CRC-16/CCITT-FALSE, CRC-16/XMODEM, CRC-32/ISO-HDLC, CRC-32/CASTAGNOLI, and CRC-32/MPEG-2

Symmetric encryption

  • AES Encrypt, AES Decrypt
    • AES-128, AES-192, and AES-256
    • ECB, CBC, CFB, OFB, and CTR
    • PKCS#7 and NoPadding block modes
    • Raw, Hex, and Base64 input/output
    • configured, prepended, and appended IVs

AES-GCM and AES key wrap are not yet registered as supported paths. The indexed AES operations return an explicit error if GCM is requested; they never silently downgrade the mode.

  • ChaCha with 8/12-byte nonces and 8, 12, or 20 rounds
  • Salsa20 with 8, 12, or 20 rounds
  • RC4, RC4 Drop

Key derivation

  • Derive PBKDF2 key
  • Derive HKDF key
  • Derive EVP key

The native digest set available to KDF/HMAC paths is MD5, SHA-1, and the complete SHA-2 family.

First-phase scope

The next native Lua work is data/crypto functionality: compression, JWT/JWS workflows, additional hashes and symmetric ciphers, and broader named CRC/HTML-entity tables. Each family should land with official vectors and recipe coverage.

The following CyberChef families are deliberately deferred:

  • QR/barcode generation and recognition
  • image and media transforms
  • OCR and presentation/chart operations
  • network requests and browser-dependent operations

Name coverage is not used as a proxy for correctness. Operations are added to the index only after their default path works in native Lua.