Un'altro modo di agire, usato da tutte le implementazioni analizzate, è:
Per il primo punto si applica la permutazione P direttamente agli elementi
contenuti nelle S-box. Gli array risultanti vengono chiamati SPBOX per
distinguerli dalle S-box da cui sono ricavati.
Per ogni S-box ogni possibile uscita (4 bit) viene vista come una
stringa di 32 bit, di questi,
4 sono quelli contenuti nelle S-box, mentre i restanti 28 hanno valore 0.
La posizione dei 4 bit nella stringa di 32 è dipendente dal numero di
S-box di cui sono l'output (i 4 bit in uscita
da S-box1 vengono visti come i 4 pisignificativi in una stringa di 32,
mentre i 4 bit in uscita da S-box8
vengono visti come i 4 meno significativi in una stringa di 32 bit).
Ciascuna di queste stringhe di 32 bit è permutata usando la matrice P
definita dall'algoritmo del DES. Le SPBOX sono quindi 8 array contenenti elementi di 32 bit.
Per il secondo punto, la costruzione delle SPBOX è fatta in modo tale che dai 6 bit d'input si arrivi in maniera immediata ai 32 bit d'output corrispondenti. Le 4 righe di ogni SPBOX vengono distribuite in un vettore di 64 elementi osservando che per ogni SPBOX:
Quindi le prime due righe occuperanno le prime 32 locazioni, in posizione pari gli elementi della prima riga, in posizione dispari gli elementi della seconda riga. La terza e la quarta riga occuperanno le locazioni del vettore che vanno dalla 32 alla 63 con in posizione pari gli elementi della terza riga e in posizione dispari gli elementi della quarta riga. Ogni elemento delle S-box verrà collocato nel vettore nella posizione individuata dal valore della stringa di 6 bit che lo determina.
Cosí facendo il risultato finale di è ottenuto effettuando l'or dell'output degli otto SPBOX.
Si capisce quindi come avendo a disposizione l'input di ciascuna S-box
con un costo di 8 operazioni (i 7 or pil'assegnamento ad una variabile)
si ottiene il valore di .
A questo punto diventa molto importante il modo, e i relativi costi, con cui
le diverse implementazioni realizzano le permutazioni ma soprattutto
l'espansione E.