DANH MỤC TÀI LIỆU
Tổng hợp một số thuật toán mã hóa phổ biến
5 thut toán mã hóa ph biến bn nên biết
Bạn đã từng nghe hoc s dng mã hóa và biết tm quan trng của nó như thế nào.
Phn ln các dch v Internet s dụng mã hóa để gi thông tin người dùng an
toàn. Tuy nhiên, mã hóa vn là mt th gì đó khó hiểu. Có nhiu loi mã hóa và
đưc s dng vi nhiu mục đích. Làm thế nào bn biết được kiu mã hóa "tt
nhất”? Chúng ta hãy xem xét cách thc hoạt động ca mt s loi mã hóa chính
sau đây nhé và lý do tại sao bn không nên to mã hóa ca riêng mình.
So sánh kiu mã hóa với độ mnh mã hóa
Nhng thut ng mã hóa như kiểu mã hóa, thuật toán mã hóa và độ mnh mã hóa
thưng khiến người dùng nhm ln, hãy phân tích nó nhé:
Kiu mã hóa: là loại mã hóa liên quan đến cách mã hóa được hoàn thành.
Ví dụ, mã hóa đối xng (asymmetric cryptography) là mt trong nhng kiu
mã hóa ph biến nht trên Internet.
Thut toán mã hóa: Khi nói v đ mạnh mã hóa, chúng ta thường nói v
mt thut toán mã hóa c th. Các thut toán có tên thú v như Triple DES,
RSA hoc AES. Tên thuật toán mã hóa thường đi kèm với giá tr bng s,
như AES-128. Con s này đề cập đến kích thước khóa mã hóa và xác định
thêm độ mnh ca thut toán.
5 thut toán mã hóa ph biến nht
Các loi mã hóa to thành nn tng cho thut toán mã hóa, trong khi thut toán mã
hóa chu trách nhim v độ mnh mã hóa. Chúng ta nói v độ mnh mã hóa theo
bit. Dưới đây là một s thut toán mã hóa ph biến nht.
1. Data Encryption Standard (Tiêu chun mã hóa d liu - DES)
Data Encryption Standard là tiêu chuẩn mã hóa ban đầu ca chính ph M. Ban
đầu nó được cho là không th phá v nhưng sự ra tăng về sc mnh máy tính và
gim chi phí phn cứng đã khiến mã hóa 56-bit li thời. Điều này đặc biệt đúng với
d liu nhy cm.
John Gilmore, người đồng sáng lập EFF, đứng đầu d án Deep Crack, đã nói: “Khi
thiết kế h thống an toàn và cơ sở h tng cho xã hi, hãy lng nghe các nhà mt
mã hc, ch không phi các chính tr gia”. Ông cảnh báo cho những người s dng
mã hóa DES để u trữ d liệu riêng tư rằng thi gian k lục để crack DES ngn,
do đó nên cẩn thn khi dùng.
Tuy nhiên, bn vn s tìm thy DES trong nhiu sn phm vì nó mã hóa mức độ
thp d thc hiện mà không đòi hỏi một lượng ln công sut tính toán.
2. TripleDES
TripleDES (đôi khi được viết là 3DES hoc TDES) là phiên bn DES mới hơn, an
toàn hơn. Khi DES bị crack trong thời gian chưa đầy 23 giờ, người ta nhn ra vn
đề, do vậy, đây là lý do mà TripleDES được sinh ra. TripleDES tăng tốc quy trình
mã hóa bng cách chy DES ba ln.
D liệu được mã hóa, giải mã và sau đó được mã hóa mt ln na, đem đến độ dài
khóa hiu qu 168 bit. Nó đủ dài cho nhng d liu nhy cm nht. Tuy nhiên,
mặc dù TripleDES dài hơn tiêu chuẩn DES nhưng nó cũng có những sai sót.
TripleDES có ba tùy chn khóa:
Tùy chn Key 1: Tt c ba khóa đều độc lập. Phương pháp này cung cp
ờng độ khóa mnh nht: 168 bit.
Tùy chn Key 2: Key 1 và Key 2 là độc lp, trong khi Key 3 ging vi Key
1. Phương pháp này cung cấp cường độ khóa hiu qu là 112 bit (2 × 56 =
112).
Tùy chn Key 3: C ba khóa đều giống nhau. Phương pháp này cung cp
khóa 56 bit.
Tùy chn Key 1 là mnh nht. Tùy chn Key 2 không mạnh, nhưng vẫn cung cp
s bo v nhiều hơn gấp hai ln so vi mã hóa DES. TripleDES là mt thut toán
mã hóa khối, nghĩa là dữ liệu được mã hóa theo một kích thước khi c định. Tuy
nhiên, kích thước khi TripleDES nh 64 bit, làm cho nó hơi nhạy cm vi các
cuc tn công nhất định (như xung đột khi).
3. RSA
RSA (được đặt tên theo người sáng to ca nó là Ron Rivest, Adi Shamir và
Leonard Adleman) là mt trong nhng thuật toán mã hóa khóa công khai đầu tiên.
Nó s dng hàm mã hóa bất đối xng mt chiu.
Thuật toán RSA được s dng rộng rãi trên Internet. Nó là tính năng chính của
nhiu giao thc bao gm SSH, OpenPGP, S/MIME và SSL/TLS. Ngoài ra, trình
duyt s dụng RSA để thiết lp giao tiếp an toàn qua mng không an toàn.
RSA vn rt ph biến do độ dài khóa ca nó. Một khóa RSA thường dài 1024 hoc
2048 bit. Tuy nhiên, các chuyên gia bo mt tin rng không mt nhiu thời gian để
crack RSA 1024 bit, do đó nhiều t chc phi chuyn sang khóa 2048 bit mnh m
hơn.
4. Advanced Encryption Standard (Tiêu chun mã hóa tiên tiến - AES)
Advanced Encryption Standard (AES) hin là tiêu chun mã hóa ca Chính ph
Hoa K s dng. Nó da trên thuật toán Rijndael được phát trin bi hai nhà mt
mã người B, Joan Daemen và Vincent Rijmen. Các nhà mt mã hc người B đã
gi thut toán ca h đến Vin Tiêu chun và K thut Quc gia (National Institute
of Standards and Technology - NIST), cnh tranh vi 14 thuật toán mã hóa khác để
tr thành kiu mt mã tiếp theo sau DES. Rijndael “thắng” và được chn là thut
toán AES được đề xuất vào tháng 10 năm 2000.
AES là thuật toán khóa đối xng và s dng mt mã khối đối xng. Nó bao gm ba
kích thước chính: 128, 192 hoặc 256 bit. Hơn nữa, có các vòng mã hóa khác nhau
cho mỗi kích thước khóa. Mt vòng là quá trình chuyển văn bản thô thành văn bản
mã hóa. Đối vi 128-bit, có 10 vòng (round); 192-bit có 12 vòng, và 256-bit có 14
vòng.
Có nhng cuc tn công lý thuyết chng li thuật toán AES, nhưng tất c đều yêu
cầu lưu trữ d liu c th và thi gian nhất định, do đó không khả thi trong thi
đim hin ti. Ví d, mt cuc tn công vào mã hóa AES cn 38 nghìn t d liu,
nhiều hơn tất c d liệu được lưu trữ trên tt c các máy tính trên toàn thế gii
trong năm 2016. Ưc tính thi gian cn thiết để to tn công brute-force khóa
AES-128 là hàng t năm.
Như vậy, chuyên gia mật mã Bruce Schneier không “tin rằng ai có th khám phá ra
mt cuc tn công đọc được lưu lượng truy cập Rijndael”. Thuật toán mã hóa
Twofish của Schneiers (được tho luận dưới đây) là một đối th ca Rijndael trc
tiếp trong cuc cạnh tranh để chn thut toán an ninh quc gia mi.
5. Twofish
Twofish là tiêu chuẩn được lt vào "vòng chung kết" trong cuc tuyn chn thut
toán an ninh quc gia và thua Rijndael. Thut toán Twofish hoạt động vi các kích
thưc khóa 128, 196 và 256 bit và có cu trúc khóa phc tp khiến nó khó có th b
b khóa.
Các chuyên gia bo mt coi Twofish là mt trong nhng thut toán mã hóa nhanh
nht và là mt la chn tuyt vi cho c phn cng và phn mềm. Hơn nữa, mt
mã Twofish min phí cho tt c người dùng. Nó xut hin trong mt s phn mm
mã hóa min phí tt nht, chng hạn như VeraCrypt (mã hóa ổ đĩa), PeaZip (file
lưu trữ) và KeePass (qun lý mt khu ngun mở), cũng như tiêu chuẩn OpenPGP.
Ti sao không nên to thut toán mã hóa riêng?
Bạn đã thấy mt s thut toán mã hóa tt nht, bi vì v cơ bản chúng không th
phá v, ít nht trong thi gian này. Các thuật toán mã hóa này được th nghim vi
s kết hp ca các máy tính mnh nht cùng vi nhng b não thông minh nht.
Các thut toán mã hóa mi phi tri qua mt lot các th nghim nghiêm ngt.
Ly thut toán AES làm ví d:
NIST đã kêu gọi các nhà mã hóa to ra các thut toán mã hóa mi vào tháng
9 năm 1997.
NIST đã nhận được 15 thut toán AES tiềm năng vào tháng 8 năm 1998.
Ti mt hi ngh vào tháng 4 năm 1999, NIST đã chọn năm thuật toán cui
cùng: MARS, RC6, Rijndael, Serpent và Twofish.
NIST tiếp tc kim tra và nhn các ý kiến đóng góp, chỉ dn t cộng đồng
mật mã cho đến tháng 5 năm 2000.
Vào tháng 10 năm 2000, NIST đã xác nhận Rijndael là AES tiềm năng, sau
đó bắt đầu một giai đoạn tư vấn khác.
thông tin tài liệu
Tài liệu cung cấp 5 thuật toán mã hóa mà bạn nên biết
Mở rộng để xem thêm
từ khóa liên quan
xem nhiều trong tuần
yêu cầu tài liệu
Giúp bạn tìm tài liệu chưa có

LÝ THUYẾT TOÁN


×