dobnej do funkcji mieszającej Ahb. s-boksy są juz nieco mne. w przeciwieństwie do wszystkich innych omawianych wcześniej szyfrów, tym razem S-boksy nie są stałe: ich zawartość zależy od klucza. Specjalny algorytm wylicza tablice S-boksów na podstawie klucza. Uzasadnieniem takiego rozwiązania jest utrudnienie analizy S-boksów potencjalnym włamywaczom. Dlatego właśnie w wielu implementacjach Twofish niezbędne są dodatkowe obliczenia wstępne dla każdego nowego klucza. W ich trakcie wyznacza się nowe S-boksy, które następnie są przechowywane w pamięci.
Funkcja PHT miesza dwa wyniki funkcji g korzystając z 32-bitowych operacji dodawania. W ostatniej części funkcji Fma miejsce dodawanie danych z klucza. Dodawanie jest oznaczone na
rysunku symbolem EE, zaś alternatywa wyłączająca — symbolem ©.
W algorytmie Twofish zastosowano dodatkowe przetwarzanie wstępne i końcowe. Polega ono na dodawaniu pewnych informacji z klucza do danych. W ten sposób szyfr trudniej poddaje się
większości ataków, zaś wzrost kosztu jest niewielki.
Tak jak w przypadku innych szyfrów, Twofish ma schemat przetwarzania klucza, pozwalający
uzyskać klucze tur oraz dwa dodatkowe klucze: początkowy i końcowy.
Aby nie było żadnych wątpliwości: jako autorzy nie jesteśmy tym razem obiektywni, gdyż będąc współtwórcami Twofish nadal lubimy swój szyfr. Staraliśmy się zachować jak największą dozę obiektywizmu, ale na pewno nie udało się nam tego zrobić w stu procentach. Twofish zaprojektowano częściowo po to, by spełnić wymagania, które naszym zdaniem powinien spełniać szyfr blokowy. AES i Serpent były projektowane tak, aby spełniały te wymagania, które ich twórcy uznali za najważniejsze. Przykładowo, w Twofish celowo dodaliśmy dwa jednobitowe przesunięcia. Przesunięcia te mają dwie wady: są przyczyną różnicy między algorytmem szyfrującym, a deszyfrującym, co podwyższa koszt implementacji. Poza tym spowalniają działanie oprogramowania o około 5%. Jedynym powodem wprowadzenia tych przesunięć była chęć uniknięcia struktur wyrównanych do pełnych bajtów. AES nie narusza wstępnej struktury bajtów. Naszym zdaniem, AES jest zbyt porządny i ułożony; jego twórcy zapewne uważają, że Twofish jest bataganiarski i brak mu elegancji. Jest to sprawa poglądów: bez cienia wątpliwości szanujemy opinie innych osób parających się kryptografią. W tej książce jednak wszelkie zalecenia oparte są na naszych poglądach.