Trang |i<br />
<br />
LỜI CẢM ƠN<br />
Trước tiên, tôi xin gửi lời cảm ơn sâu sắc nhất đến thầy TS. Lê Phê Đô và thầy<br />
TS. Phùng Văn Ổn, người thầy đã tận tâm, tận lực hướng dẫn, định hướng phương<br />
pháp nghiên cứu khoa học cho tôi, đồng thời cung cấp nhiều tài liệu và tạo điều kiện<br />
thuận lợi trong suốt quá trình học tập và nghiên cứu để tôi có thể hoàn thành luận<br />
văn này.<br />
Tôi xin được gửi lời cảm ơn đến các thầy, cô trong bộ môn Hệ thống thông tin và<br />
Khoa Công nghệ thông tin, Trường Đại học Công nghệ - Đại học Quốc gia Hà Nội<br />
đã nhiệt tình giảng dạy và truyền đạt những kiến thức, kinh nghiệm quý giá trong<br />
suốt thời gian tôi học tập tại trường.<br />
Tôi xin gửi lời cảm ơn đến các bạn học viên lớp K22-QLHTTT, những người<br />
đồng hành trong suốt khóa học và có nhiều góp ý bổ ích cho tôi. Cảm ơn gia đình,<br />
bạn bè đã quan tâm và động viên giúp tôi có nghị lực phấn đấu để hoàn thành tốt<br />
luận văn này.<br />
Do kiến thức và thời gian có hạn nên luận văn chắc chắn không tránh khỏi những<br />
thiếu sót nhất định.<br />
Một lần nữa xin gửi lời cảm ơn chân thành và sâu sắc.<br />
<br />
Hà Nội, tháng 12 năm 2017<br />
Học viên thực hiện<br />
<br />
Nguyễn Khắc Hưng<br />
<br />
T r a n g | ii<br />
<br />
LỜI CAM ĐOAN<br />
Luận văn thạc sĩ đánh dấu cho những thành quả, kiến thức tôi đã tiếp thu được<br />
trong suốt quá trình rèn luyện, học tập tại trường. Tôi xin cam đoan luận văn “Hàm<br />
băm trong mật mã hạng nhẹ” được hoàn thành bằng quá trình học tập và nghiên<br />
cứu của tôi dưới sự hướng dẫn của TS. Lê Phê Đô và TS. Phùng Văn Ổn<br />
Trong toàn bộ nội dung nghiên cứu của luận văn, các vấn đề được trình bày<br />
đều là những tìm hiểu và nghiên cứu của cá nhân tôi hoặc là trích dẫn các nguồn tài<br />
liệu đều được đưa ra ở phần tài liệu tham khảo.<br />
Tôi xin cam đoan những lời trên là sự thật và chịu mọi trách nhiệm trước thầy<br />
cô và hội đồng bảo vệ luận văn thạc sĩ.<br />
<br />
Hà Nội, tháng 12 năm 2017<br />
<br />
Nguyễn Khắc Hưng<br />
<br />
T r a n g | iii<br />
<br />
DANH MỤC TỪ VIẾT TẮT<br />
Từ viết tắt<br />
<br />
Thuật ngữ tiếng anh<br />
<br />
Thuật ngữ tiếng việt<br />
<br />
IoT<br />
<br />
Internet of Things<br />
<br />
Internet kết nối vạn vật<br />
<br />
HMAC<br />
<br />
Hash-based Message<br />
<br />
Hàm băm dựa vào mã xác<br />
<br />
Authentication Code<br />
<br />
thực thông điệp<br />
<br />
MD<br />
<br />
Message-Digest<br />
<br />
Tóm lược thông điệp<br />
<br />
MD5<br />
<br />
Message-Digest Algorithm 5<br />
<br />
Hàm băm MD5<br />
<br />
SHA<br />
<br />
Secure Hash Algorithm<br />
<br />
Thuật toán băm an toàn<br />
<br />
RFID<br />
<br />
Radio Frequency Identification<br />
<br />
Nhận dạng đối tượng bằng<br />
sóng vô tuyến<br />
<br />
NFC<br />
<br />
Near Field Communication<br />
<br />
Kết nối không dây trong phạm<br />
vi tầm ngắn<br />
<br />
DES<br />
<br />
Data Encryption Standard<br />
<br />
Chuẩn mã hóa dữ liệu/ Hệ mật<br />
DES<br />
<br />
T r a n g | iv<br />
<br />
DANH MỤC BẢNG<br />
Bảng 1.1: Một số hệ mật nhẹ và một số hệ mật “nặng” truyền thống ..................... 16<br />
Bảng 1.2: Thông tin về yêu cầu phần cứng của một vài hệ mật nhẹ ....................... 17<br />
Bảng 2.1: Hộp S-Box 4 bit của hệ mật PRESENT trong hệ thập lục phân. ............ 23<br />
Bảng 2.2: Hoán vị bit sử dụng trong PRESENT .................................................... 24<br />
Bảng 2.3: Hộp S-Box 4 bit nghịch đảo của hệ mật PRESENT trong hệ thập lục phân<br />
.............................................................................................................................. 25<br />
Bảng 2.4: Nghịch đảo việc hoán vị bit trong hệ mật PRESENT ............................. 25<br />
Bảng 2.5: S-Box và vị trí của từng thành phần trong S-Box................................... 28<br />
Bảng 2.6: S-Box sau khi thực hiện quá trình gây nhiễu theo công thức Caesar ...... 29<br />
Bảng 3.1: Một số hàm băm nhẹ ............................................................................. 34<br />
<br />
Trang |v<br />
<br />
DANH MỤC HÌNH ẢNH<br />
Hình 1.1: Cấu trúc của một thiết bị RFID ................................................................ 8<br />
Hình 1.2: Thiết kế sự hoán đổi các yếu tố trong mật mã nhẹ .................................. 13<br />
Hình 1.3: Đồ thị so sánh theo thông số bề mặt của một số hàm băm nhẹ ............... 17<br />
Hình 1.4: Đồ thị so sánh theo thông số thông lượng của một số hàm băm nhẹ ....... 18<br />
Hình 1.5: Đồ thị so sánh năng lượng sử dụng ở mức cao của một số hàm băm nhẹ 18<br />
Hình 1.6: Đồ thị so sánh năng lượng sử dụng ở mức thấp của một số hàm băm nhẹ<br />
.............................................................................................................................. 19<br />
Hình 2.1: Quy trình mã hóa của PRESENT ........................................................... 22<br />
Hình 2.2: Tính toán khóa cho PRESENT-80.......................................................... 26<br />
Hình 2.3: Tính toán khóa cho PRESENT-128........................................................ 27<br />
Hình 3.1: Tạo chữ ký điện tử ................................................................................. 32<br />
Hình 3.2: Xác thực chữ ký điện tử ......................................................................... 32<br />
Hình 3.3: Cấu trúc băm sử dụng công thức Davies-Mayer ..................................... 35<br />
Hình 3.4: Kiến trúc của hàm băm PRESENT theo cấu trúc Davies Mayer với đầu<br />
vào 64 bit và khóa 80 bit........................................................................................ 36<br />
Hình 3.5: Cấu trúc Merkle Damgard ...................................................................... 36<br />
Hình 3.6: Sơ đồ tuần tự hàm băm của hệ mật PRESENT theo công thức<br />
DaviesMayer và cấu trúc Merkle Damgard ............................................................ 38<br />
Hình 4.1: Sử dụng Jni như cầu nối để gọi qua lại giữa Java và C/C++ ................... 41<br />
Hình 4.2: Cài đặt chương trình bảo mật của hàm PRESENT ................................. 42<br />
Hình 4.3: Cài đặt chương trình bảo mật của hàm PRESENT ................................. 42<br />
Hình 4.4: Sơ đồ tuần tự phần mật khẩu của chương trình bom báo ........................ 43<br />
<br />