Академический Документы
Профессиональный Документы
Культура Документы
n
n
f g n
N g(n) = O(f (n))
c N n > N g(n) cf (n)
O(f (n)) g(n) =
O(f (n)) g(n) O(f (n))
f g
5n2 + 15 = O(n2 ) 5n2 + 15 6n2 n 4
5n2 + 15 = O(n3 ) 5n2 + 15 n3 n 6
O(5n + 4)
O(n) O(log n)
loga n = loga (blogb n ) = logb n loga b.
O(1)
> 1
f (n)
a > 1 c > 0
f (n)c = O af (n) .
f (n) = n
nc = O(an ) f (n) = loga n
log
c
(loga n) = O a a n ) = O(n)
O
O(f (n)) + O(g(n)) =
O(f (n))O(g(n)) =
h(n) r(n)
O(f (n)) s(n) O(g(n)) h(n) = r(n)s(n)
O(f (n)g(n)) r(n) = O(f (n)) s(n) = O(g(n))
N1 N2 c1 c2 n > N1 r(n) <
c1 f (n) n > N2 s(n) < c2 g(n) N = max{N1 , N2 }
c = max{c1 , c2 , c1 c2} r(n)+ s(n) < c f (n) + g(n) r(n)s(n) < cf (n)g(n)
r(n) + s(n) = O f (n) + g(n) r(n)s(n) = O f (n)g(n) O
f (n) =
O(r(n)) g(n) = O(s(n)) f (n) g(n) = O r(n) s(n)
f (n)
n f (n) log2 n, n,
n log2 n, n1.5 , n2 , n3 , 1.1n
m m {103 , 104 , 105 , 106 }
n = 1000
f (n)
f (n)
m
log2 n
103
104
105
106
0.01
0.001
0.0001
0.00001
n log2 n
1.0
10.0
0.1
1.
0.01
0.1
0.001
0.01
n1.5
32.0
3.2
0.32
0.032
n3
1.1n
1000 106
100 105
10 104
1 103
1039
1038
1037
1036
n2
f (n)
m n = 1000
g(n)
T (n) T (n) = (g(n)) c N
(n)
limn fg(n)
= 0 f (n) = o(g(n))
n
n
= o(n)
log2 n = o(n) 10
f (n) a > 1 c > 0
f (n)c = o af (n) .
O(f (n))
O(f (n))
O(n)
O(1)
i 1, 2, . . . , n i
f (i) ni=1 f (i)
A
B
P
P
P
C
P
E P
C C = E(P ) D C
P P = D(C)
D(E(P )) = P
k
C = Ek (P ) P = Dk (C)
k Dk (Ek (P )) = P
k1 k2
C = Ek1 (P ) P = Dk2 (C) Dk2 (Ek1 (P )) = P
Ek (P ) = C Dk (C) = P
64
8
C = Ek (P )
C = Dk (P )
CRC(P )
32 64
Ea Da Eb Db
A B Eb (P )
A B Da (CRC(P )) B
Eb (P ) Db CRC(P )
Da (CRC(P )) Ea
Da A
C1 = Ek (P1 ) C2 = Ek (P2 ) Cn = Ek (Pn )
P1 P2 Pn k Pn+1 Cn+1 =
Ek (Pn+1 )
P1 , C1 = Ek (P1 ) P2 , C2 =
Ek (P2 ) Pn , Cn = Ek (Pn ) k
Pn+1 Cn+1 = Ek (Pn+1 )
a
P1 , C1 = Ek (P1 ) P2 , C2 = Ek (P2 )
Pn , Cn = Ek (Pn ) P1 P2 Pn
k Pn+1
Cn+1 = Ek (Pn+1 )
2128
1016 1010
26
26 A D B E W
Z X A Y B Z C
HAL
IBM
WordPerfect
20
DES RSA
J. Mauborgne, G. Vernam
C
D D
A B C C
E F
1 2
3
4
5
6
7
8
9
L M N O P R S S T
15 16 17 18 19 20 21 22 23
G H
I J K
10 11 12 13 14
U V Z Z
24 25 26 27
27 27
POCNITENAPAD
,
CFGGEAG
TBFRGFARFMZC
. LRJGS
.
BDIZAMNAKRBB
- UCITENAPAM
SUMNJIVOLICE
, BD
SVASTIKINBUT
.
XOR
CD-ROM
650
CD-ROM
DES
DES Data Encryption Standard
20
DES
IBM
NSA National Security Agency
DES
DES
DES
DES
AES Advanced Encryption Standard
DES
DES 64
64 56
DES
DES 16
DES 16
IP
32 16
f
48 16
48 56
48 XOR
2
32 4 8
f f
XOR
DES 16
L0
IP
L 1 = R0
R0
K1
R1 = L0 f (R0 , K1 )
K2
R2 = L1 f (R1 , K2 )
L 2 = R1
L15 = R14
IP 1
K16
L16 = R15
DES
Bi i Li Ri Bi Ki
48 i f
XOR i
Li
Ri1
Ri
Li1 f (Ri1 , Ki )
DES
DES
28
28
28
56
K 48
S
R
32
48
32
28
i1
P +
Ri
Li1
Li
DES
DES
64
56 DES 48
K 1 i 16 56
28
48 56
14 17 33 1 2 35
K 18
i
DES
R 32 48
XOR K
32
DES
4 (b , b , b , b )
6 b b b b
i 1 i 48 i
3 4
21 30 32
i1
5 6 7 8
1 2 3 4
9 10 11 12
13 14 15 16
32
48
2 3 4 5
1
6 7
8 9 10 11
14 15 16 17
20 21 22 23
12 13
18 19
24
DES
DES
DES
DES
K XOR 48
8
S , S , . . . , S 48
6 S S
(b , b , b , b , b , b ) b b 0 3 b b b b
0 15 4
i
1 6
2 3 4 5
S1
S2
S3
S4
S5
S6
S7
S8
DES
S 31
36 XOR K 110011
11
1001 9 10 (4, 10)
S 14 1110 6 110011 4
1110
DES
4
32
4 21 23
3
XOR L 64
16
R L
XOR
6
i1
16
Ri1
Li
Li1
Ri f (Li , Ki )
16
i XOR
K
K , K , . . . , K K , K , . . . , K
4 1 + 12 2 = 28 16
i
16
15
16
DES
DES
DES
DES
NSA
DES
NSA DES
IBM 56
DES
IBM
DES IBM
DES 2
K
DES
56
DES
20
250000
DES
DES
ECB
Electronic Codebook
64 Pi
K Ci = DESK (Pi ) i = 1, 2, . . .
CBC
Cipher Block Chaining
CFB
Cipher Feedback
CBC XOR
Ci = DESK (Pi Ci1 ) i = 1, 2, . . .
C0
64
Pi =
1
DESK
(Ci ) Ci1
CBC
XOR
Ci1
C 0 = I0
Pi
DES
Ci1
C0 = I0
DES 1
+ Pi
DES CBC
CBC
Ci1 Ci1
1
Ci1
Pi1
= DESK
(Ci1
) Ci2
DES
1
Pi = DESK
(Ci ) Ci1
Ci1
CBC
CFB
ASCII
8 CFB
1 CFB
8 CFB i
pi zi
DES
i 1.
DES pi+1
(c7 c6 . . . c0 )
CBC
pi = ci zi = ci DESK (ci8 ci7 . . . ci1 )
i 1.
DES i
DES
K DES
zi
+ ci
K DES
zi
pi
ci
+ pi
DES 8 CFB
DES
DES 64
1 CFB 64
XOR
XOR
DES
RSA
RSA
RSA
Rivest, Shamir i Adleman
RSA
100
200
p q k
k
k
1/ln 10k = 1/(k ln 10)
n = pq
(n) n
n n
p q (pq) = (p 1)(q 1)
e 1 (n)
(n) e p q
(n)
(n)
(n)
d
ed 1 (mod (p 1)(q 1)),
ed 1 = l(p 1)(q 1) l
ed l(p 1)(q 1) = 1
d l
e (p 1)(q 1) 1
O(log n)
(e, n) d p q
RSA
m
0 n1
n
p q 100 n 200 mi
200
ci
ci = mei mod n.
d n
d
i
mi (mod n)
m > 1 a
a(m) 1
(mod m).
r1 , r2 , . . . , rs
m m ari i =
1, 2, . . . , s m {r1 , r2 , . . . , rs }
ari (mod m) arj (mod m) i = j
a(ri rj ) m a
m
s
s
ri rj m i=1 (ari ) i=1 ri (mod m).
s
i=1 ri m
P. Fermat
m p (m) = p 1
ap1 1 (mod p) a p
a ap a (mod p)
a a p
p a ap a p
a1+l(p1) a p l
1+l(p1)(q1)
cdi = med
i = mi
cdi = mi
mi
(mod n).
RSA
p = 47 q = 71 n = pq = 3337.
e (n) = (p 1)(q 1) = 46 70 =
3220. e = 79 d = 791
(mod 3220) 3220 79
3220 = 40 79
79 = 1 60
60 = 3 19
19
=63
3 = 3 1.
+60
+19
+3
+1
3220 79
3220 79
60 19 3 1 = 1963
e = 79
(p 1)(q 1) = 3220
1 = 19 6 3 = 19 6 (60 3 19)
= 6 60 + 19 19 = 6 60 + 19 (79 60)
= 19 79 25 60 = 19 79 25 (3220 40 79)
= 1019 79 25 3220
d = 1019 e n d
p q
m = 6882326879666683,
m1 = 688 m2 = 232 m3 = 687 m4 = 966
m5 = 668 m6 = 3
68879 mod 3337 = 1570 = c1 .
n
e
p q
(p 1)(q 1)
c = me (mod n)
m = cd (mod n)
RSA
c = 1570 2756 2714 2276 2423 0158.
d = 1019
15701019
d
e
RSA
m c e
n
RSA
d
RSA n
120
n 1024 308
RSA
RSA 100 1000 DES
RSA DES
DES
DES RSA
EJCDVTCD
ZNKVDZDUTSDPTSUJA
ASCII
(P, C = DESK (P )) K
{A, B, . . . , Z
}
1ms 1s
DES
x x
) = C
DESK
(P
DESK (P ) = C
A DES C =
DESK2 (DESK1 (P )) P C 64 K1 K2
56 K1 K2 10
(Pi , Ci ) Ci = DESK (DESK (Pi ))
2
1
264 DES 261
NP
O(P (n)) P (n) n
P
O(n10 )
107 n
NP
P
NP
NP NP
NP
NP
NP
NP
NP
k
k
U L U
L
L
L1 L2
U1 U2 L1
L2
u1 U1
u2 U2 u1 L1 u2 L2
u1
U1 U2
u2 u1
L2
L1
AR L2 AL2
u1 U1 AR u2 U2
AL2 u2 L2 u1 L1
L1 L2
L2
L1
L1 L2 L2 L1
L1 L2
L2
L2 L1
L2 L2
L1 L2
P
L1 L2 L2
L3 L1 L3
L1 L2 L3
U1 U2 U3 L1 L2
L2 L3 L1 L3
u1 U1 u2 U2
u3 U3
NP
NP
NP S. A. Cook
M. R. Garey, D. S. Johnson
NP
. . . , 2, 1, 0, 1, 2, 3, . . .
b \
Q
q q q
: (Q \ {q , q }) Q {1, 1}
x
1, 2, . . . , |x| |x| x
q
1
q q q
q = q
q = q Q \ {q , q }
s (q, s)
(q, s) = (q , s , ) s
s = 1
= +1 q q
M
q s
(q, s) M x =
10100
q
10100 M
x x
q L M
L = {x |M x}.
{x {0, 1} | x } ,
x N M
N 4
0
NE
da
ne
da
ne
da
da
ne
da
ne
da
da
q
q0
q1
q2
q3
M = (, Q, )
NP
q0 :
q0 :
q0 :
q0 :
q0 :
q0 :
q1 :
q2 :
qda :
M 10100
M L x
\ L M x
q
0, 1
M x
Z
M x
T : Z Z
x |x| = n
T (n) = max m
,
M x m
M p
n Z T (n) p(n)
P
P = {L| M L = L} .
P
ne
NP
NP
G = (V, E) |V | = n
vi , vj V (vi , vj ) E
d(vi , vj ) B Z+ G
B
(v(1) , v(2) , . . . , v(n) )
n1
i=1
B
NP
u
u
NP
u
S u S
NP
u U
u L S
u (u, S)
u
/ L S
u (u, S)
u S
(u, S)
u
p
u U S
(u, S) p(|u|)
S
S
NP
N nondeterministic
P polynomial
NP
q0
b Q
qne
qda
1, 2, . . . , |x|
q0
q0
qda
qne
qda
x x
M
LM = {x |M
x}.
x LM
qda M
x M TM : Z+ Z+
x LM |x| = n
x M m
TM (n) p(n)
TM (n) = 1
n 1
NP
NP
NP =
LM = L
qne
NP
NP
k
k
NP
NP
P
P=NP
NP
P NP
P=NP
P
NP
X NP
NP X
X NP
NP X NP
NP
NP P P=NP
NP
NP
NP X
NP
X
X NP X NP
NP Y X
Y NP
NP Y Y
X
NP X
NP
R. M. Karp
24 NP
NP
NP NP
NP
NP
SAT
satisability
S
S
S = (x + y + z) (
x + y + z) (
x + y + z)
0 1
1 SAT
S x = 1 y = 1
z = 0 S = 1
SAT NP
SAT NP
NP
NP
SAT
SAT NP
NP
NP
3 SAT
NP
NP
NP
NP NP
SAT
5
NP
G = (V, E)
G G
NP
G = (V, E) k
G k
NP
NP
k
NP NP
NP
G = (V, E)
C G
G
G k G
k
G = (V, E) k
= (V, E)
G
G G
G G
G n = |V |
(G, k)
n k
G
G C = (U, F ) G V \ U
G
U
G
G V \ U G
G k G n k
D G
G
D G
V \ D V \ D
n k
G G
G k
G
G n k
G = (V, E)
D V G D
D
G = (V, E) k
G k
NP
NP
k
(G, k)
NP
V \ U
n k
G U
k
G
G
k G
G |E|
2|E| (v, w) G
vw (v, vw) (w, vw)
G G
vw
v
vz
z
vu
uv
zw
G m G
m D G D
vw
v w v w
vw
D G D
NP
G
D G
C G G
C G C
C
C
3 SAT NP
SAT
3 SAT
SAT SAT 3 SAT
3 SAT NP
E SAT E
C = (x1 + x2 + + xk )
E k 4 xi
C
y1 , y2 , . . . , yk3
3 SAT E
C C
C = (x1 +x2 +y1 )(x3 +
y1 +y2 )(x4 +
y2 +y3 ) (xk2 +
yk4 +yk3 )(xk1 +xk +
yk3 ).
E C C
E E xi
1
yi C C x3 = 1
y1 = 1 y2 = 0
x3 = 1 yi = 0 i > 2 xi = 1
y1 = y2 = = yi2 = 1 yi1 = yi = = yk3 = 0
C = 1 C 1
xi 1
xi 0 C
C = (y1 ) (
y1 + y2 ) (
y2 + y3 ) (
yk4 + yk3 ) (
yk3 )
C = 1 y1 = 1 y2 = 1
yk3 = 1 yk3 = 0 yk3 = 1
NP
C = (x1 + x2 )
C = (x1 + x2 + z)(x1 + x2 + z),
z C = x1
G = (V, E) k
G k
NP
NP
k
SAT
E E = E1 E2 Em
Ei = (x + y + z + w)
Ei
G
G k
E k
SAT
SAT
k
NP
k m
G
E = (x + y + z) (
x + y + z) (y + z)
NP
y
z
SAT (x + y + z) (
x+
y + z) (y + z)
G m E
m E E
1
1
G m
1
x x
1
G = (V, E)
G
G = (V, E)
G
NP
NP
3
NP
3 SAT
E 3 SAT
G E G
M M
T
F A
x Mx x x
A A M
k k + 1
A x
T x F
A x
x
y
3 SAT
1
(x + y + z) x y z
x y z
T x y z O
I
x y z T
x y z A
A x y z
F
NP
A
(
x + y + z) (
x + y + z)
O
I
3 SAT
z
F
(
x + y + z) (
x + y + z)
3 SAT
E
G G
E E
1
T 1 F M T
F A
1 F
NP
A
G G
M
T
G
NP Q
Q NP
NP
Q
Q
SAT Q
Q
NP
NP
Q
Q
NP Q
Q
Q
Q Q
NP
Q
Q
NP
NP
Q Q
NP
S1 , S2 , . . . , Sn
U k
W U k
Si
U V
Si
NP
NP
NP
NP
NP
NP
NP
NP
G W G
W
G k G
k
X Y Z
k M (x, y, z) x X
y Y z Z
M
3 SAT
X x
s(x)
Ranac
S V X
x s(x) v(x)
B X S V
a1 , a2 , . . . , an b k
k
b
NP
NP
NP
NP
NP
NP
P
NP
NP
P NP
NP
NP
3n n
3n
v
w
t
t u u
v w u w
u
1 2
NP
3C
1P, 2Z
4Z
3P
4P
4C
4Z
5C
k
k 1
3 bojenje(G, var U );
G = (V, E) U
{U
begin
if U = V then print
{
; halt
else
U;
for C := 1 to 3 do
if
C then
U;
3 bojenje(G, U )
end
3 bojenje
NP
3
V = U
V = U
k
(k + 1)
k
x = (x1 , x2 , . . . , xn )T
a1 , a2 , . . . , ak n
b1 , b2 , . . . , bk c1 , c2 , . . . , cn
z=
c i xi
i=1
x
aj x bj ,
j = 1, 2, . . . , k,
NP
x NP
NP NP
NP
n x1 , x2 , . . . , xn
xi = 1 vi xi = 0
z = x1 + x 2 + + xn ,
0 xi 1,
i = 1, 2, . . . , n,
xi + xj 1 vi vj (vi , vj )
/ E.
0 1
(0.1, 1, . . . , 0.5) z = 7.8
7
v w
u x
v w u x
NP
x2 = 1
x2 = 1
NP
x2 = 1
v2 0
z = a a
NP
G M G
M M
M
NP
M
M
M M
M M
M
x1 , x2 , . . . , xn 0 1
1
NP
x1
i xi
2m
m
1/2 k
m ni=1 xi > (k 1)/2 k < 2m + 1
k 2m
2 1.7
1.7
1.7
NP
1.22
11
9 m
+ 4 m
11/9
TSP traveling salesman problem
TSP
C1 , C2 , . . . , Cn
n
NP
MCST
TSP
TSP
MCST
TSP
MCST
TSP
NP
TSP
TSP
MCST
TSP MCST
MCST
TSP
TSP
TSP
2k
k
NP
O(n3 )
TSP
TSP
TSP
TSP
TSP
1.5 TSP
Q
TSP |Q|
|Q|
|Q|/2 Q D
D
|Q|
D
v D
Q
Q
Q
|Q| M
D
|Q| |Q|/2
TSP
NP
O(nk )
P=NP