NOTICE: Citizendium is still being set up on its newer server, treat as a beta for now; please see here for more.
Citizendium - a community developing a quality comprehensive compendium of knowledge, online and free. Click here to join and contribute—free
Click here to participate in the November 2016 election.
CZ thanks our previous donors. Donate here. Treasurer's Financial Report -- Thanks to our content contributors. --

Twofish (cipher)

From Citizendium, the Citizens' Compendium
(Redirected from Twofish)
Jump to: navigation, search
This article is developing and not approved.
Main Article
Related Articles  [?]
Bibliography  [?]
External Links  [?]
Citable Version  [?]
This editable Main Article is under development and not meant to be cited; by editing it you can help to improve it towards a future approved, citable version. These unapproved articles are subject to a disclaimer.

Twofish [1] is a block cipher from Bruce Schneier's company Counterpane. It was designed as a candidate cipher for the AES competition, and was a finalist though not the winner. Like all candidates, it uses 128-bit blocks and supports key sizes of 128, 192 or 256 bits. It is a 16-round Feistel cipher using four key-dependent 8*8 S-boxes.

Except for the name, and using key-dependent S-boxes, it has little relationship to Blowfish; Twofish was a new design. It uses the pseudo-Hadamard transform in the round function. It has a successor named "Threefish", used in the Skein hash algorithm, a candidate in the Advanced Hash Standard contest. That is another new design.

The cipher is freely available for any use. It has a home page.


  1. Bruce Schneier, John Kelsey, Doug Whiting, David Wagner, Chris Hall, Niels Ferguson (1998), Twofish: A 128-Bit Block Cipher