A Pszeudo -Hadamard Transform ( PHT ) a kriptográfiában használt bitsorok reverzibilis transzformációja, amely a titkosítás diffúzióját biztosítja . A konverzió bemenetében a bitek számának párosnak kell lennie, hogy a karakterláncot két egyenlő hosszúságú részre lehessen bontani. Az átalakítás megalkotója Jacques Hadamard francia matematikus .
Legyen a transzformáció bemenete egy bit hosszúságú karakterlánc . Képzeljük el két hosszúságú karakterláncként : . Ezután a Hadamard pszeudotranszformáció eredményeként egy karakterláncot kapunk, amelynek a részstring értékeit a következő képletekkel számítjuk ki:
Ennek megfelelően ezekből a képletekből könnyen megkapható az inverz Hadamard pszeudotranszformáció:
A Hadamard pszeudotranszformáció mátrix formában is ábrázolható . Ha vektor alakban írjuk fel és , akkor a transzformáció egyenértékű a mátrixszal való szorzással :
Természetesen ne felejtsük el, hogy a mátrixszal történő szorzás minden műveletét modulo hajtja végre .
A fordított transzformáció egyenértékű a mátrix inverze szorzásával : .
A transzformációs mátrixot egy nagyobb mátrixként is ábrázolhatja, amely kettő hatványa. Így például ha egy 8 bites karakterlánccal dolgozunk, akkor azt 4, egyenként 2 bites részstringként ábrázolhatjuk: , és ugyanezt tesszük a kimeneti karakterlánccal . Az ilyen transzformáció mátrixát a rekurzív szabályból kapjuk:
Példánkban , és a transzformációs mátrix így néz ki:
A pszeudo Hadamard transzformációt egyes titkosítási algoritmusokban használják a jobb kriptográfiai diffúzió biztosítására. A Twofish és a SAFER példák az ilyen algoritmusokra . Ugyanakkor 2 pontos konverziót (a bemeneten egy 2 bájt hosszú karakterláncot) használnak a SAFER összes változatában, kivéve a SAFER ++ legújabb verzióját ( 2000 ), amely 4 pontos konverziót használ. (a bemeneten egy 4 bájt hosszú karakterlánc).
A fenti titkosítási algoritmusokban a legtöbb műveletet, beleértve a Hadamard pszeudotranszformációt is, bájton hajtják végre . Ennek megfelelően a transzformációt leíró képletekben 8-cal egyenlőnek veszik