E $B%S%C%HA*Br=hM}$K$h$j!"(BR$B!'(B32$B%S%C%H$+$i(B48$B%S%C%H$N=PNO$rF@$k!#(B
$B!!!!0J2<$N%F!<%V%k$rMQ$$$F:n@.$9$k!#(B
32 1 2 3 4 5
4 5 6 7 8 9
8 9 10 11 12 13
12 13 14 15 16 17
16 17 18 19 20 21
20 21 22 23 24 25
24 25 26 27 28 29
28 29 30 31 32 1
E $B%S%C%HA*Br=hM}$K$h$jF@$i$l$?(B48$B%S%C%H$HI{80(BK$B$r%S%C%HKh$KGSB>E*(B
$BO@M}OB$r$H$k!#(B
$BGSB>E*O@M}OB$K$h$jF@$i$l$?(B48$B%S%C%H$r(B6$B%S%C%HKh$KJ,3d$7!":8$+$i=gHV(B
$B$K(B S1, S2, ... , S8 $B$N3F4X?t$KF~NO$9$k!#(BS$B4X?t$N=PNO$O3F(B4$B%S%C%H$G$"$k$?(B
$B$a!"(BS$B4X?tDL2a8e$O(B32$B%S%C%H$K$J$k!#(B
S$B4X?t$N=hM}FbMF$r!"(BS1$B$rNc$K$7$F@bL@$9$k!#(B
S$B4X?t$X$NF~NO$r(BSin$B$H$9$k$H$-!"0J2<$NJQ49%F!<%V%k$rMQ$$$F(B4$B%S%C%H$KJQ49(B
$B$9$k!#(B
Row Column Number
No.| 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
--------------------------------------------------
0 | 14 4 13 1 2 15 11 8 3 10 6 12 5 9 0 7
1 | 0 15 7 4 14 2 13 1 10 6 12 11 9 5 3 8
2 | 4 1 14 8 13 6 2 11 15 12 9 7 3 10 5 0
3 | 15 12 8 2 4 9 1 7 5 11 3 14 10 0 6 13
$BJQ49J}K!$O0J2<$N$H$*$j$G$"$k!#(B
- Sin[1] $B$H(B Sin[6] $B$rO"7k$7$F(B2$B?J?t$H$7$F
$B$3$l$r(B Row No. $B$H$9$k!#(B
- Sin[2:5] $B$N(B4$B%S%C%H$r(B2$B?J?t$H$7$F
$B$3$l$r(B Column Nunber $B$H$9$k!#(B
- Row $B$H(B Column $B$+$i7hDj$5$l$k(B10$B?J?tCM$r(B4$B%S%C%H$N(B2$B?J?tCM$H$7!"(B
$B$3$l$r(B S$B4X?t$N=PNO$H$9$k!#(B
S$B4X?t$N=PNO(B32$B%S%C%H$KBP$7(BP$B=hM}$r9T$$!"(B32$B%S%C%H$N7k2L$rF@$k!#(B
P$B=hM}$O!"0J2<$N%F!<%V%k$rMQ$$$F%S%C%H$NJB$S49$($r9T$&!#(B
$B$3$N=PNO$r(Bf$B4X?t$N=PNO$H$9$k!#(B
16 7 20 21
29 12 28 17
1 15 23 26
5 18 31 10
2 8 24 14
32 27 3 9
19 13 30 6
22 11 4 25
$B:G8e$K!"(BS2$A!+(BS8$B$N%F!<%V%k$r<($9!#(B
S2
15 1 8 14 6 11 3 4 9 7 2 13 12 0 5 10
3 13 4 7 15 2 8 14 12 0 1 10 6 9 11 5
0 14 7 11 10 4 13 1 5 8 12 6 9 3 2 15
13 8 10 1 3 15 4 2 11 6 7 12 0 5 14 9
S3
10 0 9 14 6 3 15 5 1 13 12 7 11 4 2 8
13 7 0 9 3 4 6 10 2 8 5 14 12 11 15 1
13 6 4 9 8 15 3 0 11 1 2 12 5 10 14 7
1 10 13 0 6 9 8 7 4 15 14 3 11 5 2 12
S4
7 13 14 3 0 6 9 10 1 2 8 5 11 12 4 15
13 8 11 5 6 15 0 3 4 7 2 12 1 10 14 9
10 6 9 0 12 11 7 13 15 1 3 14 5 2 8 4
3 15 0 6 10 1 13 8 9 4 5 11 12 7 2 14
S5
2 12 4 1 7 10 11 6 8 5 3 15 13 0 14 9
14 11 2 12 4 7 13 1 5 0 15 10 3 9 8 6
4 2 1 11 10 13 7 8 15 9 12 5 6 3 0 14
11 8 12 7 1 14 2 13 6 15 0 9 10 4 5 3
S6
12 1 10 15 9 2 6 8 0 13 3 4 14 7 5 11
10 15 4 2 7 12 9 5 6 1 13 14 0 11 3 8
9 14 15 5 2 8 12 3 7 0 4 10 1 13 11 6
4 3 2 12 9 5 15 10 11 14 1 7 6 0 8 13
S7
4 11 2 14 15 0 8 13 3 12 9 7 5 10 6 1
13 0 11 7 4 9 1 10 14 3 5 12 2 15 8 6
1 4 11 13 12 3 7 14 10 15 6 8 0 5 9 2
6 11 13 8 1 4 10 7 9 5 0 15 14 2 3 12
S8
13 2 8 4 6 15 11 1 10 9 3 14 5 0 12 7
1 15 13 8 10 3 7 4 12 5 6 11 0 14 9 2
7 11 4 1 9 12 14 2 0 6 10 13 15 3 5 8
2 1 14 7 4 10 8 13 15 12 9 0 3 5 6 11
Key Schedule (KS) $B$K$h$kI{80@8@.(B
KS$B=hM}$O!"(B64$B%S%C%H$N80(BKEY$B$rF~NO$7!"(B48$B%S%C%HD9$G(B16$B8D$NI{80!J(BK1$A!+(BK16$B!K$r@8@.(B
$B$9$k!#(B
$B?^(B3$B$K(BKS$B=hM}$NN.$l$r<($9!#(B
$B?^(B3$B!'(BKey Schedule (KS) $B$N=hM}(B
$BI{80(BK1$A!+(BK16$B$O0J2<$N
$B80(BKEY$B$KBP$7(B Permuted Choice 1 $B=hM}$r9T$&!#(B
PC-1 $B=hM}$O$r9T$&:]$K$O!"(B64$B%S%C%H$N(BKEY$B$KBP$7$F!"0J2<$N(BPC-1C$B%F!<%V%k$r(B
$BMQ$$$F%S%C%H$NJB$SJQ$($r9T$$!"(B28$B%S%C%H$N(BC0$B$rF@$k!#(B
$B$^$?!"(B64$B%S%C%H$N(BKEY$B$KBP$7$F!"0J2<$N(BPC-1D$B%F!<%V%k$rMQ$$$F%S%C%H$NJB$S(B
$BJQ$($r9T$$!"(B28$B%S%C%H$N(BD0$B$rF@$k!#(B
PC-1C
57 49 41 33 25 17 9
1 58 50 42 34 26 18
10 2 59 51 43 35 27
19 11 3 60 52 44 36
PC-1D
63 55 47 39 31 23 15
7 62 54 46 38 30 22
14 6 61 53 45 37 29
21 13 5 28 20 12 4
28$B%S%C%H$N(BC0$B$*$h$S(BD0$B$KBP$7$F8D!9$K:8%m!<%F!<%H%7%U%H$r9T$$!"%7%U(B
$B%H8e$N7k2L$H$7$F!"(BC1$B$*$h$S(BD1$B$rF@$k!#(B
$B:8%m!<%F!<%H%7%U%H$N%7%U%HNL$O(B1$B%S%C%H$^$?$O(B2$B%S%C%H$G$"$j!"2?2sL\$N%m!<(B
$B%H!<%H%7%U%H$r9T$&$+$K$h$C$F%7%U%HNL$,0[$J$k!#(B
$B%7%U%HNL$O!"0J2<$N$h$&$K;XDj$5$l$F$$$k!#(B
$B2s?t!'(B 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
$B%7%U%HNL!'(B 1 1 2 2 2 2 2 2 1 2 2 2 2 2 2 1
$BNc$($P!"(B1$B2sL\$N%7%U%H$G!"(BC1$B$*$h$S(BD1$B$r5a$a$k$H$-$N%7%U%HNL$O(B1$B$H$9$k!#(B
$B$^$?!"(B3$B2sL\$N%7%U%H$G!"(BC3$B$*$h$S(BD3$B$r5a$a$k$H$-$N%7%U%HNL$O(B2$B$H$9$k!#(B
$B%7%U%H$7$?7k2L(BC1$B$*$h$S(BD1$B$KBP$7$F!"(BPermuted Choice 2 $B=hM}$r9T$&!#(B
PC-2$B=hM}$O!"(BC1$B$H(BD1$B$rO"7k$7$?(B56$B%S%C%H$KBP$7$FJB$S49$($r9T$$!"(B48$B%S%C%H$N(B
$BI{80(BK1$B$rF@$k!#(B
$BJB$S49$($N:]$K$O!"0J2<$N%F!<%V%k$rMQ$$$k!#(B
14 17 11 24 1 5
3 28 15 6 21 10
23 19 12 4 26 8
16 7 27 20 13 2
41 52 31 37 47 55
30 40 51 45 33 48
44 49 39 56 34 53
46 42 50 36 29 32
$B>e5-!"(B2.$A!+(B3.$B$N
$B;29MJ88%(B
DATA ENCRYPTION STANDARD (DES)
FEDERAL INFORMATION PROCESSING STANDARDS PUBLICATION (FIPS PUB 46-3),
U.S. DEPARTMENT OF COMMERCE/National Institute of Standards and
Technology,
Oct. 25, 1999.
http://csrc.nist.gov/publications/fips/fips46-3/fips46-3.pdf