Twofish is een symmetrische blokversleuteling, ontworpen door Bruce Schneier en zijn team in 1998 als opvolger van Blowfish. Het versleutelt gegevens in blokken van 128 bits met sleutels van 128, 192 of 256 bits en was een van de vijf finalisten in de NIST-competitie voor de selectie van AES. Twofish is niet gepatenteerd, gratis te gebruiken en wordt nog steeds als veilig beschouwd.
Twofish is een symmetrische blokversleuteling, ontwikkeld door Bruce Schneier en zijn team als opvolger van Blowfish. Het versleutelt gegevens in blokken van 128 bits met sleutels van 128, 192 of 256 bits en was een van de vijf finalisten in de NIST-competitie voor de Advanced Encryption Standard ( AES ). Hoewel Rijndael won en AES werd, is Twofish nog steeds onontcijferd en veilig. Het is niet gepatenteerd en gratis te gebruiken.
Key Takeaways
- Twofish is een symmetrische blokversleuteling (128-bits blok; 128-, 192- of 256-bits sleutels) ontworpen door Bruce Schneier en zijn team.
- Het volgde Blowfish op en was een van de vijf AES-finalisten; Rijndael won en werd in 2001 AES-lid.
- Twofish is niet gepatenteerd, licentievrij en valt onder het publieke domein, dus iedereen kan het gebruiken zonder royalty's te betalen.
- Het wordt nog steeds als veilig beschouwd: er bestaat geen praktische aanval op de volledige versleuteling, hoewel het veel minder gebruikt wordt dan AES.
- Als symmetrische versleuteling is Twofish bestand tegen kwantumaanvallen: Grovers algoritme halveert slechts de sterkte ervan, waardoor Twofish-256 een beveiliging van ongeveer 128 bits behoudt tegen kwantumaanvallen.
Wat is Twofish?
Twofish is een symmetrische blokversleuteling , wat betekent dat dezelfde sleutel wordt gebruikt voor zowel versleuteling als onversleuteling, en dat het gegevens verwerkt in blokken van vaste grootte. Het werd ontwikkeld door Bruce Schneier en een team bij Counterpane als opvolger van de eerdere Blowfish-versleuteling, als reactie op de behoefte om de verouderde Data Encryption Standard (DES) te vervangen. In 1997 lanceerde NIST een open competitie om een ​​moderne vervanger voor DES te selecteren, waarmee werd ingespeeld op de kritiek dat DES in het geheim was ontworpen.
De criteria van NIST vereisten een 128-bits blokcijfer dat sleutellengtes van 128 tot 256 bits ondersteunde, geen zwakke sleutels had, een overzichtelijk ontwerp dat gemakkelijk te analyseren was en goede prestaties leverde op een breed scala aan platforms, waaronder energiezuinige apparaten. Twofish voldeed aan al deze eisen door gebruik te maken van een 16-ronde Feistel-structuur met sleutelafhankelijke substitutieboxen (S-boxen). Het werd een van de vijf finalisten, samen met Rijndael, Serpent, RC6 en MARS. NIST selecteerde Rijndael in 2000 als AES (gestandaardiseerd in 2001), maar Twofish werd alom gewaardeerd vanwege zijn sterke veiligheidsmarge.
Twofish is gratis te gebruiken.
In tegenstelling tot sommige andere versleutelingsmethoden is Twofish door de ontwerpers bewust in het publieke domein geplaatst. Het is niet gepatenteerd, licentievrij en er zijn geen royalty's of gebruiksbeperkingen aan verbonden. Dit was een belangrijk verkoopargument tijdens de AES-competitie en is dat nog steeds: elke ontwikkelaar of elk product kan Twofish vrijelijk implementeren. (In het eerdere artikel werd mogelijke 'juridische voorzichtigheid' als nadeel genoemd, maar er is geen patent om je zorgen over te maken, Twofish is altijd gratis geweest.)
Is Twofish veilig?
Ja. Twofish wordt nog steeds beschouwd als een veilige encryptiemethode. In de decennia sinds de introductie is er geen enkele praktische cryptanalytische aanval gevonden tegen het volledige algoritme van 16 ronden. De bestaande theoretische resultaten zijn alleen van toepassing op varianten met minder ronden of specifieke omstandigheden en vormen geen bedreiging voor gebruik in de praktijk. De grote veiligheidsmarge was een van de redenen waarom het de laatste ronde van AES haalde. Dat gezegd hebbende, zijn er wel praktische overwegingen:
- Zijkanaalaanvallen: Net als bij de meeste versleutelingsmethoden kan een onzorgvuldige implementatie informatie lekken via timing- of vermogensanalyse. Dit is een implementatieprobleem, geen fout in het algoritme, en wordt verholpen door coderen met constante uitvoeringstijd en bescherming tegen side-channelaanvallen.
- Implementatie complexiteit: De sleutelafhankelijke S-boxen en de Feistel-structuur van Twofish maken een correcte implementatie complexer dan bij sommige andere versleutelingsmethoden, waardoor zorgvuldige en goed gecontroleerde code van groot belang is.
- Prestaties en acceptatie: Twofish presteert goed in software en hardware, maar moderne CPU's beschikken over speciale AES-acceleratie (AES-NI) waar Twofish geen gebruik van kan maken. Daardoor is AES in de praktijk meestal sneller. Dit, plus het feit dat AES de standaardisatie heeft gewonnen, is de reden waarom Twofish veel minder vaak wordt gebruikt.
Kortom, Twofish is veilig maar niche. Het komt voor in tools zoals GnuPG (OpenPGP) en schijfversleutelingssoftware zoals VeraCrypt, waar het wordt aangeboden als een sterk alternatief of aanvulling op AES, maar het heeft nooit de alomtegenwoordigheid van AES bereikt.
Twofish versus AES
Omdat Twofish en AES (Rijndael) rechtstreeks met elkaar concurreerden, is de logische vraag hoe ze zich tot elkaar verhouden:
| Aspect | Twofish | AES (Rijndael) |
| Type | Symmetrische blokcijfer | Symmetrische blokcijfer |
| Blokgrootte | 128-bit | 128-bit |
| Sleutel maten | 128, 192, 256-bit | 128, 192, 256-bit |
| Structuur | 16-schots Feistel, sleutelafhankelijke S-dozen | Substitutie-permutatienetwerk |
| normalisering | AES-finalist (niet geselecteerd) | Geselecteerd als AES (FIPS 197, 2001) |
| Hardware acceleratie | Geen enkele ingebouwd in CPU's. | AES-NI op moderne CPU's (veel sneller) |
| Adoptie | Niche (GnuPG, VeraCrypt) | Wereldwijde standaard, bijna universeel |
| Beveiligingsstatus | Veilig, geen praktische breuk | Veilig, geen praktische breuk |
Beide zijn sterke, onbreekbare versleutelingsmethoden met dezelfde blok- en sleutelgrootte. Het praktische verschil zit hem in het ecosysteem: AES is de standaard, wordt overal ondersteund en werkt sneller dankzij CPU-acceleratie, waardoor het de standaardkeuze is. Twofish blijft een degelijk, gratis alternatief.
Is Twofish kwantumveilig? De vooruitzichten voor 2026.
Twofish heeft een sterke uitgangspositie voor het kwantumtijdperk, om dezelfde reden als AES. Als symmetrische encryptiemethode wordt het niet bedreigd door het algoritme van Shor, dat publieke-sleutelalgoritmen zoals AES kraakt. RSA en ECC Maar dit geldt niet voor symmetrische encryptie. De enige relevante kwantumaanval is het Grover-algoritme, dat het zoeken naar sleutels via brute force versnelt en de sleutelsterkte van een cipher effectief halveert. In de praktijk betekent dit dat Twofish met een 256-bits sleutel ongeveer 128 bits aan beveiliging behoudt, zelfs tegen een toekomstige kwantumcomputer, wat als veilig wordt beschouwd. Hoewel de post-kwantumtransitie dus dringend gevolgen heeft voor publieke-sleutelcryptografie (waarbij NIST ML-KEM, ML-DSA en SLH-DSA in 2024 heeft afgerond en van plan is RSA en ECC tussen 2030 en 2035 uit te faseren), blijven sterke symmetrische ciphers zoals Twofish-256 en AES-256 kwantumresistent en hoeven ze niet te worden vervangen. Het belangrijkste advies is simpelweg om een ​​256-bits sleutel te gebruiken.
Hoe encryptieconsultancy kan helpen
Of u nu AES, Twofish of een combinatie van algoritmen gebruikt, het belangrijkste is te weten wat waar wordt ingezet en of het veilig is geconfigureerd. De adviesdiensten van Encryption Consulting beoordelen uw cryptografische status, inventariseren de gebruikte algoritmen en sleutelgroottes, identificeren zwakke configuraties of implementaties en stemmen alles af op standaarden zoals NIST en FIPS 140-3, inclusief de planning voor de post-kwantumtransitie van uw publieke-sleutelcryptografie. Ondersteund door ISO/IEC 27001:2022 en SOC 2-gecertificeerde werkwijzen.
Veelgestelde Vragen / FAQ
Wat is Twofish?
Twofish is een symmetrische blokversleuteling, ontworpen door Bruce Schneier en zijn team als opvolger van Blowfish. Het versleutelt gegevens in blokken van 128 bits met sleutels van 128, 192 of 256 bits, gebaseerd op een 16-ronde Feistel-structuur met sleutelafhankelijke substitutieboxen. Twofish was een van de vijf finalisten in de NIST-competitie voor de selectie van de Advanced Encryption Standard (AES). Het is niet gepatenteerd, gratis te gebruiken en wordt nog steeds als veilig beschouwd, hoewel het veel minder wijdverspreid is dan AES.
Is Twofish veilig?
Ja. Twofish wordt nog steeds als veilig beschouwd. In de decennia sinds de introductie is er geen praktische cryptanalytische aanval gevonden op de volledige 16-ronde cipher. De bestaande theoretische resultaten gelden alleen voor versies met minder rondes en hebben geen invloed op het gebruik in de praktijk. De grote veiligheidsmarge heeft ervoor gezorgd dat Twofish de laatste ronde van AES heeft gehaald. De belangrijkste praktische overwegingen zijn de kwaliteit van de implementatie (het voorkomen van side-channel lekken) en de prestaties, aangezien moderne CPU's AES versnellen, maar Twofish niet.
Waarom verloor Twofish van AES?
Twofish was een van de vijf finalisten voor AES, maar NIST koos Rijndael, dat in 2000 AES werd. De beslissing was niet omdat Twofish onveilig was; alle finalisten waren sterk. Rijndael werd vooral gekozen vanwege de combinatie van veiligheid, snelheid en eenvoud op een breed scala aan hardware en software. Twofish is iets complexer om te implementeren, en nadat AES de standaard was geworden, voegden CPU's speciale AES-acceleratie toe, waardoor AES de snellere en breder ondersteunde standaard werd.
Waarvoor wordt Twofish gebruikt?
Twofish wordt in diverse beveiligingsprogramma's gebruikt als een sterk, vrij beschikbaar alternatief voor AES. Het komt voor in GnuPG (de OpenPGP-implementatie) en in schijfversleutelingssoftware zoals VeraCrypt, soms in combinatie met andere versleutelingsmethoden voor extra beveiliging. Omdat het niet gepatenteerd en royaltyvrij is, kunnen ontwikkelaars het implementeren zonder zich zorgen te hoeven maken over licenties. Het is echter een nicheproduct vergeleken met AES, dat de dominante markt is omdat het de standaard is en profiteert van hardwareversnelling.
Is Twofish beter dan AES?
Geen van beide is duidelijk beter; beide zijn veilige, onbreekbare blokcijfers met dezelfde 128-bits blokgrootte en sleutelgroottes van 128, 192 of 256 bits. AES is de wereldwijde standaard, wordt bijna overal ondersteund en werkt sneller omdat moderne CPU's hardwareversnelling voor AES bevatten, waardoor het in de praktijk de standaard is. Twofish is een even sterk alternatief dat niet gepatenteerd is en gratis beschikbaar, maar het wordt veel minder gebruikt en mist hardwareversnelling, waardoor AES meestal de betere praktische keuze is.
Is Twofish kwantumveilig?
Grotendeels wel. Als symmetrische versleuteling wordt Twofish niet bedreigd door het algoritme van Shor, dat weliswaar publieke-sleutelalgoritmen zoals RSA en ECC kraakt, maar niet van toepassing is op symmetrische versleuteling. De enige relevante kwantumaanval is het algoritme van Grover, dat de effectieve sleutelsterkte halveert. Twofish behoudt met een 256-bits sleutel dus ongeveer 128 bits aan beveiliging tegen een kwantumcomputer, wat als veilig wordt beschouwd. Het gebruik van een 256-bits sleutel maakt Twofish kwantumresistent, net als AES.
Krijg inzicht in uw versleuteling
Of u nu AES, Twofish of beide gebruikt, het is van cruciaal belang te weten welke technologieën worden ingezet en of ze geschikt zijn voor de toekomst van kwantumtechnologie. Ontdek de adviesdiensten van Encryption Consulting om uw cryptografie in kaart te brengen en een routekaart te ontwikkelen voor de toekomst van kwantumtechnologie.
