ºÚÁÏ´«ËÍÃÅ

Professor Dr. Jörg Keller - Fernuni Hagen

Ulm University

Bitslice-Implementierung von Verschlüsselung

Will man die gleiche Verschlüsselung für viele Daten ausführen, dann 
gibt es die Möglichkeit der bitslice-Implementierung: man drückt die 
n-Bit Verschlüsselungsfunktion als Bündel von n boole'schen Funktionen 
in n Variablen aus. Die Auswertung dieser boole'schen Funktionen auf 
k-Bit Registern erlaubt dann k Verschlüsselungen gleichzeitig, was den 
Ansatz speziell für die aktuellen Vektorregister interessant macht.

Einige Arbeiten berichten von Performance-Vorteilen für verschiedene 
Chiffren trotz den Konvertierungs-Overheads vor- und nachher.

Denn: man muss die n-bit des i-ten Blocks, die sich normalerweise in n/8 
konsekutiven Bytes befinden, konvertieren, so dass sie sich in n 
Variablen befinden, und zwar jeweils in Bit i. Macht man dies für i=0 
bis k-1, dann hat man letztlich eine n*k-Bitmatrix transponiert.

Die gleiche Transposition muss man nach der Verschlüsselung wieder 
²¹³Ü²õ´Úü³ó°ù±ð²Ô.
Der Transpositions-Algorithmus ist einfach wenn min(n,k) eine 
Zweierpotenz und der andere Parameter ein Vielfaches davon ist.

Der Vortrag zeigt auch, wie man vorgeht, wenn keine Zweierpotenz vorliegt.