Lecture 3: Modes of Operation và Padding
Scheme
Lecture 3: Modes of Operation và Padding
Scheme
I. C
I. C
á
á
c ki
c ki
ể
ể
u thao t
u thao t
á
á
c (Modes of Operation)
c (Modes of Operation)
II. C
II. C
á
á
c ki
c ki
ể
ể
u ch
u ch
è
è
n b
n b
ổ
ổ
sung thông tin (Padding Scheme)
sung thông tin (Padding Scheme)
I. Các kiểu thao tác (Modes of Operation)
I. C
I. C
á
á
c ki
c ki
ể
ể
u thao t
u thao t
á
á
c (Modes of Operation)
c (Modes of Operation)
C
C
á
á
c h
c h
ệ
ệ
m
m
ậ
ậ
t mã thư
t mã thư
ờ
ờ
ng mã h
ng mã h
ó
ó
a d
a d
ữ
ữ
li
li
ệ
ệ
u theo th
u theo th
à
à
nh kh
nh kh
ố
ố
i
i
(block) c
(block) c
ó
ó
k
k
í
í
ch thư
ch thư
ớ
ớ
c c
c c
ố
ố
đ
đ
ị
ị
nh (v
nh (v
í
í
d
d
ụ
ụ
như
như
64 ha
64 ha
y 1
y 1
28
28
bit).
bit).
Đ
Đ
ể
ể
mã h
mã h
ó
ó
a c
a c
á
á
c thông đi
c thông đi
ệ
ệ
p d
p d
à
à
i, ta c
i, ta c
ó
ó
th
th
ể
ể
chia th
chia th
à
à
nh
nh
nhi
nhi
ề
ề
u block v
u block v
à
à
c
c
ó
ó
th
th
ể
ể
s
s
ử
ử
d
d
ụ
ụ
ng c
ng c
á
á
c ki
c ki
ể
ể
u thao t
u thao t
á
á
c kh
c kh
á
á
c
c
nhau (
nhau (
modes
modes
of
of
operation
operation
)
)
đ
đ
ố
ố
i v
i v
ớ
ớ
i c
i c
á
á
c block n
c block n
à
à
y.
y.
Các kiểu thao tác (Modes of Operation)
C
C
á
á
c ki
c ki
ể
ể
u thao t
u thao t
á
á
c (Modes of Operation)
c (Modes of Operation)
C
C
á
á
c ki
c ki
ể
ể
u thao t
u thao t
á
á
c đ
c đ
ầ
ầ
u tiên đư
u tiên đư
ợ
ợ
c đ
c đ
ề
ề
ngh
ngh
ị
ị
(
(
ECB, CB
ECB, CB
C,
C,
OFB, CF
OFB, CF
B)
B)
đ
đ
ả
ả
m b
m b
ả
ả
o t
o t
í
í
nh b
nh b
í
í
m
m
ậ
ậ
t (
t (
confidentiality
confidentiality
),
),
nhưng không gi
nhưng không gi
ú
ú
p đ
p đ
ả
ả
m b
m b
ả
ả
o t
o t
í
í
nh to
nh to
à
à
n v
n v
ẹ
ẹ
n thông tin
n thông tin
(
(
message
message
integrity
integrity
)
)
C
C
á
á
c ki
c ki
ể
ể
u thao t
u thao t
á
á
c đư
c đư
ợ
ợ
c thi
c thi
ế
ế
t k
t k
ế
ế
cho ph
cho ph
é
é
p (
p (
CCM
CCM
,
,
EAX
EAX
v
v
à
à
OCB
OCB
) v
) v
ừ
ừ
a đ
a đ
ả
ả
m b
m b
ả
ả
o t
o t
í
í
nh b
nh b
í
í
m
m
ậ
ậ
t, v
t, v
ừ
ừ
a đ
a đ
ả
ả
m b
m b
ả
ả
o
o
x
x
á
á
c đ
c đ
ị
ị
nh t
nh t
í
í
nh to
nh to
à
à
n v
n v
ẹ
ẹ
n thông tin.
n thông tin.
I.1 Electronic codebook (ECB)
I.1 Electronic codebook (ECB)
I.1 Electronic codebook (ECB)
Ki
Ki
ể
ể
u mã h
u mã h
ó
ó
a đơn gi
a đơn gi
ả
ả
n nh
n nh
ấ
ấ
t l
t l
à
à
electronic
electronic
codebook
codebook
(
(
ECB
ECB
)
)
Thông đi
Thông đi
ệ
ệ
p c
p c
ầ
ầ
n mã h
n mã h
ó
ó
a đư
a đư
ợ
ợ
c chia th
c chia th
à
à
nh t
nh t
ừ
ừ
ng đo
ng đo
ạ
ạ
n,
n,
m
m
ỗ
ỗ
i đo
i đo
ạ
ạ
n đư
n đư
ợ
ợ
c mã h
c mã h
ó
ó
a đ
a đ
ộ
ộ
c l
c l
ậ
ậ
p nhau.
p nhau.
H
H
ạ
ạ
n ch
n ch
ế
ế
: c
: c
á
á
c kh
c kh
ố
ố
i c
i c
ó
ó
c
c
ù
ù
ng n
ng n
ộ
ộ
i dung
i dung
, sau khi mã ho
, sau khi mã ho
á
á
xong c
xong c
ũ
ũ
ng t
ng t
ạ
ạ
o th
o th
à
à
nh c
nh c
á
á
c kh
c kh
ố
ố
i
i
k
k
ế
ế
t qu
t qu
ả
ả
gi
gi
ố
ố
ng h
ng h
ệ
ệ
t
t
nhau
nhau
Î
Î
Không che gi
Không che gi
ấ
ấ
u đư
u đư
ợ
ợ
c c
c c
á
á
c
c
“
“
m
m
ẫ
ẫ
u
u
”
”
d
d
ữ
ữ
li
li
ệ
ệ
u
u
(data pattern)
(data pattern)
.
.
Không khuy
Không khuy
ế
ế
n kh
n kh
í
í
ch s
ch s
ử
ử
d
d
ụ
ụ
ng
ng
ECB
ECB
trong c
trong c
á
á
c giao
c giao
th
th
ứ
ứ
c mã h
c mã h
ó
ó
a
a
Electronic codebook (ECB)
Electronic codebook (ECB)
Electronic codebook (ECB)
Electronic codebook (ECB)
Electronic codebook (ECB)
Electronic codebook (ECB)
I.2 Cipher-block chaining (CBC)
I.2 Cipher
I.2 Cipher
-
-
block chaining (CBC)
block chaining (CBC)
Trong ki
Trong ki
ể
ể
u mã h
u mã h
ó
ó
a
a
cipher
cipher
-
-
block chaining
block chaining
(CBC)
(CBC)
:
:
M
M
ỗ
ỗ
i kh
i kh
ố
ố
i plaintext đư
i plaintext đư
ợ
ợ
c
c
XOR
XOR
v
v
ớ
ớ
i kh
i kh
ố
ố
i ciphertext
i ciphertext
trư
trư
ớ
ớ
c khi đư
c khi đư
ợ
ợ
c mã h
c mã h
ó
ó
a.
a.
Như v
Như v
ậ
ậ
y, m
y, m
ỗ
ỗ
i kh
i kh
ố
ố
i ciphertext ph
i ciphertext ph
ụ
ụ
thu
thu
ộ
ộ
c v
c v
à
à
o t
o t
ấ
ấ
t c
t c
ả
ả
c
c
á
á
c kh
c kh
ố
ố
i plaintext xu
i plaintext xu
ấ
ấ
t hi
t hi
ệ
ệ
n t
n t
ừ
ừ
đ
đ
ầ
ầ
u đ
u đ
ế
ế
n th
n th
ờ
ờ
i đi
i đi
ể
ể
m
m
đ
đ
ó
ó
Đ
Đ
ể
ể
đ
đ
ả
ả
m b
m b
ả
ả
o t
o t
í
í
nh duy nh
nh duy nh
ấ
ấ
t c
t c
ủ
ủ
a m
a m
ỗ
ỗ
i thông đi
i thông đi
ệ
ệ
p đư
p đư
ợ
ợ
c
c
mã h
mã h
ó
ó
a, ta s
a, ta s
ử
ử
d
d
ụ
ụ
ng thêm vector kh
ng thêm vector kh
ở
ở
i t
i t
ạ
ạ
o
o
(
(
initialization vector
initialization vector
)
)
Cipher-block chaining (CBC)
Cipher
Cipher
-
-
block chaining (CBC)
block chaining (CBC)
C
C
0
0
= IV
= IV
C
C
i
i
=
=
E
E
K
K
(
(
P
P
i
i
⊕
⊕
C
C
i
i
–
–
1
1
)
)
Cipher-block chaining (CBC)
Cipher
Cipher
-
-
block chaining (CBC)
block chaining (CBC)
C
C
0
0
= IV
= IV
P
P
i
i
=
=
D
D
K
K
(
(
C
C
i
i
)
)
⊕
⊕
C
C
i
i
–
–
1
1
Cipher-block chaining (CBC)
Cipher
Cipher
-
-
block chaining (CBC)
block chaining (CBC)
CBC l
CBC l
à
à
ki
ki
ể
ể
u mã h
u mã h
ó
ó
a thư
a thư
ờ
ờ
ng đư
ng đư
ợ
ợ
c s
c s
ử
ử
d
d
ụ
ụ
ng nh
ng nh
ấ
ấ
t
t
H
H
ạ
ạ
n ch
n ch
ế
ế
: x
: x
ử
ử
lý tu
lý tu
ầ
ầ
n t
n t
ự
ự
, không th
, không th
ể
ể
song song h
song song h
ó
ó
a
a
c
c
ó
ó
th
th
ể
ể
ch
ch
ọ
ọ
n gi
n gi
ả
ả
i ph
i ph
á
á
p
p
counter mode
counter mode
đ
đ
ể
ể
x
x
ử
ử
lý song
lý song
song
song
I.3 Propagating cipher-block chaining (PCBC)
I.3 Propagating cipher
I.3 Propagating cipher
-
-
block chaining (PCBC)
block chaining (PCBC)
Ki
Ki
ể
ể
u mã h
u mã h
ó
ó
a
a
propagating cipher
propagating cipher
-
-
block chaining
block chaining
đư
đư
ợ
ợ
c thi
c thi
ế
ế
t k
t k
ế
ế
cho ph
cho ph
é
é
p s
p s
ự
ự
ả
ả
nh hư
nh hư
ở
ở
ng lan truy
ng lan truy
ề
ề
n nhi
n nhi
ề
ề
u
u
hơn trong ki
hơn trong ki
ể
ể
u CBC.
u CBC.
P
P
0
0
= IV,
= IV,
C
C
0
0
= 0,
= 0,
C
C
i
i
=
=
E
E
K
K
(
(
P
P
i
i
⊕
⊕
P
P
i
i
–
–
1
1
⊕
⊕
C
C
i
i
–
–
1
1
)
)
P
P
0
0
= IV,
= IV,
C
C
0
0
= 0,
= 0,
P
P
i
i
=
=
D
D
K
K
(
(
C
C
i
i
)
)
⊕
⊕
P
P
i
i
–
–
1
1
⊕
⊕
C
C
i
i
–
–
1
1
PCBC thư
PCBC thư
ờ
ờ
ng đư
ng đư
ợ
ợ
c d
c d
ù
ù
ng ch
ng ch
ủ
ủ
y
y
ế
ế
u trong
u trong
Kerberos
Kerberos
v
v
à
à
WASTE
WASTE
(ngo
(ngo
à
à
i ra th
i ra th
ì
ì
í
í
t thông d
t thông d
ụ
ụ
ng !)
ng !)