S-DES is a toy cipher intended for learning, defined by Edward F. Schaefer, A Simplified Data Encryption Standard Algorithm, in Cryptologia Volume 20, Issue 1, 1996 (paywalled with free preview). It has the same structure as DES, and uses the same notations:
- bits vectors (such as key and data) are numbered "starting" from 1 "on the left"
- functions of bit vectors giving bits vectors are expressed by a series of decimal numbers, giving, for each bit of the output, the index of the corresponding bit in the input.
P10
(which mimics PC1 in DES) transforms a 10-bit vector into a 10-bit vector, such that the jth bit of the output is at the index in the input given by the jth number in 3, 5, 2, 7, 4, 10, 1, 9, 8, 6
.
For example, the 2nd bit in the output is the 5th bit in the input, because the 2nd number is the above sequence of numbers is 5.
P8
(which mimics PC2 in DES) transforms a 10-bit vector into an 8-bit vector, such that the jth bit of the output is at the index in the input given by the jth number in 6, 3, 7, 4, 8, 5, 10, 9
.
For example, the 7th bit in the output is the 10th bit in the input, because the 7th number is the above sequence of numbers is 10.
The rest of the text in the question has the following meaning/rationale:
The key K = 1010000010
of S-DES is a 10-bit vector. K
is transformed using P10
, yielding a 10-bit vector CD0 = 1000001100
, which is split into two 5-bit vectors C0 = 10000
and D0 = 01100
.
In the first round,
C0
andD0
each are rotated on the left by one, yieldingC1 = 00001
andD1 = 11000
.C1
andD1
are joined intoCD1 = 1100011000
.CD1
is transformed usingP8
, yieldingK1 = 10100100
.
In the first round,
C1
andD1
each are rotated on the left by two, yieldingC2 = 00100
andD2 = 00011
.C2
andD2
are joined intoCD2 = 0010000011
.CD2
is transformed usingP8
, yieldingK2 = 01000011
.