Title: E-mail: hjbin@infosec.pku.edu.cn
1?????(2)
- ???
- ??????????????
- E-mail hjbin_at_infosec.pku.edu.cn
- http//infosec.pku.edu.cn/hjbin
2 3??????(Data Encryption Standard,DES)
4??
- ?????IBM?? W. Tuchman ? C. Meyer
- 1971-1972?????
- ??1967???Horst Feistel?????
- ?????????(NBS)1973?5??1974?8???????,
- ?????????????????????????????
- ?IBM?LUCIFER??
- ???DES??1975?3?????,1977?1?15???????
- ???????????(Data Encryption
Standard),? - 1977?7?15???
5??
- ???????(NSA, National Security Agency)????????????
??????????NBS???NSA?????,???????,???????LUCIFER???
?128????56? - 1979?,??????????DES
- 1980?,DES?????????(ANSI)??
- 1984?2?,ISO????????????(SC20)?DES????????????????
6DES??
- ????????????64?????
- ?????????????????,??????
- ????56?,????8???????,???
- ???????56??,??????,????
- ??????????,??????????,?16?
- ??????????????,????
7DES?????????
8DES????
9DES????
?i??????,??????2??,f?????
10DES????
?i??????,??????2??,f?????
11DES????????????
12????IP??????IP1
13IP?IP1
IP
IP1
14DES? ????
15????E-?-32????48?
??
16????S-?-48????32?
?8?S?
17S-?1
S-?5
S-?6
S-?2
S-?3
S-?7
S-?4
S-?8
18S-????
19S-????
- DES??????????,?S-?????????
- S-??????,??????????
- ??S-?????????
20S-??????
- S????????0,,15?????
- ????S????????????
- ??S???????????????????
- ?????S????????X,S(X)? S(X?001100)?????????(??X???
?6????) - ?????S?,????????e,f??0,1,S(X) S(X?11ef00)
- ?????S?,??????????,????????????,???????0?????????
???????1?????
21S-??????
- S-????????????????,??,??????????????????
- ???????????????
- ?????????S-????????????S-???????????????
- ??????????????????????????
22??p-????
23p-??????
- P????????????
- ??????????????????????
24DES????????
25???????????
- ?????????????????
- ????
- ??
- ???????( ??????????????,??????????????)
- ????????????????????????
- ?????????????????????????
- ?????
26DES? ????
27DES?????????
28DES?????
29- ????? ECB (electronic codebook mode)
- ?????? CBC (cipher block chaining)
- ???? CFB (cipher feedback)
- ???? OFB (output feedback)
30?????ECB
31ECB???
- ?????
- ??????
- ???????????
- ??????????,????????????
- ????????????
- ????????????????
- ??????????????????
- ????????
32??????CBC
33CBC???
- ???????????
- ??????????
- ??????????IV
- ??????????
- ?????IV?????????
- ?????????????
- ??????????????????
- ????????????????
- ?????ECB
- ?????????64????,?????????,????????? SSL?IPSec
34????CFB
- CFB????????
- ??Si ??????,?????jbit
- ?? Ci Pi?(EK(Si)??j?)
- Si1(Siltltj)Ci
- ?? PiCi?(EK(Si)??j?)
- Si1(Siltltj)Ci
35Ci Pi?(EK(Si)??j?) Si1(Siltltj)Ci
????CFB??
36PiCi?(EK(Si)??j?) Si1(Siltltj)Ci
????CFB??
37CFB???
- ????????
- ???????????
- ???????
- ?????????????IV
- ???????,IV????
- ????????????????
38????OFB
- OFB????????
- ??Si ??????,?????jbit
- ?? Ci Pi?(EK(Si)??j?)
- Si1(Siltltj)(EK(Si)??j?)
- ?? PiCi?(EK(Si)??j?)
- Si1(Siltltj)(EK(Si)??j?)
39Ci Pi?(EK(Si)??j?)Si1(Siltltj)(EK(Si)??j?)
????OFB??
40PiCi?(EK(Si)??j?) Si1(Siltltj)(EK(Si)??j?)
????OFB??
410FB???
- ????????
- ???????????
- ???????
- ?????????????IV
- ???????,IV????
- ?????????????????
- ????????????
- ????????????????
- ????CFB?
42??DES
43??DES
44??DES
45DES????
46- F??(S-Box)??????
- ???????
- DES???
- ????????
47DES????
- ??DES???????????????????56?????????????????,??????
? ? - ??1977?,Diffie?Hellman????????????100?????VLSI????
???100????????????????????????????????????????2000
???
48DES????
- ?CRYPTO93?,Session?Wiener?????????????????????,??
???????????????,??16???????????10???,???1.5???????
DES?? - ???????????Verser?1997?2?18??,??96???,?Internet???
??????????,??????DES???,??????1???
49DES????
- 1998?7????????(EFF)????25???????56??????56?????DES
- 1999?1?RSA????????,????????22??15??????????DES???
50??DES
- 1990?,???????Eli Biham?Adi Shamir??????????,??DES?
??????? - ????????????????
51????????
- ??? EK?EK I ,DES??4????
- ?
- ???? EK1 EK2 ,???12?????
- ?
52??????????
53- Triple DES
- IDEA
- RC5
- RC6
- AES
- ??????????,?Blowfish,CAST,??RC2?
54????????????
55???????
???? ???
???
56??????????
57?????????????
58???????????
59?????
- ??????????????????,???????????????????
- ??????????????,?????????????????,?????????????????
???,?????
60????????
- ?????????????????????????,??,?????????????????????
???????,??????????????????? - ??????????????????????????????????,???????????????
??,???????????????
61????????
- ????????????????????,???????????????????,?????????
????????????????????????????????? - ???????,????????????????,?????????,???????????????
?,?????????? - ?????????,?????????????????????,??????????,???????
??????,???????????????????,???????????????????????
???,??????????????????????????????????????????????
?,???????????????
62????
- ????????????????????????????????????????????????
???,??????????????????????,????????????? - ??,???????,?????????????????????,????????????,????
????????????,??????????????????? - ????????????????????,?????????????????????????????
?????????????
63?????
- ???????????????????????????????
- ???????(??????????),??????????????????,???????????
??????,??????????????????
64????????
- ?????????????,???????????????,???????????
- ??????????????????????,???????????????,???????????
?????????????? - ?????????????,?????????????????????????,??????????
???,??????????????????
65????????
- ?????????????????,??????????????????????????????
- ???????????????????????,????????????????????
66 67??????
- ????????????,??????????,????????
- ???????????,????????
- ???????,????????????????????????20?????,?????????
??,????????????????????????
68?????????
- ??????1976??Diffie?Hellman??????????????,???
-
- W.Diffie and M.E.Hellman,
- New Directrions in Cryptography,
- IEEE Transaction on Information Theory,
- V.IT-22.No.6, Nov 1976, PP.644-654
69?????????
- RSA??????Rivest,Shamir?Adleman?1978?????
- ??Communitions of the ACM. Vol.21.No.2. Feb.
1978, PP.120-126 - ???????????????Euler(??)??,???????????????
70???????????
- ?????????????
- ??
- ??
- ??????,????????????????????
- ????????????????????????(?????)
71???????????
72?????????
-
- ??????????(KU,KR)
- ?? KU??,??KR??
-
-
73???????????
74?????????
- ???????????????????????????
- ??
-
- ????
-
75??????
- ?????????,??????????
- ????????(IFP)?????
- ????????(DLP)????
- ????????????(ECDLP)?????
76Diffie-Hellman??????
77????????
- ?????????f
- (1) ??x,??yf(x)????
- (2) ??y, ??x?yf(x)????
- (3) ??z,??z ?, ??????y,????x?
- ?,???x?yf(x)????
- ????x f-1(Y)???????????,??????
78????????
- ???(1)?(2)??????????(3)??????,z ??????
- ??????f???????,??f??,??????????,????????????,??Pk
- f???????z??,??????,??z??????,??Sk????????Sk,??????
?xf-1(y) - ????????(2)??????????????yf(x)??x?????
79Diffie-Hellman??????
- Diffie?Hellman???????????,??????????,?????????????
?????,?????????????????? - ??,???????????,???????Diffie-Hellman??????
80Diffie-Hellman?????????
- ?????????????????????F????,g?F?F????
FF\0ltggt,????????x,??gx????????g?y?x?y
gx,?????????? - ?????????F???????????????????????????FP
81Diffie-Hellman????????
- Alice?Bob????????p,?????g,1ltgltp,g???FP?????,?FPlt
ggt - p?g????,????????????
82Diffie-Hellman????????
- ?Alice?Bob????????,???????????
- (1) Alice???????x,??? X gx(mod P)
- (2) Bob???????x?,??? X ? gx ?(mod P)
- (3) Alice?X???BobBob?X ????Alice
- (4) Alice??K (X ?)X(mod P) Bob??K ? (X)
X ?(mod P), - ??,K K ? g xx ?(mod P)
- ?(4)?,Alice?Bob??????????K
- ???K?????????????????????
83RSA ??
84Euler ??
- ???m?r??????????r
- ???r???????m????????r?m??
- ?m?????????f(m)??,?m?Euler??
- ?m????,??m???????m??,??f(m)m-1
- ?npq, p?q ???,f(n)f(p)f(q)(p-1)(q-1)
85Euler ????
?p3, q5, ?? f(15)(3-1)(5-1)8
?8??15????? 1,2,4,7,8,11,13,14
86RSA?????
- ???????Bob????
- (1) Bob????????p?q
- (2) Bob???npq ?f(n)(p-1)(q-1)
- (3) Bob???????e (0ltelt f(n)),??(e,f(n))1
- (4) Bob?????????de-1(modf(n))
- (5) Bob??????n?e????
- ???????RSA????????????n???
- ????npq,?????f(n)(p-1)(q-1),????
- ??e,?????d
87RSA????
- ??TN
- ??SKD
- ??PKE
- ???M,??C,??
- ?????ME mod N C
- ?????MD mod N M
88RSA????
- ? p7, q17, n717119 ??Tn119
- f(n)(7-1)(17-1)96
- ??e5, gcd(5,96)1 ??pk5
- ??d, ( de) mod 961 d77 ??sk77
- ???m19
- ??(19)5 mod 119 66
- ??(66)77 mod 119 19
89RSA????????
- ???????RSA????????????n
- ??????npq,?????f(n)(p-1)(q-1),??????e,?????d
- ??RSA??,p?q????????,????????????????n????
90RSA????????
- ????p?q???100???????
- ?n????????512??
- EDI???????RSA?????n????512?1024?????,????128???
- ????????ISO/IEC 9796???n????512???
91RSA????????
?????????????,?RSA?n????p?q??????
(1) p-q??,?? p?q????? (2) p-1
?q-1????????p1?q1 (3) P1-1?q1-1????????p2
?q2 (4) p1?q1????????p3?q3
92RSA????????
- ????????,???e???????
- ?EDI??????? e2161
- ISO/IEC9796??????e3
- ??????????????10???