Tải bản đầy đủ

Ứng dụng mạng nơron nhân tạo vào xây dựng hàm băm và chữ kí số

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ TP. HCM

---------------------------

TRẦN HỮU TRƢƠNG

ỨNG DỤNG MẠNG NƠRON NHÂN TẠO VÀO
XÂY DỰNG HÀM BĂM VÀ CHỮ KÍ SỐ

LUẬN VĂN THẠC SĨ
Chuyên ngành : Công nghệ thông tin
Mã số ngành: 60480201
TP. HỒ CHÍ MINH, tháng 3 năm 2015


BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ TP. HCM

---------------------------


TRẦN HỮU TRƢƠNG

ỨNG DỤNG MẠNG NƠRON NHÂN TẠO VÀO
XÂY DỰNG HÀM BĂM VÀ CHỮ KÍ SỐ
LUẬN VĂN THẠC SĨ
Chuyên ngành : Công nghệ thông tin
Mã số ngành: 60480201
CÁN BỘ HƢỚNG DẪN KHOA HỌC: TS. LƢ NHẬT VINH
TP. HỒ CHÍ MINH, tháng 3 năm 2015


CÔNG TRÌNH ĐƢỢC HOÀN THÀNH TẠI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ TP. HCM
Cán bộ hƣớng dẫn khoa học :
(Ghi rõ họ, tên, học hàm, học vị và chữ ký)

TS. Lƣ Nhật Vinh
Luận văn Thạc sĩ đƣợc bảo vệ tại Trƣờng Đại học Công nghệ TP. HCM
ngày … tháng … năm 2015
Thành phần Hội đồng đánh giá Luận văn Thạc sĩ gồm:
(Ghi rõ họ, tên, học hàm, học vị của Hội đồng chấm bảo vệ Luận văn Thạc sĩ)

TT
1
2
3
4
5

Họ và tên

Chức danh Hội đồng
Chủ tịch
Phản biện 1
Phản biện 2
Ủy viên
Ủy viên, Thƣ ký

Xác nhận của Chủ tịch Hội đồng đánh giá Luận sau khi Luận văn đã đƣợc
sửa chữa (nếu có).


Chủ tịch Hội đồng đánh giá LV


TRƢỜNG ĐH CÔNG NGHỆ TP. HCM

CỘNG HÕA XÃ HỘI CHỦ NGHĨA VIỆT NAM

PHÒNG QLKH – ĐTSĐH

Độc lập – Tự do – Hạnh phúc
TP. HCM, ngày..… tháng….. năm 2015

NHIỆM VỤ LUẬN VĂN THẠC SĨ
Họ tên học viên: Trần Hữu Trƣơng

Giới tính: Nam

Ngày, tháng, năm sinh: 27/09/1982

Nơi sinh: Bình Định

Chuyên ngành: Công nghệ thông tin

MSHV: 1341860028

I- Tên đề tài:
Ứng dụng mạng nơron nhân tạo vào xây dựng hàm băm và chữ ký số.
II- Nhiệm vụ và nội dung:
o Nghiên cứu lý thuyết cơ bản về mạng nơron nhân tạo, tập trung nghiên cứu mô
hình mạng nơron RBF.

o Ứng dụng mạng nơron RBF vào thuật toán xây dựng hàm băm mật mã.
o Xây dựng mô hình chữ kí số dựa trên hàm băm RBFNN.
III- Ngày giao nhiệm vụ: 18/08/2014
IV- Ngày hoàn thành nhiệm vụ: 15/03/2015
V- Cán bộ hƣớng dẫn: TS. Lƣ Nhật Vinh
CÁN BỘ HƢỚNG DẪN
(Họ tên và chữ ký)

TS. Lƣ Nhật Vinh

KHOA QUẢN LÝ CHUYÊN NGÀNH
(Họ tên và chữ ký)


i

LỜI CAM ĐOAN
Tôi xin cam đoan rằng nội dung của luận văn là kết quả của công trình nghiên
cứu của chính cá nhân tôi. Các số liệu, 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 bất kỳ công trình nào khác. Tất cả những tài liệu tham
khảo, các nghiên cứu liên quan điều có ghi rõ ràng từ danh mục tài liệu tham khảo
trong luận văn.
Tôi xin cam đoan mọi sự giúp đỡ cho việc thực hiện Luận văn này đã đƣợc cảm
ơn và các thông tin trích dẫn trong Luận văn đã đƣợc chỉ rõ nguồn gốc.
Học viên thực hiện Luận văn
(Ký và ghi rõ họ tên)

Trần Hữu Trƣơng


ii

LỜI CẢM ƠN
Trong quá trình hoàn thành luận văn này, tôi xin đƣợc cảm ơn thầy cô đã tận tình
hƣớng dẫn, cơ quan nơi tôi công tác tạo mọi điều kiện thuận lợi nhất và gia đình cùng bạn
bè đã động viên khích lệ là nguồn động lực để tôi hoàn thiện luận văn.
Luận văn này không thể hoàn thành tốt nếu không có sự tận tình giúp đỡ quí báu
của TS. Lƣ Nhật Vinh, giáo viên hƣớng dẫn mà tôi tôn kính và muốn đƣợc bày tỏ lòng biết
ơn sâu sắc nhất.
Tôi cũng bày tỏ lòng biết ơn đối với tập thể các thầy cô khoa Công nghệ thông tin
Trƣờng Đại học Công nghệ TP. HCM đã giúp đỡ và tạo điều kiện cho tôi rất nhiều trong
quá trình học tập và nghiên cứu ở Trƣờng; cảm ơn Phòng quản lý Sau Đại học về sự hổ
trợ các thủ tục hoàn thành luận văn.
Cuối cùng tôi cảm ơn gia đình, cùng tất cả bạn bè đã có nhiều ý kiến đóng góp
thiết thực và có những lời động viên khích lệ quý báu giúp tôi hoàn thành luận văn.
Học viên thực hiện Luận văn
(Ký và ghi rõ họ tên)

Trần Hữu Trƣơng


iii

TÓM TẮT
Ngày nay, nhiều tổ chức, cá nhân đã sử dụng nhiều giải pháp để trao đổi thông
tin một cách nhanh chóng, hiệu quả. Trong đó, việc trao đổi thông tin trên mạng máy
tính ngày càng trở nên phổ biến. Do đó, thông tin trao đổi phải đƣợc an toàn, tránh mọi
nguy cơ bị thay đổi, sao chép hoặc mất mát dữ liệu trong các ứng dụng trên mạng luôn
là vấn đề đƣợc nhiều ngƣời quan tâm. Luận văn này trình bày những vấn đề liên quan
về mã hóa thông tin, mạng nơron nhân tạo, thuật toán hàm băm, thuật toán mã hóa
RSA và chữ ký số.
Hàm băm một chiều không những đƣợc sử dụng rộng rãi trong các khía cạnh
của chữ ký số, chứng thực và kiểm tra,… mà còn là điểm nóng nghiên cứu trong lĩnh
vực mật mã học hiện đại. Trƣớc hết, luận văn sử dụng mạng nơron hàm cơ sở bán kính
RBFNN (Radial Basic Function Neural Network) và thực hiện các chuỗi hỗn loạn đƣợc
tạo ra bởi ánh xạ phi tuyến một chiều. Và sau đó, xây dựng hàm băm với khoá bằng
cách thay đổi các chuổi. Một trong những ƣu điểm của thuật toán này là mạng nơron
giấu các mối quan hệ ánh xạ tuyến tính. Thuật toán có tính va chạm yếu và bảo mật
mạnh mẽ hơn hàm băm truyền thống, cũng nhƣ dễ dàng để thực hiện.
Luận văn này đề xuất phƣơng pháp xây dựng chữ kí số dựa trên cơ sở hàm băm
RBFNN. Để thực hiện mục tiêu trên, luận văn phải thực hiện các vấn đề chính: (1) Tìm
hiểu cơ sở lý thuyết về mạng nơron nhân tạo và mô hình mạng mạng nơron RBF; (2)
Giới thiệu hàm băm mật mã và đề xuất sử dụng hàm băm dựa trên thuật toán RBFNN;
(3) Thuật toán chữ ký số sử dụng chữ ký theo thuật toán RSA, hàm băm tạo ra một giá
trị băm dựa trên thuật toán RBFNN rồi đƣợc mã hoá bằng khoá bí mật để tạo thành
một chữ ký số.


iv

ABSTRACT
Today, many organizations and individual shave used many ways to exchange
information quickly and efficiently. In which, the exchange of information on computer
networks become increasingly popular. Therefore, the information exchange must be safe
to avoid any risk of change, copy or loss of data in the applications on the network
problem in which many people are interested. This thesis presents the issues related to
encrypted information, artificial neural network, hashing algorithm, RSA encryption
algorithm and digital signature.
One-way hash function is not only widely used in the aspects of digital signatures,
authentication and checks, ...but also is the essential research in the field of modern
cryptography. First, thethesis uses neural network RBFNN radius basis function and
performs the chaotic sequences generated by one-dimensional nonlinear mapping. And
then, build hash function by changing the course of the string. One of the advantages of
neural network algorithms is hidden relationships linear mapping. The algorithm has
collision weak and gets stronger security than traditional hash function, as well as easy to
implement.
This thesis proposed the method of building digital signature based on the hash
function RBFNN. To accomplish this goal, the thesis must perform the main problems: (1)
To understand the basis of the theory of artificial neural network and RBF neural network
model network;(2) To introduction cryptographic hash function and propose the use of
hashing algorithm based on RBFNN; (3) The algorithm used digital signature algorithm
RSA signature to hash function creates a hash value based on RBFNN algorithm is then
encrypted by using the secret key to generate a digital signature.


v

MỤC LỤC
CHƢƠNG 1 – TỔNG QUAN VỀ MẠNG NƠRON TRONG MẬT MÃ HỌC VÀ
HÀM BĂM MẬT MÃ .................................................................................................... 3
1.1 Giới thiệu chung ........................................................................................................ 3
1.2 Các nghiên cứu về mạng nơron nhân tạo .................................................................. 4
1.2.1 Các nghiên cứu về cấu trúc liên kết mạng nơron ................................................... 6
1.2.2 Các nghiên cứu về ứng dụng mạng nơron trong mã hoá ....................................... 7
1.2.3 Các nghiên cứu trong nƣớc về ứng dụng mạng nơron .......................................... 9
1.3 Các nghiên cứu liên quan về hàm băm mật mã và chữ kí số .................................. 10
1.3.1 Tổng quan về hàm băm ........................................................................................ 10
1.3.2 Tổng quan chữ ký số ............................................................................................ 11
CHƢƠNG 2 – MẠNG NƠRON NHÂN TẠO, MẠNG NƠRON RBF VÀ NGHIÊN
CỨU MẠNG NƠRON RBF ĐỐI VỚI CHUỖI HỖN LOẠN ..................................... 13
2.1 Giới thiệu về mạng nơron ....................................................................................... 13
2.1.1 Khái niệm cơ bản ................................................................................................ 13
2.1.2 Các kiểu mô hình mạng nơron ............................................................................. 15
2.2 Mạng nơron RBF ................................................................................................... 22
2.2.1 Hàm cơ sở bán kính............................................................................................. 22
2.2.2 Kiến trúc mạng nơron RBF .................................................................................. 23
2.3 Huấn luyện mạng nơron RBF ................................................................................. 25
2.3.1 Phƣơng pháp huấn luyện một pha ........................................................................ 25
2.3.2 Phƣơng pháp huấn luyện hai pha ......................................................................... 28
2.3.3 Phƣơng pháp huấn luyện đầy đủ .......................................................................... 29
2.4 Nghiên cứu mạng nơron RBF đối với chuỗi hỗn loạn ........................................... 32
2.4.2 Đặc điểm của ánh xạ phi tuyến tính ..................................................................... 33


vi

2.4.3 Mô hình mạng RBF tạo ra chuỗi hỗn loạn ........................................................... 35
CHƢƠNG 3 – HÀM BĂM MẬT MÃ VÀ THUẬT TOÁN CHO CHỮ KÝ SỐ ........ 36
3.1 Hệ mật mã ............................................................................................................... 36
3.1.1 Giới thiệu hệ mật mã ............................................................................................ 36
3.1.2 Hệ mật mã khóa công khai ................................................................................... 37
3.2 Hàm băm mật mã .................................................................................................... 41
3.2.1 Khái niệm hàm băm mật mã ................................................................................ 41
3.2.2 Cấu trúc chung của hàm băm ............................................................................... 43
3.2.3 Một số hàm băm cơ bản ....................................................................................... 44
3.3 Hàm băm mật mã RBFNN ...................................................................................... 46
3.4 Mô hình chữ kí số với hàm băm RBFNN .............................................................. 47
CHƢƠNG 4 – ỨNG DỤNG MẠNG RBF VÀO XÂY DỰNG HÀM BĂM VÀ CHỮ
KÍ SỐ............................................................................................................................. 50
4.1 Giới thiệu................................................................................................................. 50
4.1.1 Mô tả tổng quát quy trình ..................................................................................... 50
4.1.2 Giải thuật huấn luyện mạng RBFNN ................................................................... 51
4.2 Cài đặt thử nghiệm .................................................................................................. 54
4.2.1 Phần mềm xây dựng ............................................................................................. 54
4.2.3 Các tham số mạng nơron RBF ............................................................................. 55
4.2.4 Kí và kiểm tra chữ kí trên phần mềm .................................................................. 56
4.3 Nhận xét .................................................................................................................. 58
KẾT LUẬN ................................................................................................................... 59
TÀI LIỆU THAM KHẢO ............................................................................................. 60


vii

DANH MỤC CÁC TỪ VIẾT TẮT
TT

Từ viết tắt

Diễn giải

1

ANN

Artificial Neural Networks

2

DSA

Digital Signature Algorithm

3

MD

Message Digest

4

MD2

Message Digest Algorithm 2

5

MD4

Message Digest Algorithm 4

6

MD5

Message Digest Algorithm 5

7

MLP

Multi Layer Perceptron

8

NIST

9

NSA

National Security Agency

10

RBF

Radial Basic Function

11

RSA

RSA Algorithm (R.Rivets, A.Shamil, L.Adleman)

12

RBFNN

Radial Basic Function Neural Network

13

SHA

Secure Hash Algorithm

14

SHS

Secure Hash Standard

National Institute of Standards and Technology


viii

DANH MỤC BẢNG
Bảng 2.1 : Bảng tóm tắt mô hình mạng Hopfield…………………………………….19
Bảng 2.2 : Bảng tóm tắt mô hình mạng Perceptron……………………………..........19
Bảng 3.1 : Bảng tóm tắt các hàm băm MD2, MD4, MD5……………………………45
Bảng 3.2 : Bảng tóm tắt các hàm băm SHA………………………………………….46


ix

DANH MỤC CÁC HÌNH
Hình 1.1 : Phân loại chữ ký số ...................................................................................... 12
Hình 2.1: Cấu tạo tế bào nơron sinh học ....................................................................... 13
Hình 2.2: Mô hình mạng Noron nhân tạo đơn giản ...................................................... 14
Hình 2.3: Cấu trúc mạng Hopfield ................................................................................ 15
Hình 2.4: Mạng kết hợp khác kiểu ................................................................................ 16
Hình 2.5: Mạng truyền thẳng ........................................................................................ 17
Hình 2.6: Mô hình mạng Hopfield có bốn nút .............................................................. 18
Hình 2.7: Mô hình mạng MLP tổng quát ...................................................................... 20
Hình 2.8: Kiến trúc mạng nơron RBF tổng quát ........................................................... 24
Hình 2.9 Thuật toán huấn luyện nhanh (Quick Training) ............................................. 28
Hình 2.10 Thuật toán huấn luyện đầy đủ Full Training ................................................ 31
Hình 2.11 Thủ tục Update(k) của thuật toán huấn luyện đầy đủ .................................. 31
Hình 2.12: Kiến trúc mạng nơron RBF đơn giản .......................................................... 32
Hình 2.13: Mô hình mạng nơron RBF tạo ra chuỗi hỗn loạn ....................................... 35
Hình 3.1: Quá trình mã hoá và giải mã ......................................................................... 37
Hình 3.2: Mã hoá thông điệp sử dụng khoá công khai P .............................................. 38
Hình 3.3: Giải mã thông điệp sử dụng khoá riêng của ngƣời nhận .............................. 38
Hình 3.4: Sơ đồ hệ mật mã RSA ................................................................................... 39
Hình 3.5: Mã hoá thông điệp sử dụng khoá bí mật S để mã thông điệp và khoá công
khai P để mã khoá bí mật S. .......................................................................................... 40
Hình 3.6: Giải mã thông điệp sử dụng khoá bí mật S để giải mã thông điệp và khoá
riêng P để giải mã khoá bí mật S................................................................................... 40
Hình 3.7: Ví dụ về giá trị băm....................................................................................... 42
Hình 3.8: Cấu trúc thuật toán hàm băm RBFNN .......................................................... 46
Hình 3.9: Sơ đồ mô tả quá trình ký và gửi các tệp văn bản ......................................... 48
Hình 4.1: Thủ tục ký và kiểm tra chữ ký. ..................................................................... 50


x

Hình 4.2: Giải thuật hàm băm mật mã RBFNN ............................................................ 51
Hình 4.3: Thuật toán tìm trọng số kết nối của mạng nơron RBF ................................. 53
Hình 4.4 Giao diện của phần mềm thử nghiệm ............................................................ 54
Hình 4.5: Dữ liệu huấn luyện mạng RBF ..................................................................... 55
Hình 4.6: Kết quả huấn luyện mạng RBF ..................................................................... 56
Hình 4.7: Tạo chữ kí số ................................................................................................. 57
Hình 4.8: Kiểm tra chữ kí số ......................................................................................... 57


1

MỞ ĐẦU
Ngày nay, Công nghệ thông tin đƣợc ứng dụng nhiều trong nhiều lĩnh vực nhƣ
kinh doanh, giáo dục, y tế, nông nghiệp, công nghiệp…và ngày càng ảnh hƣởng rất lớn
đến đời sống, kinh tế, xã hội. Mọi công việc hàng ngày của chúng ta đều có thể thực
hiện đƣợc từ xa với sự hỗ trợ của máy vi tính và mạng Internet. Tất cả thông tin liên
quan đến những công việc này đều do máy vi tính quản lý và truyền đi trên hệ thống
mạng. Đối với những thông tin mang tính chất sống còn đối với một số cá nhân, tổ
chức thì vấn đề bảo mật thật sự rất quan trọng, vấn đề khó khăn đặt ra là làm sao thông
tin đƣợc bảo mật và nó đƣợc gửi đến đúng địa chỉ cần đến. Cho nên, việc tìm kiếm và
đƣa ra nhiều giải pháp bảo mật để tránh mọi nguy cơ bị thay đổi, sao chép hoặc mất
mát dữ liệu đƣợc nhiều ngƣời quan tâm.
Việc trao đổi thông tin, giao dịch của các cá nhân, tổ chức qua mạng máy tính
ngày càng phổ biến với yêu cầu độ an toàn và tính xác thực cao. Do đó việc nghiên cứu
và đƣa ra giải pháp hiệu quả hơn, an toàn thông tin và tính xác thực cao là nhiệm vụ
quan trọng trong ngành mật mã học. Vì vậy việc nghiên cứu đề tài: “Ứng dụng mạng
nơron nhân tạo vào xây dựng hàm băm và chữ ký số” là rất cần thiết.
Các phƣơng pháp sử dụng thuật toán để xây dựng một hàm băm mật mã, cụ thể
là hàm băm một chiều (one-way Hash methods). Tất cả các hàm băm cơ bản đã biết,
bao gồm MD2, MD5, SHA,…phần lớn nó có đƣợc kết quả băm dựa trên phƣơng pháp
của phép toán XOR và EQV [5]. Vì vậy, nó có độ an toàn chƣa cao, tính toán phức tạp
và rất khó để tìm phƣơng pháp mã hóa nhanh chóng và đáng tin cậy.
Mạng nơron nhân tạo đã đƣợc ứng dụng nhiều trong lĩnh vực nhận dạng tiếng
nói, xử lý ảnh, điều khiển, tối ƣu hóa, và ƣớc lƣợng thống kê. Mạng nơron sử dụng
hàm cơ sở bán kính RBF đƣợc nghiên cứu và thu đƣợc những kết quả lý thuyết nhất
định. Sự tích hợp mạng nơron nhân tạo vào phƣơng pháp phân tích mật mã của thuật
toán hàm băm (Hash) trở nên đơn giản, an toàn và hiệu quả hơn. Giả sử một thông điệp
M là một chuỗi nhị phân, M chia thành nhiều chuỗi nhị phân với chiều dài N, ta đƣợc:


2

M = M1,M2,··· ,Mk . Trong đó chiều dài của giá trị băm của hàm băm là N (N  128 * i,
i  1,2, …), nếu chiều dài của M không phải là bội số của N, nó có thể kết nối các
chuỗi ngẫu nhiên thích hợp để đáp ứng yêu cầu. Ta sử dụng thuật toán hàm băm bằng
hàm RBFNN, kết quả giá trị băm là một thông điệp rút gọn MD rồi đƣợc mã hoá bằng
thuật toán RSA tạo ra chữ ký số.
Nội dung chính của luận văn đƣợc tổ chức thành 4 chƣơng có nội dung đƣợc mô
tả nhƣ dƣới đây.
Chƣơng 1: Tổng quan về mạng nơron nhân tạo và hàm băm mật mã.
Chƣơng này giới thiệu những nghiên cứu về cơ sở lý thuyết của mạng nơron nhân tạo,
và ứng dụng mạng nơron trong mã hoá. Giới thiệu một số hàm băm đã đƣợc sử dụng
và kỹ thuật mật mã sử dụng cho chữ kí số.
Chƣơng 2: Mạng nơron nhân tạo, mạng nơron RBF và nghiên cứu mạng
nơron RBF đối với chuỗi hỗn loạn. Chƣơng này trình bày những lý thuyết cơ bản về
mạng nơron nhân tạo, tập trung nghiên cứu mô hình mạng nơron RBF.

Chƣơng 3: Hàm băm mật mã và thuật toán cho chữ kí số. Chƣơng này có
hai phần, trong đó phần một trình bày những lý thuyết cơ bản về hàm băm mật mã và
sử dụng hàm RBFNN để xây dựng hàm băm. Phần hai trình bày khái niệm về chữ kí số
và thuật toán chữ kí số đƣợc xây dựng trên hàm băm RBFNN.
Chƣơng 4: Ứng dụng mạng RBF vào xây dựng hàm băm và chữ kí số.
Chƣơng này mô tả tổng quát quy trình xây dựng hàm băm và phần mềm chữ kí số. Cài
đặt thử nghiệm và đánh giá mô hình.
Kết luận. Phần kết luận trình bày những kết quả đạt đƣợc của luận văn và
hƣớng nghiên cứu tiếp theo.


3

CHƢƠNG 1 – TỔNG QUAN VỀ MẠNG NƠRON TRONG MẬT MÃ HỌC
VÀ HÀM BĂM MẬT MÃ
1.1 Giới thiệu chung
Mạng nơron nhân tạo (Artificial Neural Networks) trong những năm gần đây đã
đƣợc nhiều ngƣời quan tâm và áp dụng thành công trong nhiều lĩnh vực khác nhau, nhƣ
tài chính ngân hàng, địa chất và sinh trắc nghiệm... Thật vậy, những vấn đề cần giải
quyết liên quan đến dự báo, phân loại và điều khiển, mạng nơron nhân tạo đều có thể
ứng dụng đƣợc. Sự ứng dụng thành công của mạng nơron có thể là do một số nhân tố.
Trong đó, mạng nơron nhân tạo là những kỹ thuật mô phỏng rất tinh vi, khả năng mô
phỏng các hàm cực kì phức tạp. Đặc biệt, mạng nơron nhân tạo hoạt động theo mô hình
tuyến tính đƣợc sử dụng rộng rãi trong hầu hết các lĩnh vực. Ngƣời sử dụng mạng
nơron nhân tạo thu thập dữ liệu đặc trƣng, và sau đó gọi các thuật toán huấn luyện để
có thể tự học cấu trúc của dữ liệu. Tuy nhiên, những ngƣời sử dụng loại mạng nơron
phù hợp và biết cách áp dụng thành công vẫn thấp hơn nhiều những ngƣời sử dụng các
phƣơng pháp thống kê truyền thống.
Mật mã hóa là quá trình chuyển đổi các thông tin thông thƣờng (văn bản thƣờng
hay văn bản rõ) thành dạng không đọc trực tiếp đƣợc, là văn bản mã hóa. Ý tƣởng quan
trọng của mật mã là khả năng gửi thông tin giữa những ngƣời tham gia và có thể ngăn
chặn ngƣời khác đọc nó. Phƣơng pháp mã hóa nhiều có sẵn mà là dựa trên lý thuyết số,
nhƣng nó có nhƣợc điểm là yêu cầu tính toán lớn, phức tạp và tốn thời gian. Để khắc
phục những hạn chế, mạng nơron nhân tạo (ANN) đã đƣợc áp dụng để giải quyết nhiều
vấn đề. Các ANN có nhiều đặc điểm nhƣ học tập, khái quát, yêu cầu dữ liệu ít hơn, tính
toán nhanh chóng, dễ thực hiện trên các phần mềm và phần cứng có sẵn. Bài viết tổng
quan của Adel A. El-Zoghabi1, Amr H. Yassin2, Hany H. Hussien (2013) về việc sử
dụng các mạng nơron nhân tạo trong mật mã học và nghiên cứu hoạt động của nó về
các vấn đề liên quan đến mật mã.


4

1.2 Các nghiên cứu về mạng nơron nhân tạo
Mô hình đầu tiên về mạng nơron nhân tạo diễn ra vào năm 1943 khi nhà thần
kinh học Warren McCulloch và nhà toán học Walter Pitts viết bài báo mô tả cách thức
các nơron hoạt động. Họ cũng đã tiến hành xây dựng một mạng nơron đơn giản bằng
các mạch điện. Các nơron của họ đƣợc xem nhƣ là các thiết bị nhị phân với ngƣỡng cố
định. Kết quả của các mô hình này là các hàm logic đơn giản chẳng hạn nhƣ “a OR b”
hay “a AND b”. Tiếp bƣớc các nghiên cứu này, năm 1949 Donald Hebb cho xuất bản
cuốn sách Organization of Behavior. Cuốn sách đã chỉ ra rằng các nơron nhân tạo sẽ
trở lên hiệu quả hơn sau mỗi lần chúng đƣợc sử dụng.
Những tiến bộ của máy tính đầu những năm 1950 giúp cho việc mô hình hóa
các nguyên lý của những lý thuyết liên quan tới cách thức con ngƣời suy nghĩ đã trở
thành hiện thực. Nathanial Rochester sau nhiều năm làm việc tại các phòng thí nghiệm
nghiên cứu của IBM đã có những nỗ lực đầu tiên để mô phỏng một mạng nơron. Trong
thời kì này tính toán truyền thống đã đạt đƣợc những thành công rực rỡ trong khi đó
những nghiên cứu về nơron còn ở giai đoạn sơ khai. Mặc dù vậy những ngƣời ủng hộ
triết lý “thinking machines” (các máy biết suy nghĩ) vẫn tiếp tục bảo vệ cho lập trƣờng
của mình.
Năm 1956 dự án Dartmouth nghiên cứu về trí tuệ nhân tạo (Artificial
Intelligence) đã mở ra thời kỳ phát triển mới cả trong lĩnh vực trí tuệ nhân tạo lẫn mạng
nơron. Tác động tích cực của nó là thúc đẩy hơn nữa sự quan tâm của các nhà khoa học
về trí tuệ nhân tạo và quá trình xử lý ở mức đơn giản của mạng nơron trong bộ não con
ngƣời.
Những năm tiếp theo của dự án Dartmouth, John von Neumann đã đề xuất việc
mô phỏng các nơron đơn giản bằng cách sử dụng rơle điện áp hoặc đèn chân không.
Nhà sinh học chuyên nghiên cứu về nơron Frank Rosenblatt cũng bắt đầu nghiên cứu
về Perceptron. Sau thời gian nghiên cứu này Perceptron đã đƣợc cài đặt trong phần
cứng máy tính và đƣợc xem nhƣ là mạng nơron lâu đời nhất còn đƣợc sử dụng đến


5

ngày nay. Perceptron một tầng rất hữu ích trong việc phân loại một tập các đầu vào có
giá trị liên tục vào một trong hai lớp. Perceptron tính tổng có trọng số các đầu vào, rồi
trừ tổng này cho một ngƣỡng và cho ra một trong hai giá trị mong muốn có thể. Việc
nghiên cứu bị chững lại gần một thập niên do nhận xét của Minsky và Papett(1969) về
các nhƣợc điểm của perceptron một tầng.
Đến giữa những năm 1980 mạng MLP (Multi Layer Perceptron) đƣợc nghiên
cứu và ứng dụng lại nhờ thuật toán lan truyền ngƣợc sai số (Rumelhart và McCelland
1986; Parker 1985) và trở thành công cụ mạnh để xấp xỉ hàm nhiều biến. Tuy vậy,
mạng MLP có thời gian huấn luyện lâu, chất lƣợng mạng tùy thuộc vào hiệu quả giải
bài toán cực trị và chƣa có phƣơng pháp tốt nào để xác định kiến trúc đủ tốt cho mạng.
Đến năm 1987, Powell đề xuất dùng hàm cơ sở xuyên tâm RBF để giải quyết
bài toán nội suy nhiều biến [9]. Kỹ thuật này đƣợc Broomhead và Low (1988) giới
thiệu nhƣ là mạng nơron [10]. Mạng RBF với hàm cơ sở bán kính có thể xem là dạng
lai của các phƣơng pháp học dựa trên mẫu (k-lân cận gần nhất và hồi quy trọng số địa
phƣơng) và mạng nơron MLP.
Một số mô hình lý thuyết của mạng nơron đã đƣợc phân tích để tính toán một số
tính chất, chẳng hạn khả năng lƣu trữ tối đa, độc lập với các thuật toán học. Nhiều kỹ
thuật ban đầu đƣợc phát triển để nghiên cứu các hệ từ trƣờng nhiễu (disordered
magnetic systems (spin glasses)) đã đƣợc áp dụng thành công cho các kiến trúc mạng
nơron đơn giản, chẳng hạn mạng perceptron. Công trình nghiên cứu có ảnh hƣởng lớn
của E.Gardner và B.Derrida đã cho thấy nhiều tính chất thú vị về các perceptron với
các trọng số có giá trị là số thực, trong khi nghiên cứu sau này của W. Krauth và M.
Mezard đã mở rộng các nguyên lý này cho các trọng số có giá trị 0 hoặc 1 .


6

1.2.1 Các nghiên cứu về cấu trúc liên kết mạng nơron
Những cấu trúc liên kết mạng nơron đƣợc sử dụng thƣờng xuyên nhất đƣợc mô
tả dƣới đây: [11]
- Mạng nơron phản hồi (Recurrent Neural Networks): Là một mạng lƣới tế bào
nơron gửi tín hiệu phản hồi với nhau, chẳng hạn nhƣ mạng Hopfield(1980), mạng
Elman(1990) và mạng Jordan. Điều này cho phép mô hình hóa các hành vi năng động
với những hạn chế là tiêu tốn bộ nhớ nhiều hơn so với các mạng trực tiếp.
- Mạng nơron hồi quy nói chung (General regression neural networks): Một
mạng dựa trên bộ nhớ cung cấp các ƣớc lƣợng của các biến liên tục và hội tụ là cơ sở
(tuyến tính hoặc phi tuyến) hồi quy đƣợc mô tả. Mạng nơron hồi quy nói chung là một
thuật toán học với một cấu trúc đánh giá song song. Nó đƣợc chỉ ra rằng, ngay cả với
dữ liệu thƣa thớt trong một không gian đo đa chiều, các thuật toán cung cấp cho quá
trình chuyển đổi trơn tru từ một giá trị quan sát khác. Các hình thức thuật toán có thể
đƣợc sử dụng cho bất kỳ vấn đề hồi quy trong đó giả thiết tuyến tính là không hợp lý.
- Mạng nơron hỗn loạn (Chaotic neural networks): Mạng nơron hỗn loạn cần
tăng đáng kể dung lƣợng bộ nhớ. Mỗi bộ nhớ đƣợc mã hóa bởi một quỹ đạo tuần hoàn
không ổn định (Unstable Periodic Orbit. Một chuỗi nhị phân đƣợc tạo ra từ một hệ
thống hỗn loạn, độ lệch và trọng lƣợng của tế bào nơron đƣợc thiết lập.
- Mạng nơron nhiều lớp (Multilayer neural networks): MLP bao gồm nhiều lớp
của các đơn vị tính toán, kết nối với nhau theo một cách của mạng Feedforward. MLP
sử dụng một loạt các kỹ thuật học tập, phổ biến nhất là lan truyền ngƣợc.
- Mật mã nơron (Neural cryptography): Là một nhánh của mật mã dành riêng
cho việc phân tích các ứng dụng của các thuật toán ngẫu nhiên, đặc biệt là các thuật
toán mạng lƣới nơron , để sử dụng trong mã hóa và giải mã. Mạng nơron đƣợc biết đến
với khả năng của mình để khám phá lựa chọn không gian giải pháp của một vấn đề
nhất định. Tính năng này tìm thấy một thích hợp tự nhiên của các ứng dụng trong lĩnh
vực giải mã. Những ý tƣởng của học hỏi lẫn nhau, tự học, và hành vi ngẫu nhiên của


7

mạng lƣới nơron và các thuật toán tƣơng tự có thể đƣợc sử dụng cho các khía cạnh
khác nhau của mật mã, giống nhƣ mật mã khóa công khai, giải quyết vấn đề phân phối
khóa sử dụng đồng bộ hóa mạng nơron lẫn nhau.
1.2.2 Các nghiên cứu về ứng dụng mạng nơron trong mã hoá
Gần đây các tài liệu chỉ ra rằng đã có sự quan tâm ngày càng tăng trong việc áp
dụng các lớp khác nhau của mạng lƣới nơron đến các vấn đề liên quan đến mật mã
trong những năm qua. Công trình gần đây đã xem xét việc sử dụng các mạng nơron
trong hệ thống mã hóa [11]. Điều này có thể đƣợc phân loại thành ba phần:
- Đồng bộ hoá mạng nơron (Synchronization neural networks ): Năm 2003,
Wolfgang Kinzel đề xuất một khóa bí mật sử dụng mạng nơron nhân tạo qua kênh
công cộng. Đồng bộ hoá mạng nơron và ứng dụng của nó đến mã hoá, đƣợc Einat
Klein (2004) trình bày về mật mã bí mật quan trọng dựa trên mạng nơron trong một
khoá công cộng. Mạng nơron với mã hoá truy vấn đƣợc N. Prabakaran (2010) đề xuất
một khóa bí mật sử dụng mật mã nơron, dựa trên đồng bộ hóa của Tree Parity
Machines (TPMS) bằng cách học hỏi lẫn nhau. Năm 2011, RM Jogdand đề xuất một
khóa bí mật dựa trên các mạng nơron, mật mã nơron có hai mạng thông tin liên lạc tiếp
nhận một vectơ đầu vào, tạo ra một bit đầu ra và đƣợc huấn luyện dựa trên bit đầu ra.
Mật mã trong cấu trúc mạng nơron kỹ thuật số đƣợc Pratap Singh (2012) tạo ra một
khóa bí mật trên một khoá công cộng dựa trên mạng lƣới thần kinh. Mật mã nơron cho
Secret Key Exchange và mã hóa AES, 2013. Ajit Singh trình bày thuật toán trao đổi
khoá cho mã hoá, mô hình này có nhiều lớp feed-forward mạng lƣới nơron trong đó có
hai Tree Parity Machines (TPM) để đồng bộ hóa với trọng lƣợng ban đầu ngẫu nhiên
đóng vai trò nhƣ khóa bí mật chung cho quá trình mã hóa và giải mã.
- Mạng nơron hỗn loạn (Chaotic neural networks): Mật mã dựa trên sự trễ mạng
nơron hỗn loạn, 2006, Wenwu Yu đề xuất một kỹ thuật mã hóa dựa trên mạng nơron
Hopfield hỗn loạn với thay đổi độ trễ thời gian. Năm 2009, Jiyun Yang phân tích mô
hình đề xuất của Wenwu Yu, rất khó để lấy đƣợc khóa của hệ thống mã hoá thông qua


8

các cuộc tấn công cổ điển vì không gian khóa lớn. Tuy nhiên, các khóa tƣơng tự đƣợc
sử dụng trong tất cả các quá trình mã hóa, nó có thể dễ dàng lấy đƣợc bởi các cuộc tấn
công bản rõ đƣợc chọn, chỉ sử dụng hai cặp bản rõ và bản mã . Kết quả mô phỏng cho
thấy mã hoá hỗn loạn đề xuất là không an toàn. Năm 2012, Rajender trình bày mạng
nơron hỗn loạn cho mật mã, mạng nơron hỗn loạn đƣợc sử dụng để tạo ra một chuỗi
nhị phân che dấu bản rõ. Một thực nghiệm khảo sát của Using ANN Based N-State
Sequential Machine và Chaotic Neural Network trong lĩnh vực mật mã, 2012. Nitin
Shukla đề xuất hai mạng nơron nhân tạo cho mật mã. Mạng đầu tiên là mạng nơron
dựa trên tuần tự n trạng thái và một mạng nơron hỗn loạn. Năm 2012, Tarip A. đề xuất
mô hình hệ thống thích nghi có chứa MPEG-2 nén và một mạng nơron hỗn loạn cho
mật mã. Các thuật toán hỗ trợ kiểm soát chất lƣợng và tốc độ bit đƣợc yêu cầu của
nhiều ứng dụng truyền video, đƣợc coi là một lĩnh vực đầy hy vọng mới liên quan đến
bảo vệ video và nén. Năm 2013, Navita A. đề nghị hai mạng nơron nhân tạo cho lĩnh
vực an ninh mật mã. Mô hình này giống hệt với mô hình đƣợc trình bày bởi Nitin
Shukla. Kết quả thực nghiệm cho thấy hai mạng này đƣợc an toàn và hiệu quả. Năm
2013, Geetha Vani đề xuất một mô hình lai cho truyền dữ liệu an toàn trong tín hiệu
âm thanh bằng cách sử dụng HCNN (Hopfield Chaotic Neural Network ) và DD DWT
(Double Density Discrete Wavelet Transform).
- Mạng nơron nhiều lớp (Multi-layer Neural networks): Bảo mật dữ liệu dựa
trên mạng nơron, 2005, Khaled M. đã trình bày mô hình mật mã dựa trên các mạng
nơron hồi quy. Năm 2006, Khalil Shihab cung cấp một cơ chế mã hóa bất đối xứng
mới dựa trên các mạng thần kinh nhân tạo. Các chƣơng trình giải mã và quá trình tạo
hệ thống khóa công khai dựa trên nhiều lớp mạng thần kinh. Giải pháp nơron cho an
ninh thông tin, 2007. Seref S. đã trình bày phƣơng pháp bảo mật dữ liệu mới trong
truyền thông điện tử dựa trên các mạng nơron nhân tạo. Các mô hình mạng nơron
chuyển thông điệp đơn giản thành dạng nhị phân và ứng dụng mô hình mạng nơron
vào nó để có đƣợc mật mã khác nhau. Năm 2012, Eva Volna đề xuất mạng nơron nhiều


9

lớp trong mật mã học. Các mạng nơron nhiều lớp đƣợc thay đổi bởi lan truyền ngƣợc.
Mô hình dự kiến chuyển đổi các chuỗi kí tự mã ASCII thành chuỗi các bit và chia
thành 6 khối bit đƣợc sử dụng làm đầu vào cho quá trình mã hóa. Khoá mật mã là cấu
trúc mạng lƣới nơron có chứa lớp đầu vào, lớp ẩn, lớp ra, và trọng lƣợng cập nhật. Kết
quả thực nghiệm cho thấy rằng hệ thống này là an toàn.
1.2.3 Các nghiên cứu trong nƣớc về ứng dụng mạng nơron
Ở Việt Nam, từ những năm 90, cũng đã có rất nhiều nhà khoa học quan tâm đến
lý thuyết về mạng nơron và những ứng dụng của nó trong nhiều lĩnh vực khác nhau.
Tiên phong trong việc đƣa kiến thức về mạng nơron phổ biến đến độc giả là quyển
sách “Trí tuệ nhân tạo, Mạng nơron phương pháp và ứng dụng” của Nguyễn Đình
Thúc, NXB Giáo dục năm 2000. Tiếp đó phải kể đến quyển “Hệ mờ, mạng nơron và
ứng dụng” của Bùi Công Cƣờng, Nguyễn Doãn Phƣớc, NXB Khoa học và Kỹ thuật Hà
nội, 2001; quyển “Hệ mờ & nơron trong kỹ thuật điều khiển” của Nguyễn Nhƣ Hiển,
Lại Khắc Lãi, NXB Khoa học tự nhiên và công nghệ. Còn những công trình nghiên
cứu về mạng nơron có thể kể đến nhƣ:
 Nguyễn Kỳ Phùng, Nguyễn Khoa Việt Trƣờng, “Mô hình hoá các quá trình xử
lý nước thải bằng mạng nơron nhân tạo”, Trƣờng Đại học Khoa học Tự nhiên Đại học
Quốc gia Thành phố Hồ Chí Minh.
+ Đối tƣợng là mô hình bể xử lý nƣớc thải, các tác giả đã xây dựng mô hình,
tối ƣu hoá quá trình luyện mạng và đã kiểm chứng kết quả với sai số nhỏ.
+ Đã xây dựng đƣợc chƣơng trình ứng dụng mạng nơron cho dự báo chất
lƣợng đầu ra của hệ thống xử lý nƣớc thải. Cùng với thuật toán tối ƣu hoá mạng
nơron khi cho số nút ẩn thay đổi để tìm ra cấu trúc mạng tối ƣu nhất. Chƣơng
trình đã thể hiện rõ ƣu việt so với chƣơng trình mạng nơron của Matlab.
+ Thuật toán tối ƣu hoá quá trình luyện mạng là một bƣớc cải tiến so với các
chƣơng trình ứng dụng mạng nơron thông thƣờng, chẳng hạn nhƣ Matlab. Với


10

quá trình lặp lại nhiều lần và ghi nhận những mạng cho kết quả tốt nhất sau mỗi
lần lặp, ta có thể chọn đƣợc mạng cho kết quả tốt hơn và sai số ổn định hơn.
 Đỗ Trung Hải (2008) “Ứng dụng lý thuyết mờ và mạng nơron để điều khiển hệ
chuyển động”, Luận án tiến sỹ, Trƣờng Đại học Bách khoa Hà Nội.
+ Nghiên cứu và đề xuất cấu trúc hệ mờ - nơron với số lớp và số nơron thích
ứng (5 lớp và số nơron lớp 2 tối thiểu là 2 nơron) nhằm đảm bảo độ chính xác và
tốc độ tính toán cho hệ điều khiển thời gian thực.
+ Xây dựng thuật toán nhận dạng trực tuyến, cập nhật thích nghi thông số
nhằm đảm bảo tối thiểu hoá sai lệch phục vụ cho việc nhận dạng và điều khiển
hệ. Việc ứng dụng đại số Lie và điều khiển theo phƣơng pháp tuyến tính hoá
chính xác thích nghi có khả năng ứng dụng tổng quát cho một lớp hệ điều khiển
chuyển động.
+ Với hệ chuyển động cụ thể và phức tạp là hệ khớp nối mềm công trình đã
đƣa ra thuật toán mô phỏng hệ. Các kết quả mô phỏng đã chứng tỏ tính đúng
đắn của luật nhận dạng và điều khiển, cấu trúc cũng nhƣ mô hình điều khiển hệ
chuyển động.

1.3 Các nghiên cứu liên quan về hàm băm mật mã và chữ kí số
1.3.1 Tổng quan về hàm băm
Các hàm băm dựa trên mật mã khối đã đƣợc nghiên cứu khá mạnh trên thế giới,
các nhóm nghiên cứu tập trung chủ yếu vào hƣớng xây dựng các hệ mật mã khối và
đƣa chúng vào lƣợc đồ xây dựng hàm băm. Hiện nay trên thế giới có khá nhiều hệ mật
mã khối khóa bí mật đã đƣợc nghiên cứu sử dụng cho các lƣợc đồ xây dựng hàm băm
nhƣ trên, điển hình là các hệ mật sau: DES, IDEA, RD.5, TDEA, AES, CAST,…
Những nghiên cứu về các hệ mật mã này và phƣơng pháp sử dụng chúng cho lƣợc đồ
hàm băm đã xuất hiện trong rất nhiều công trình từ rất nhiều năm qua.
Hàm băm MD4 đƣợc Riverst đề xuất năm 1990 và một phiên bản cải tiến là
MD5 cũng đƣợc đƣa ra năm 1991. Vì kết quả của Dobbertin [7,6] ngƣời ta không còn


11

sử dụng MD4 để băm (một cách an toàn) nữa. Các hàm băm khác bao gồm RIPEMD128, và RIPEMD-160. SHA đƣợc công bố nhƣ chuẩn FIPS năm 1993. SHA đƣợc giới
thiệu bởi Viện Tiêu chuẩn và Công nghệ Quốc gia Mỹ (NIST) năm 1993, với tên gọi là
SHA-0. Năm 1995 có một thay đổi nhỏ với SHA-0, dẫn tới SHA-1 đƣợc giới thiệu.
SHA-1, MD5, và RIPEMD-160 nằm trong số các thuật toán tóm tắt thông điệp đƣợc
dùng rộng rãi nhất của năm 2005. Tháng 8 năm 2004, các nhà nghiên cứu đã tìm đƣợc
các điểm yếu của một loạt hàm băm, trong đó có MD5, SHA-0 và RIPEMD. Tháng 2
năm 2005, ngƣời ta ghi nhận một tấn công đối với SHA-1. Tháng 8 năm 2005, ngƣời ta
lại ghi nhận một tấn công khác đối với SHA-1[20] . Sau sự kiện trên, mặc dù chƣa phát
hiện một tấn công thực tế nào lên SHA- 1 nhƣng NIST vẫn khuyến cáo chuyển sang sử
dụng họ hàm băm an toàn hơn là SHA- 2 (bao gồm SHA- 224, SHA- 256, SHA- 384,
SHA- 512) và đã dự kiến không sử dụng SHA- 1 trong chữ ký số. Trong những năm
gần đây Viện NIST đã tổ chức nhiều cuộc hội thảo về hàm băm nhằm lựa chọn những
thuật toán với chuẩn mã dữ liệu mới. Trong đó có các thuật toán Blake, Grost, JH,
Keccak, Skein là những thuật toán đƣợc cải tiến rất quan trọng, có thể vận dụng các
thành tựu nghiên cứu độ an toàn lý thuyết đã có cho các cấu trúc mà các hàm băm đƣợc
thiết kế trƣớc đó.
1.3.2 Tổng quan chữ ký số
1.3.2.1 Khái niệm về chữ ký số
Chữ ký số là đoạn dữ liệu gắn liền với văn bản gốc để chứng thực tác giả của
văn bản và giúp cho ngƣời nhận kiểm tra tính toàn vẹn của văn bản gốc.
Chữ ký số (khóa công khai) là mô hình sử dụng các kỹ thuật mật mã để gắn với
mỗi ngƣời sử dụng một cặp khóa công khai - bí mật và qua đó có thể ký các văn bản
điện tử cũng nhƣ trao đổi các thông tin mật. Quá trình sử dụng chữ ký số bao gồm 2
quá trình: tạo chữ ký và kiểm tra chữ ký [21] .
Chữ ký số khóa công khai dựa trên nền tảng mật mã hóa khóa công khai. Để có
thể trao đổi thông tin trong môi trƣờng này, mỗi ngƣời sử dụng có một cặp khóa: một


Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay

×