SPECK Encryption

Encrypt text, files, or URL content online with SPECK using CBC, CTR, CFB, OFB, ECB, or Speck128 GCM, with configurable padding, PBKDF2, or EvpKDF. Read more

Speck encryption online

Speck is a family of lightweight ARX block ciphers from the SIMON and SPECK specification. This tool supports all ten published variants through @jscrypto/speck and composes them with the same mode, padding, and passphrase-derived key options used by the other @jscrypto cipher pages.

Speck is a niche or legacy/lightweight cipher family. Prefer AES encryption for new systems unless a protocol specifically requires Speck.

How to encrypt with Speck

  1. Select text, file, or URL input and the appropriate input encoding.
  2. Choose the Speck variant required by the receiving system.
  3. Select a mode and padding scheme.
  4. Enter a direct key and IV, or select a passphrase-based key derivation method.
  5. For GCM, use a Speck128 variant, supply a nonce in the GCM settings, and configure the authentication tag and optional AAD. Passphrase GCM still requires this nonce because it is not derived from the KDF.
  6. Encrypt and save both the ciphertext and all non-secret parameters needed for decryption.

Modes and Speck variants

CBC, CTR, CFB, OFB, and ECB work with every Speck variant. This tool only enables GCM for 128-bit block variants because GCM requires a 128-bit block cipher, so only Speck128/128, Speck128/192, and Speck128/256 can be selected with GCM. Equal plaintext blocks under ECB still produce equal ciphertext blocks.

Frequently asked questions

Why does encryption produce a different result each time?

Passphrase modes commonly use a fresh random salt. Different ciphertext for the same plaintext can therefore be expected when Salt Type is Random.

How do I decrypt the result?

Use the Speck decryption tool with the same variant, mode, padding, key derivation, salt, IV, tag, AAD, and encodings.

Input
Output
Share Link
Settings
Nonce
AAD
Salt
Key
IV