RC2 cipher

Encrypt or decrypt data with RC2 (RFC 2268), ECB or CBC, at a configurable effective key length, hex or base64. For legacy interop. Runs in your browser; nothing is uploaded.

Result

About this tool

RC2 cipher encrypts or decrypts data with the RC2 block cipher (defined in RFC 2268) in ECB or CBC mode, with hex or base64 key / IV / ciphertext. RC2 has a 64-bit block and a separate effective key length (T1) that you can configure independently of the key bytes.

⚠️ RC2 is a legacy cipher and is not secure for new designs. It survives mainly in old PKCS#12 key stores, S/MIME messages, and some Microsoft formats. Use this tool only to decrypt legacy data or for interop with old systems — for real encryption use AES (the aes-cipher tool) or a passphrase tool.

Privacy

Everything runs in your browser via WebAssembly — your key and data never leave the device. Also available from the gizza CLI and in chat.

FAQ

What does "effective key bits" (T1) do, and why is my decryption garbage?

RC2 deliberately limits its key schedule to T1 bits regardless of how many key bytes you supply — a relic of 1990s export controls. If the value used to decrypt differs from the one used to encrypt, you get garbage (or a padding error), even with the right key bytes. Leave it at 0 to use the key's full bit-length, or match the original system's setting — legacy software commonly used 40 or 128.

What key and IV sizes does RC2 accept here?

The key can be 1–128 bytes, supplied in the encoding you pick (base64 by default, or hex). RC2's block is 64 bits, so CBC mode needs an exactly 8-byte IV; ECB takes no IV at all. Plaintext is padded to the 8-byte block with PKCS#7, and the plaintext side is always treated as UTF-8 text.

Should I pick ECB or CBC mode?

CBC (the default) — ECB encrypts each 8-byte block independently, so repeated plaintext blocks produce visibly repeated ciphertext. Choose ECB only when the legacy format you're matching demands it, and remember decryption must use the same mode, IV, and effective-key-bits as encryption.

Is RC2 okay to use for protecting new data?

No. RC2 is a legacy cipher that survives mainly in old PKCS#12 key stores, S/MIME messages, and some Microsoft formats — this tool exists to decrypt that data and interoperate with old systems. For anything new, use AES (see the AES cipher tool).

Developer & Automation Access

Run it from the terminal

Same engine as this page, headless — via the gizza CLI:

gizza tool rc2-cipher "Text to encrypt…" 'key=base64 or hex key'

New to the CLI? Get gizza →

Open it by URL

Pre-fill and auto-run this tool with query parameters — the names match the API/CLI:

https://gizza.ai/tools/rc2-cipher/?data=Text%20to%20encrypt%E2%80%A6&operation=encrypt&cipher=cbc&key=base64%20or%20hex%20key&iv=base64%20or%20hex%20iv&effective_key_bits=0&format=base64

Machine-readable descriptor: tool.json — title + parameters JSON Schema for agents.