Hawkynt

Cobra-64-256 (DarkCrypt)

Blowfish-derived block cipher from the DarkCrypt Total Commander plugin: 16-round Feistel network over a 64-bit block with an extra 1-bit rotation per round, keyed via a 256-bit key through Blowfish’s self-encryption schedule applied to a pi-seeded constant table shifted by two words relative to textbook Blowfish.

Properties

Property Value
Category Block Ciphers
Sub-category Block Cipher
Security status πŸŽ“ Educational Only
Complexity Advanced
Inventor Bruce Schneier (Blowfish base design); DarkCrypt variant by Alexander Myasnikov
Year 2009
Origin πŸ‡·πŸ‡Ί Russia
Source algorithms/block/darkcrypt-cobra.js

Parameters

Parameter Supported values
Key sizes 32 bytes (256 bits)
Block sizes 8 bytes (64 bits)

Security

Status: πŸŽ“ Educational Only

Known vulnerabilities

Issue Description Mitigation
Non-standard variant Modified Blowfish with a shifted constant table and an added per-round bit rotation; unanalyzed and not recommended for real use. Use AES or another vetted cipher.

Documentation

Test vectors

3 vectors ship with this algorithm and run in the test suite. Byte values are hexadecimal.

Vector 1 β€” DarkCrypt Cobra β€” zero key/plaintext

Field Value
key 0000000000000000000000000000000000000000000000000000000000000000
input 0000000000000000
expected 30021edebc2495f0

Vector 2 β€” DarkCrypt Cobra β€” incrementing key/plaintext

Field Value
key 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f
input 0001020304050607
expected db6b87b5b52f4591

Vector 3 β€” DarkCrypt Cobra β€” shifted incrementing key/plaintext

Field Value
key 0102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f20
input 1011121314151617
expected 108d81be52ba6d48

← All algorithms