TRƯỜNG ĐẠI HỌC QUỐC GIA
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
TRỊNH VĂN THÀNH
LUẬN VĂN
MỘT SỐ PHƯƠNG PHÁP KIỂM SOÁT TRUY CẬP
HỆ THỐNG THÔNG TIN VÀ ỨNG DỤNG
LUẬN VĂN THẠC SĨ: CÔNG NGHỆ THÔNG TIN
HÀ NỘI, năm 2014
TRƯỜNG ĐẠI HỌC QUỐC GIA
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
TRỊNH VĂN THÀNH
LUẬN VĂN
MỘT SỐ PHƯƠNG PHÁP KIỂM SOÁT TRUY CẬP
HỆ THỐNG THÔNG TIN VÀ ỨNG DỤNG
NGÀNH: CÔNG NGHỆ THÔNG TIN
CHUYÊN NGÀNH: HỆ THỐNG THÔNG TIN
MÃ SỐ: 60480104
LUẬN VĂN THẠC SĨ: CÔNG NGHỆ THÔNG TIN
NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS. TS. TRỊNH NHẬT TIẾN
HÀ NỘI, năm 2014
I
LỜI CẢM ƠN
Luân văn tốt nghiệp khóa học sau đại học được hoàn thành tại trường Đại
học Công nghiệp – Đại học Quốc gia Hà Nội. Có được bản luận văn tốt nghiệp này,
tác giả xin bày tỏ lòng biết ơn chân thành và sâu sắc tới trường Đại học Công nghệ,
khoa Công nghệ thông tin, phòng đào tạo nhà trường, đặc biệt là PGS. TS Trịnh
Nhật Tiến đã trực tiếp hướng, dẫn dìu dắt, giúp đỡ tác giả với những chỉ dẫn khoa
học quý giá trong suốt quá trình nghiên cứu, triển khai, và hoàn thành đề tài “MỘT
SỐ PHƯƠNG PHÁP KIỂM SOÁT TRUY CẬP HỆ THỐNG THÔNG TIN VÀ
ỨNG DỤNG”.
Xin chân thành cảm ơn quý thầy cô – các nhà khoa học đã trực tiếp giảng
dạy, truyền đạt những kiến thức khoa học chuyên ngành Hệ thống thông tin cho bản
thân tác giả trong những năm tháng qua.
Xin gửi tới Sở giáo dục và đào tạo Thái Bình, Hội đồng giáo trường THPT
Nguyễn Trãi tỉnh Thái Bình đã tạo mọi điều kiện giúp tôi hoàn thành khóa học.
Xin ghi nhận những công sức và đóng góp quý báu và nhiệt tình của các bạn
học viên lớp K19HTTT đã đóng góp ý kiến và giúp tác giả triển khai đề tài. Có thể
khẳng định sự thành công của luận văn này thuộc về công lao của tập thể, của nhà
trường, cơ quan và xã hội.
Một lần nữa tác giả xin lòng cảm ơn sâu sắc tới gia đình, người thân và bạn
bè đã tạo mọi điều kiện, động viên và khuyên khích tác giả hoàn thành khóa học
cũng như hoàn thành luận văn.
Mặc dù đã có nhiều cố gắng để hoàn thành tốt luận văn song do lần đầu tiếp
cận với công tác nghiên cứu khoa học nên không tránh khỏi những thiếu sót nhất
định. Tác giả xin được tiếp thu những góp ý quý báu của quý thầy cô và các bạn
đồng nghiệp để luận văn được hoàn chỉ hơn.
Xin chân thành cảm ơn!
Hà Nội, ngày 25 tháng 11 năm 2014
Học viên
Trịnh Văn Thành
II
LỜI CAM ĐOAN
Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi. Các kết quả
được viết chung với các tác giả khác đều được sự đồng ý của tác giả trước khi đưa
vào luận văn. Các kết quả nêu trong luận văn là trung thực và chưa từng được ai
công bố trong các công trình nào khác.
Tác giả
Trịnh văn Thành
III
MỤC LỤC
LỜI CẢM ƠN........................................................................................................ I
LỜI CAM ĐOAN ................................................................................................. II
MỤC LỤC ........................................................................................................... III
BẢNG CHỮ VIẾT TẮT, TỪ CHUYÊN MÔN BẰNG TIẾNG ANH .................. V
DANH MỤC HÌNH ẢNH ...................................................................................VI
DANH MỤC BẢNG ........................................................................................ VIII
LỜI NÓI ĐẦU ....................................................................................................... 1
Chương 1: KHÁI NIỆM CƠ SỞ ........................................................................ 3
1.1. KHÁI NIỆM CƠ SỞ VỀ TOÁN HỌC ............................................................ 3
1.1.1. Khái niệm về số đồng dư ............................................................................. 3
1.1.2. Khái niệm về độ phức tạp tính toán ............................................................. 4
1.1.3. Số nguyên tố ............................................................................................... 5
1.1.4. Mã hóa DES ................................................................................................ 7
1.1.5. Chữ ký số RSA ......................................................................................... 14
1.2. KHÁI NIỆM CƠ SỞ VỀ AN TOÀN THÔNG TIN ...................................... 15
1.2.1. Khái niệm: ................................................................................................ 15
1.2.2. Các chiến lược bảo đảm an toàn thông tin ................................................. 15
1.2.3. Các giải pháp bảo đảm an toàn thông tin. .................................................. 16
1.2.4. Các hình thức tấn công thông tin trao đổi qua môi trường mạng ................ 17
Chương 2: CÁC PHƯƠNG PHÁP KIỂM SOÁT TRUY NHẬP ................... 18
2.1. KIỂM SOÁT TRUY NHẬP TRỰC TIẾP ..................................................... 18
2.1.1 . Kiểm soát truy cập bằng cấp quyền truy cập ............................................. 18
2.1.2. Kiểm soát truy cập trực tiếp bằng cơ chế xác thực ..................................... 19
2.1.3. Kiểm soát truy cập bằng mã hóa, giấu thông tin ........................................ 20
2.2. KIỂM SOÁT TRUY NHẬP TỰ ĐỘNG ....................................................... 21
2.2.1. Tường lửa.................................................................................................. 21
2.2.2. Mạng riêng ảo ........................................................................................... 25
2.2.3. Hệ thống phát hiện và ngăn chặn truy cập trái phép IDS/IPS ..................... 30
Chương 3: ỨNG DỤNG KIỂM SOÁT TRUY NHẬP HỆ THỐNG THÔNG
TIN
35
3.1. KIỂM SOÁT TRUY NHẬP TRỰC TIẾP ..................................................... 36
3.1.1. Chương trình tạo mật khẩu mức an toàn .................................................... 36
3.1.2. Chứng thực thông tin tài khoản qua thư điện tử. ........................................ 37
3.1.3. Kiểm soát truy cập trực tiếp bằng xác thực người dùng bằng chữ ký số. .... 38
Chương trình xác thực người đăng nhập bằng chữ ký số: ..................................... 38
3.1.4. Kiểm soát truy nhập trực tiếp bằng phân quyền truy cập. .......................... 39
3.2. HỆ THỐNG KIỂM SOÁT TRUY CẬP TỰ ĐỘNG ..................................... 40
3.2.1. Hệ thống mạng riêng ảo ............................................................................ 40
IV
3.2.2. Kiểm soát truy cập tự động bằng tường lửa ............................................... 44
3.2.3. Kiểm soát truy cập bằng hệ thống phát hiện xâm trái phép IDS ................. 47
KẾT LUẬN ......................................................................................................... 51
1/. Kết luận ......................................................................................................... 51
2/. Kết quả đạt được ............................................................................................ 51
PHỤ LỤC ............................................................................................................ 53
Phụ lục 1: Các bảng Si ........................................................................................ 54
Phụ lục 2: Modul tạo mật khẩu đạt mức an toàn: ................................................. 56
Phụ lục 3: Modul ký số và xác thực chữ ký ......................................................... 57
TÀI LIỆU THAM KHẢO.................................................................................... 53
V
BẢNG CHỮ VIẾT TẮT, TỪ CHUYÊN MÔN BẰNG TIẾNG ANH
Chữ viết tắt
Nghĩa tiếng Anh
Nghĩa tiếng Việt
IPS
Intrusion Prevention System
Hệ thống ngăn chặn xâm nhập
IDS
Intrusion Detection System
Hệ thống phát hiện xâm nhập
CNTT
Công nghệ thông tin
ISS
Internet Security Systems
Hệ thống bảo mật mạng
DMZ
Demilitarized Zone
Vùng phi quân sự
ISP
Internet Service Provider
Nhà cung cấp dịch vụ Internet
ISO
Internation Standard Organization
Tổ chức tiêu chuẩn quốc tế
LAN
Local Area Network
Mạng cục bộ
TCP
Transmission Control Protocol
Giao thức kiểm soát truyền tin
VI
DANH MỤC HÌNH ẢNH
Hình 1.1. Sơ đồ mã hóa DES ................................................................................... 8
Hình 1.2 Sơ đồ tạo khóa cho mã hóa DES ............................................................. 10
Hình 1.3. Sơ đồ tính hàm f(Ri-1,ki) ......................................................................... 12
Hình 1.4 Sơ đồ mã hóa RSA .................................................................................. 14
Hình 2.1. Mô hình phân công chức năng tướng ứng người truy cập và đối tượng
được truy cập......................................................................................................... 19
Hình 2.2. Kiểm soát truy cập bằng tường lửa ......................................................... 21
Hình 2.3. Mô hình minh họa nguyên tắc hoạt động của cổng ứng dụng ................. 24
Hình 2.4. Mô hình minh họa nguyên tắc hoạt động của cổng vòng ........................ 24
Hình 2.5. Mô hình mạng riêng ảo .......................................................................... 25
Hình 2.6. Các cấp độ đóng gói phần header ........................................................... 28
Hình 2.7. Mô hình phát hiện xâm nhập bằng phần mềm IDS (snort) ...................... 31
Hình 3.1. Sơ đồ áp dụng kết hợp các phương pháp kiểm soát truy cập HTTT ........ 36
Hình 3.2. Thông tin tài khoản được gửi về thư điện tử của người dùng khi tạo mới
.............................................................................................................................. 37
Hình 3.3. Giao diện đăng nhập hệ thống của người dùng ....................................... 37
Hình 3.4. Giao diện khôi phục khi quyên mật khẩu của người dùng ...................... 37
Hình 3.5. Thông tin về tài khoản của người dùng được gửi qua thư điện tử ........... 38
Hình 3.6. Xác thực người truy cập bằng tài khoản và chữ ký số............................. 38
Hình 3.7. Phân quyền truy cập vào hệ thống quản lý trường học ........................... 39
Hình 3.8 Kết nối từ VPN client tới VPN server ..................................................... 43
Hình 3.9. IP mà VPN Server cấp cho VPN Client khi kết nối ................................ 43
Hình 3.10: Trạng thái tường lửa của máy tính........................................................ 44
Hình 3.11. Trạng thái bật lường lửa ....................................................................... 44
Hình 3.12. Trạng thái bật tường lửa ....................................................................... 45
Hình 3.13. Kết quả khi cổng 8080 được mở........................................................... 45
Hình 3.14. Thông báo lỗi kết nối khi cổng 8080 không mở ................................... 46
Hình 3.15. Cấu trúc tập luật của Snort ................................................................... 47
Hình 3.16. Cấu trúc phần Header của 1 luật Snort ................................................. 47
VII
Hình 3.17. Cảnh báo được hiển thị trong file log ................................................... 50
Hình 3.18. Cảnh báo khi xảy ra Ping kích thước lớn .............................................. 50
VIII
DANH MỤC BẢNG
Bảng 3.1. Thông số cấu hình cho mạng riêng ảo Client – to – Site......................... 41
Bảng 3.2. Những nội dung cần thay đổi trong tệp snort.conf ................................. 49
1
LỜI NÓI ĐẦU
1. LÝ DO CHỌN ĐỀ TÀI
Hiện nay với sự phát triển mạnh mẽ của công nghệ thông tin (CNTT) và
CNTT ngày càng được áp dụng rộng rãi trong các ngành khác nhau. Nó cũng thúc
đẩy sự phát triển cho các ngành kinh tế khác. Đặc biệt với khả năng truyền dữ liệu
giữa các khu vực địa lý khác nhau làm rút năng khoảng cách về không gian và thời
gian đã làm cho vai trò của CNTT trong sự phát triển kinh tế, chính trị, xã hội là
không thể thiếu. Đồng thời mạng công cộng là nơi dễ dàng cho những kẻ xấu lợi
dụng để tấn công, khai thác và phá hoại những dữ liệu quan trọng. Hàng năm người
dùng (tổ chức, cá nhân...) tổn thất hàng nghìn tỉ đồng do các cuộc tấn công mạng và
xâm nhập bất hợp pháp, làm cho vấn đề kính tế, chính trị bị ảnh hưởng xấu [4].
“Theo báo cáo của Sở Thông tin và Truyền thông TP.HCM, từ đầu năm 2014
đến nay có đến hơn 2,5 triệu hành vi dò quét, tấn công có mức độ nguy hiểm cao
vào cổng thông tin của TP.HCM. Con số này tăng đến 300% so với năm trước và
phần lớn các cuộc tấn công này có IP từ Trung Quốc. Ngoài ra, cũng phát hiện đến
hơn 650.000 mã độc.”[5]
Vì thế đặt ra nhiều vấn đề cần giải quyết, đó là bảo vệ thông tin khỏi những
đối tượng có mục đích xấu, làm giảm nguy cơ mất an toàn. Chúng ta cần phải tận
dụng những ưu điểm của cơ sở hạ tầng mạng công cộng để truyền thông một cách
hiệu quả. Đồng thời cũng cần có một cơ chế kiểm soát thông tin trong các hệ thống
thông tin khi truyền tải qua mạng. Kiểm soát truy cập hệ thống thông tin là biện
pháp cấn thiết để bảo vệ thông tin trong các hệ thống thông tin.
Hiện nay xây dựng một hệ thống kiểm soát truy cập vào các hệ thống thông
tin là vô cùng cần thiết. Từ những lý do trên tôi chọn đề tài: “MỘT SỐ PHƯƠNG
PHÁP KIỂM SOÁT TRUY CẬP HỆ THỐNG THÔNG TIN VÀ ỨNG DỤNG”
nhằm có được cái nhìn chính xác về an toàn thông tin và cung cấp một số giải pháp
an toàn thông tin trong các hệ thống thông tin.
2
2. BỐ CỤC CỦA LUẬN VĂN
Nội dung luận văn gồm 4 phần:
Chương 1: KHÁI NIỆM CƠ SỞ
Trình bày về các khái niệm cơ sở về toán học, các nguy cơ mất an toàn thông
tin, các phương pháp tấn công và cách phòng tránh.
Chương 2: CÁC PHƯƠNG PHÁP KIỂM SOÁT TRUY CẬP
Trình bày các phương pháp kiểm soát truy cập hệ thống thông tin.
CHương 3: ỨNG DỤNG CÁC PHƯƠNG PHÁP KIỂM SOÁT TRUY CẬP
Trình bày về các ứng dụng của các phương pháp kiểm soát truy cập vào việc
kiểm soát truy cập hệ thống thông tin trường THPT Nguyễn Trãi Thái Bình
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
Tổng kết những kết quả đã đạt được và các hướng phát triển của đề tài
3
Chương 1: KHÁI NIỆM CƠ SỞ
1.1. KHÁI NIỆM CƠ SỞ VỀ TOÁN HỌC
1.1.1. Khái niệm về số đồng dư
1.1.1.1. Khái niệm
Cho các số nguyên a, b, m (m > 0). Ta nói rằng a và b “đồng dư” với nhau
theo modulo m, nếu chia a và b cho m, ta nhận được cùng một số dư.
Ký hiệu: a ≡ b (mod m).
1.1.1.2. Một số tính chất
1/ Quan hệ “đồng dư” là quan hệ tương đương trong Z:
Với mọi số nguyên dương m ta có:
a ≡ a (mod m) với mọi a Z; (tính chất phản xạ).
a ≡ b (mod m) thì b ≡ a (mod m); (tính chất đối xứng).
a ≡ b (mod m) và b ≡ c (mod m) thì a ≡ c (mod m); (tính chất bắc cầu).
2/ Tổng hay hiệu các “đồng dư”:
Có thể cộng hoặc trừ từng vế nhiều đồng dư thức theo cùng một modulo m,
ta được một đồng dư thức theo cùng modulo m, tức là:
k
Nếu ai ≡ bi (mod m), i = 1..k, thì
k
ti ai tibi (mod m) với ti = ± 1.
i 1
i 1
3/ Tích các “đồng dư”:
Có thể nhân từng vế nhiều đồng dư thức theo cùng một modulo m, ta được
một đồng dư thức theo cùng modulo m, tức là:
k
Nếu ai ≡ bi (mod m) với i=1..k, thì ta có:
k
ai bi (mod m)
i 1
i 1
4/ Hệ quả:
* Có thể cộng hoặc trừ cùng một số vào hai vế của một đồng dư thức.
* Có thể chuyển vế các số hạng của đồng dư thức bằng cách đổi dấu các số
hạng đó.
* Có thể cộng vào một vế của đồng dư thức một bội của modulo:
4
a ≡ b (mod m) → a+km ≡ b (mod m) với mọi k Z.
* Có thể nhân hai vế của một đồng dư thức với cùng một số:
a ≡ b (mod m) → ac ≡ bc (mod m) với mọi c Z.
* Có thể nâng lên lũy thừa bậc nguyên không âm cho 2 vế của một đồng dư
thức:
a ≡ b (mod m) → an ≡ bn (mod m) với mọi n Z+
* Có thể chia 2 vế đồng dư thức cho một ước chung nguyên tố với modulo:
c\a, c\b, (c, m) = 1, a ≡ b (mod m) a/c ≡ b/c (mod m)
* Có thể nhân 2 vế đồng dư thức và modulo với cùng một số nguyên dương,
Nếu a ≡ b (mod m), c >0
ac ≡ bc (mod mc)
* Có thể chia 2 vế đồng dư thức và modulo cho cùng một số nguyên dương
là ước chung của chúng:
Nếu c\(a, b, m) a/c ≡ b/c (mod m/c)
* a ≡ b (mod m) a ≡ b (mod k) với k\m
* a ≡ b (mod m) gcd(a, m) = gcd(b, m)
1.1.2. Khái niệm về độ phức tạp tính toán
Lý thuyết thuật toán và các hàm số tính được ra dời từ những năm 30 của thế
kỷ 20 đã đặt nền móng cho việc nghiên cứu các vấn đề “tính được”, ”giải được”
trong toán học. Tuy nhiên, từ cái “tính được” đến việc tính toán trong thực tế là một
khoảng cách rất lớn, có rất nhiều vấn đề chứng minh là có thể tính được nhưng
không thể trong thực tế dù có sự hỗ trợ của máy tính. Vào những năm 1960 lý
thuyết độ phức tạp tính toán được hình thành và phát triển nhanh chóng, cung cấp
nhiều hiểu biết sâu sắc về bản chất phức tạp của các bài toán và thuật toán, cả
những bài toán thuần túy lý thuyết đến những bài toán thường gặp trong thực tế.
Độ phức tạp tính toán (về không gian hay thời gian) của một tiến trình tính
toán là số ô nhớ được dùng hay số các phép toán sơ cấp được thực hiện trong tiến
trình tính toán đó. Dữ liệu đầu vào đối với một thuật toán thường được biểu diễn
qua các từ trong một bảng ký tự nào đó. Độ dài của một từ là số ký tự trong từ đó.
Cho một ký tự A trên bảng ký tự Z (tức là có các đầu vào là các từ trong Z).
Độ phức tạp tính toán của thuật toán A được hiểu như một hàm số fa(n) sao cho với
5
mỗi số nfa(n) là số ô nhớ, hay số phép toán sơ cấp tối đa mà A cần để thực hiện tiến
trình tính toán của mình trên các dữ liệu vào có độ dài n. Ta nói thuật toán A có
độ phức tạp thời gian đa thức, nếu có một đa thức P(n) sao cho với mọi n đủ lớn ta
có fa(n) P(n), trong đó fa(n) là độ phức tạp tính toán theo thời gian của A [2].
Bài toán P là giải được nếu có thuật toán để giải nó, tức là thuật toán làm
việc có kết thúc trên mọi dữ liệu vào của bài toán. Bài toán P là giải được trong thời
gian đa thức nếu có thuật toán giải nó với độ phức tạp thời gian đa thức.
Các thuật toán có độ phức tạp giống nhau được phân loại vào trong các lớp
tương đương. Ví dụ tất cả các thuật toán có độ phức tạp là n3 được phân vào trong
lớp n3 và ký hiệu bởi 0(n3).
1.1.3. Số nguyên tố
1.1.3.1. Khái niệm
Số nguyên tố là số tự nhiên lớn hơn 1 và chỉ có hai ước là 1 và chính nó.
1.1.3.2. Định lý về số nguyên tố
1/. Định lý: về số nguyên dương > 1.
Mọi số nguyên dương n > 1 đều có thể biểu diễn được duy nhất dưới dạng:
n =P1n1.P n2 2...P nkk , trong đó:
k, ni ( i =1,2,..,k) là các số tự nhiên, Pi là các số nguyên tố, từng đôi một
khác nhau.
2/. Định lý: Mersenne.
Cho p = 2k -1, nếu p là số nguyên tố, thì k phải là số nguyên tố.
3/. Hàm Euler:
Cho số nguyên dương n, số lượng các số nguyên dương bé hơn n và nguyên
tố cùng nhau với n được ký hiệu (n) và gọi là hàm Euler.
Nhận xét: Nếu p là số nguyên tố, thì (p) = p-1
Định lý: về Hàm Euler.
Nếu n là tích của hai số nguyên tố n = p.q, thì (n) = (p). (q) = (p-1).(q-1).
(n) = / Z n*/
6
1.1.3.3. Phương pháp kiểm tra tính nguyên tố
Kiểm tra tính nguyên tố của một số nguyên dương là bài toán nảy sinh
trong nhiều ứng dụng, đặc biệt là trong lý thuyết mật mã. Năm 1975 Pratt đã chứng
minh nó thuộc lớp NP và thuộc lớp co-NP NP, đây là bài toán “khó”.
1/. Phương pháp cổ điển.
Kiểm tra tính nguyên tố của một số nguyên dương n theo định nghĩa:
Thử lần lượt tìm các ước của n, từ 2 đến n/2.
Nếu không tìm được ước nào thì kết luận n là nguyên tố. [1]
2/. Phương pháp “xác suất“.
Trên cơ sở các định lý về số nguyên tố, hiện nay người ta có các
phương pháp “xác suất” để kiểm tra tính nguyên tố của một số nguyên dương n.
Ví dụ như các phương pháp: Solovay-Strassen, Lehmann-Peralta, MillerRabin.
Định lý Ferma:
Nếu p là số nguyên tố, a là số nguyên, thì a p ≡ a (mod p).
Nếu p không chia hết a, thì a p-1 ≡ 1 (mod p).
Định lý Euler:
Nếu gcd (a, m) = 1 thì a (m) ≡ 1 (mod m).
Trường hợp m là số nguyên tố, ta có định lý Ferma.
Hệ quả 1:
Nếu gcd(c, m) = 1 và a ≡ b (mod (m)) với a, b là các số tự nhiên, thì
ca ≡ cb (mod m) và suy ra ca mod m = ca mod (m) mod m.
Hệ quả 2:
Nếu các số nguyên e, d thỏa mãn e.d ≡ 1 (mod
nguyên tố cùng nhau với m, ta có (ce)d ≡ c (mod m) [1].
(n)),
thì với mọi số c
7
1.1.3.4. Tính toán đồng dư của “lũy thừa” lớn
1/. Trường hợp a > (m):
Trong trường hợp a > (m), khi ấy b < a. Người ta dùng Hệ quả 1 để
tính “đồng dư” của “lũy thừa” lớn.
2/. Trường hợp (m) > a:
Trong thực tế tính toán thường gặp m lớn, do đó (m) lớn, thậm chí > a, khi
ấy người ta dùng kỹ thuật khác, ví dụ Phương pháp bình phương liên tiếp.
* Định lý về Số dư (ĐL Trung Quốc):
Cho tập số nguyên tố cùng nhau từng đôi một m1, m2,…mr .
Với mỗi bộ số nguyên bất kỳ a1, a2,…ar , hệ phương trình đồng dư:
x ≡ ai (mod mi), (i =1, 2, …, r),
luôn có nghiệm duy nhất theo modulo
m,
m = m1.m2.…mr .
Nghiệm này có thể tính theo công thức:
x = a1m2 m3 … mr b1 + m1 a2 m3 … mr b2 + m1 m2 a3 m3 … mr b3 + …+
m1 m2 … mr-1 ar br (mod m1.m2…mr),
Trong đó bi = (m1. m2…mi-1mi+1…mr)-1 (mod mi), với mọi i =1, 2, …, r. [1]
1.1.4. Mã hóa DES
Quy trình lập mã và giải mã DES [2]
1.1.4.1. Qui trình lập mã DES
Thuật toán DES tập trung thực hiện Giai đoạn 3 .của qui trình mã hóa.
Đó là chuyển đổi bản rõ số với 64 bit thành bản mã với 64 bit.
Sơ đồ
8
Hình 1.1. Sơ đồ mã hóa DES
9
1.1.4.2. Thực hiện mã hóa DES theo Sơ đồ
* Bản rõ là xâu x, Bản mã là xâu y, Khoá là xâu K, đều có độ dài 64 bit.
* Thuật toán mã hóa DES thực hiện qua 3 bước chính như sau:
Bước 1: Bản rõ x được hoán vị theo phép hoán vị IP, thành IP (x).
IP (x) = L0 R0, trong đó L0 là 32 bit đầu (Left), R0 là 32 bit cuối (Right).
(IP (x) tách thành L0 R0).
Bước 2: Thực hiện 16 vòng mã hoá với những phép toán giống nhau.
Dữ liệu được kết hợp với khoá thông qua hàm f :
L i = R i -1,
R i = L i -1 f (R i -1, k i ), trong đó:
là phép toán hoặc loại trừ của hai xâu bit (cộng theo modulo 2).
k1, k2, ..., k16 là các khoá con (48 bit) được tính từ khóa gốc K.
Bước 3: Thực hiện phép hoán vị ngược IP-1 cho xâu R16L16, thu được bản
mã y.
y = IP -1 (R16, L16). (Lưu ý thứ tự bit R16 và L16)
* Bảng hoán vị ban đầu IP :
+ bit 1 của IP(x) là bit 58 của x.
+ bit 2 của IP(x) là bit 50 của x.
8
0
2
4
7
9
1
3
0
2
4
6
9
1
3
5
2
4
6
8
1
3
5
7
4
6
8
0
3
5
7
9
6
8
0
2
5
7
9
1
8
0
2
4
7
9
1
3
0
2
4
6
1
3
5
10
* Bảng hoán vị cuối cùng IP-1:
40
39
38
37
36
35
34
33
8
7
6
5
4
3
2
1
48
47
46
45
44
43
42
41
16
15
14
13
12
11
10
9
56
55
54
53
52
51
50
49
1.1.4.3. Tính các khóa con
Khóa con k1, k2, … , k16 từ khóa gốc K.
Sơ đồ
Hình 1.2 Sơ đồ tạo khóa cho mã hóa DES
24
23
22
21
20
19
18
17
64
63
62
61
60
59
58
57
32
31
30
29
28
27
26
25
- Xem thêm -