Bifid Cipher
Fractionating cipher invented by FΓ©lix Delastelle in 1901. Combines Polybius square with transposition, replacing each letter with two coordinates then rearranging them in blocks. Significantly stronger than simple substitution ciphers.
Properties
| Property |
Value |
| Category |
Classical Ciphers |
| Sub-category |
Classical Cipher |
| Security status |
π Educational Only |
| Complexity |
Intermediate |
| Inventor |
FΓ©lix Delastelle |
| Year |
1901 |
| Origin |
π«π· France |
| Source |
algorithms/classical/bifid.js |
Security
Status: π Educational Only
Known vulnerabilities
Documentation
References
Test vectors
4 vectors ship with this algorithm and run in the test suite. Byte values are hexadecimal.
Vector 1 β Wikipedia worked example - square BGWKZ/QPNDS/IOAXE/FCLUM/THYVR, FLEEATONCE taken as one block
| Field |
Value |
key |
4247574b5a51504e4453494f41584546434c554d54485956522c3130 |
input |
464c454541544f4e4345 |
expected |
5541454f4c5752494e53 |
Vector 2 β Plain A-Z square, period 5. The Wikipedia article carries no value for this input; the vector covers the unkeyed square
| Field |
Value |
key |
35 |
input |
48454c4c4f |
expected |
464e4e5644 |
Vector 3 β Keyword CIPHER, period 3. dCode carries no value for this input; the vector covers a keyed square and a block shorter than the message
| Field |
Value |
key |
4349504845522c33 |
input |
41545441434b |
expected |
445154524b49 |
Vector 4 β Period 1 - a single-letter block is its own coordinate pair, so one letter passes through unchanged
| Field |
Value |
key |
31 |
input |
41 |
expected |
41 |
β All algorithms