1. Trang chủ
  2. » Luận Văn - Báo Cáo

Phát triển một số phương pháp bảo mật và xác thực thông tin (Luận văn thạc sĩ)

106 57 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 106
Dung lượng 2,12 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Phát triển một số phương pháp bảo mật và xác thực thông tin (Luận văn thạc sĩ)Phát triển một số phương pháp bảo mật và xác thực thông tin (Luận văn thạc sĩ)Phát triển một số phương pháp bảo mật và xác thực thông tin (Luận văn thạc sĩ)Phát triển một số phương pháp bảo mật và xác thực thông tin (Luận văn thạc sĩ)Phát triển một số phương pháp bảo mật và xác thực thông tin (Luận văn thạc sĩ)Phát triển một số phương pháp bảo mật và xác thực thông tin (Luận văn thạc sĩ)Phát triển một số phương pháp bảo mật và xác thực thông tin (Luận văn thạc sĩ)Phát triển một số phương pháp bảo mật và xác thực thông tin (Luận văn thạc sĩ)Phát triển một số phương pháp bảo mật và xác thực thông tin (Luận văn thạc sĩ)Phát triển một số phương pháp bảo mật và xác thực thông tin (Luận văn thạc sĩ)Phát triển một số phương pháp bảo mật và xác thực thông tin (Luận văn thạc sĩ)Phát triển một số phương pháp bảo mật và xác thực thông tin (Luận văn thạc sĩ)Phát triển một số phương pháp bảo mật và xác thực thông tin (Luận văn thạc sĩ)Phát triển một số phương pháp bảo mật và xác thực thông tin (Luận văn thạc sĩ)Phát triển một số phương pháp bảo mật và xác thực thông tin (Luận văn thạc sĩ)

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

NGUYỄN ĐỨC TOÀN

PHÁT TRIỂN MỘT SỐ PHƯƠNG PHÁP BẢO MẬT VÀ XÁC THỰC THÔNG TIN

LUẬN ÁN TIẾN SĨ KHOA HỌC MÁY TÍNH

THÁI NGUYÊN - 2019

Trang 2

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

NGUYỄN ĐỨC TOÀN

PHÁT TRIỂN MỘT SỐ PHƯƠNG PHÁP BẢO MẬT VÀ XÁC THỰC THÔNG TIN

Chuyên ngành: Khoa học máy tính

Trang 3

MỤC LỤC

LỜI CAM ĐOAN v

LỜI CẢM ƠN vi

DANH MỤC CÁC CHỮ VIẾT TẮT vii

DANH MỤC CÁC HÌNH viii

DANH MỤC CÁC BẢNG ix

MỞ ĐẦU 1

1 Tính cấp thiết của đề tài 1

2 Sự cần thiết của bảo mật và xác thực thông tin 2

3 Tình hình nghiên cứu trong nước và ngoài nước 2

4 Những vấn đề được giải quyết trong luận án 5

5 Mục đích nghiên cứu 6

6 Đối tượng phạm vi nghiên cứu và phương pháp nghiên cứu 6

6.1 Đối tượng và phạm vi nghiên cứu: 6

6.2 Phương pháp nghiên cứu: 7

7 Nhiệm vụ nghiên cứu 7

8 Ý nghĩa khoa học và thực tiễn 7

9 Những đóng góp mới của luận án 7

9.1 Phần bảo mật thông tin 7

9.2 Phần xác thực thông tin 8

10 Cấu trúc của luận án 8

Chương 1 MỘT SỐ KHÁI NIỆM XÁC THỰC VÀ BẢO MẬT THÔNG TIN 9

1.1 Bảo mật thông tin 9

1.2 Bảo vệ thông tin trong quá trình truyền tin 10

1.2.1 Các loại hình tấn công 10

1.2.2 An toàn bảo mật hệ thống thông tin 12

1.2.3 Các biện pháp bảo vệ thông tin 13

1.2.4 Vai trò của mật mã trong việc bảo mật thông tin 13

1.3 Mật mã đối xứng hiện đại 14

Trang 4

1.3.2 Mật mã khối 15

1.3.2.1 Nguyên lý chung 15

1.3.2.2Giới thiệu AES 17

1.3.2.3 Thuật toán AES 17

1.4 Mã hóa khóa công khai 22

1.4.1 Lý do phải sử dụng mã hóa khoá công khai 25

1.4.2Các đặc trưng cần phải có của mã hóa khóa công khai 25

1.5 Hàm băm 25

1.5.1Các tính chất của hàm băm 25

1.5.2Các yêu cầu đối với hàm băm 26

1.6 Chữ ký số 27

1.7 Kết luận chương 1 29

Chương 2 PHÁT TRIỂN LƯỢC ĐỒ MÃ HÓA VÀ GIẢI MÃ 30

2.1 Một số mô hình ứng dụng mã khối 31

2.1.1 Mô hình Electronic Codebook – ECB 31

2.1.2 Mô hình Cipher Block Chaining – CBC 32

2.1.3 Mô hình Counter – CTR 33

2.1.4 Mô hình Output Feedback – OFB 34

2.1.5 Mô hình Cipher Feedback – CFB 35

2.2 Đề xuất lược đồ mã hóa và giải mã dựa trên thuật toán mật mã với khóa sử dụng một lần (OTP) 36

2.2.1 Mã hóa: 37

2.2.2 Ký bản rõ và gửi bản mã: 37

2.2.3 Xác thực và giải mã: 37

2.2.4 Đánh giá độ an toàn của lược đồ đề xuất 41

2.2.5 Hiệu quả thực hiện 42

2.2.6 Đề xuất một số tiêu chuẩn kiểm tra dãy bit giả ngẫu nhiên 43

2.3 Kết luận chương 2 47

Trang 5

3.1 Đề xuất lược đồ chữ ký số dựa trên hệ mật định danh 52

3.1.1 Lược đồ đề xuất 52

3.1.1.1 Sinh khóa 52

3.1.1.2 Tách khóa 52

3.1.1.3 Hình thành chữ ký tập thể 52

3.1.1.4 Xác thực chữ ký tập thể 53

3.1.2 Độ an toàn của lược đồ đề xuất 54

3.2 Đề xuất lược đồ chữ ký số tập thể ủy nhiệm dựa trên hệ mật định danh 55

3.2.1 Sinh khóa 55

3.2.2 Tách khóa 55

3.2.3 Người ủy nhiệm ký 56

3.2.4 Xác thực chữ ký người ủy nhiệm 56

3.2.5 Sinh khóa cho người được ủy nhiệm 56

3.2.6 Kiểm tra ủy nhiệm: 57

3.2.7 Sinh khóa ủy nhiệm: 57

3.2.8 Sinh chữ ký ủy nhiệm 57

3.2.9 Xác thực chữ ký ủy nhiệm 57

3.3 Cải tiến chữ ký mù dựa trên đường cong Elliptic 66

3.3.1 Cơ sở toán học 66

3.3.2 Lược đồ mã hóa dựa trên đường cong Elliptic 67

3.3.2.1 Người tham gia 67

3.3.2.2 Mô hình mã hóa mù trên đường cong Elliptic 68

3.3.2.3 Mã hóa mù: 69

3.3.2.4 Xác minh chữ ký 70

3.3.3 Giải mã ………71

3.3.4 Đề xuất chữ ký mù dựa trên đường cong Elliptic 71

3.3.4.1 Cải tiến: 71

3.3.4.2 Chứng minh tính đúng đắn 72

3.3.5 Phân tích bảo mật 72

Trang 6

3.4.1 Hàm song tuyến tính 75

3.4.2 Lược đồ đề xuất 77

3.5 Kết luận chương 3 84

KẾT LUẬN VÀ KIẾN NGHỊ 85

1 Kết luận 85

2 Kiến nghị về định hướng nghiên cứu tiếp theo 87

DANH MỤC CÁC CÔNG TRÌNH ĐÃ CÔNG BỐ CỦA 88

TÀI LIỆU THAM KHẢO 90

Trang 7

LỜI CAM ĐOAN

Tôi xin cam đoan các kết quả trình bày trong luận án là công trình nghiên cứu của tôi dưới sự hướng dẫn của các cán bộ hướng dẫn Các số liệu, kết quả trình bày trong luận án hoàn toàn trung thực và chưa được công bố trong các công trình trước đây Các kết quả sử dụng tham khảo đều được trích dẫn đầy đủ và theo đúng quy định

Thái Nguyên, tháng 9 năm 2019

Nghiên cứu sinh

Nguyễn Đức Toàn

Trang 8

LỜI CẢM ƠN

Luận án tiến sĩ này được thực hiện tại Trường Đại học Công nghệ thông tin và Truyền thông - Đại học Thái Nguyên NCS xin bày tỏ lòng biết ơn đến PGS TS Bùi Thế Hồng và TS Nguyễn Văn Tảo đã trực tiếp hướng dẫn và tạo mọi điều kiện thuận lợi cho NCS trong suốt quá trình nghiên cứu và phát triển luận án

NCS cũng xin cảm ơn Đại tá, TS Đặng Minh Tuấn, đã hợp tác cùng tôi trong việc nghiên cứu và đăng tải các bài báo khoa học

NCS xin chân thành cảm ơn Ban giám hiệu, khoa Khoa học Máy tính - Trường Đại học Công nghệ Thông tin và Truyền thông - Đại học Thái Nguyên, đã tạo mọi điều kiện thuận lợi cho tôi để hoàn thành và bảo vệ luận án trong thời gian tôi làm nghiên cứu sinh Đồng thời NCS cảm ơn Ban giám hiệu Trường Cao đẳng Công nghiệp Thực phẩm nơi tôi công tác và các đồng nghiệp đã tạo điều kiện và giúp đỡ tôi hoàn thành được đề tài nghiên cứu của mình

Cuối cùng là sự biết ơn tới gia đình, bạn bè đã thông cảm, động viên giúp đỡ cho tôi

có đủ nghị lực để hoàn thành luận án

Thái Nguyên, tháng 9 năm 2019

Nghiên cứu sinh

Nguyễn Đức Toàn

Trang 9

ACMA Adaptive Chosen Message

Attacks

Tấn công văn bản được lựa chọn thích ứng

AES Advanced Encryption Standard Chuẩn mã hóa nâng cao

DES Data Encryption Standards Chuẩn mã hóa dữ liệu

DSA Digital Signature Algorithm Thuật toán chữ ký số

EC Elliptic Curve Đường cong Elliptic

ECC Elliptic Curve Cryptography Hệ mật dựa trên đường cong Elliptic ECDH Elliptic Curve Diffie–Hellman Thuật toán Diffie–Hellman

ECDLP Elliptic Curve Logarit Problem Bài toán Logarit rời rạc trên đường

cong Elliptic ECDSA The Elliptic Curve Digital

Signature Algorithm

Chữ ký số trên đường cong Elliptic

GCD Greatest Common Divisor Ước số chung lớn nhất

KMA Known Message Attacks Tấn công văn bản đã biết

MSMS Multisignature for Multi Section Chữ ký số tập thể đa thành phần

OTP One_Time_ Pad Khóa sử dụng một lần

PPT Probabilistic polynomial

algorithm

Thuật toán xác suất thời gian đa thức

RMA Random Message Attacks Tấn công văn bản ngẫu nhiên

NIST National Institute for Standards

and Technology (US)

Viện Tiêu chuẩn và Công nghệ Quốc gia (Hoa Kỳ)

IDEA International Data Encryption

Algorithm

Thuật toán mã hóa dữ liệu quốc tế

RSA Rivest Shamir Adleman Thuật toán mật mã hóa khóa công khai

Trang 10

DANH MỤC CÁC HÌNH

Hình 1.1 Xem trộm thông tin 11

Hình 1.2 Sửa thông tin 11

Hình 1.3 Mạo danh 11

Hình 1.4 Phát lại thông tin 11

Hình 1.5 Mô hình bảo mật truyền thông tin 12

Hình 1.6 Mô hình phòng chống thâm nhập và phá hoại hệ thống 13

Hình 1.7 Mô hình mã dòng 15

Hình 1.8 Mô hình mã hóa và giải mã bằng thuật toán AES 18

Hình 1.9 Đầu vào và đầu ra của chuỗi trạng thái mã 18

Hình 1.10 SubBytes thao tác trên mỗi byte trong trạng thái một cách độc lập 19

Hình 1.11 ShiftRows thao tác độc lập trên các dòng trong trạng thái 20

Hình 1.12 MixColumns thao tác độc lập trên các dòng trong trạng thái 21

Hình 1.13 Các từ trong bảng liệt kê khóa được XOR với các cột trong trạng thái 21

Hình 1.14 Mật hóa và xác thực tin gửi bằng khóa công khai 24

Hình 2.1 Mô hình ECB 31

Hình 2.2 Mô hình CBC 33

Hình 2.3 Mô hình mã dòng 34

Hình 2.4 Mô hình OFB 35

Hình 2.5 Mô hình CFB 36

Hình 2.6 Quy trình mã hóa 40

Hình 2.7 Quy trình giải mã 40

Hình 3.1 Màn hình chạy file chương trình 63

Hình 3.2 Giao diện trước khi bắt đầu chạy file 64

Hình 3.3 Kết quả thực nghiệm 65

Trang 11

Bảng 1.1 Bảng S-Box 19

Bảng 1.2 Khoảng dịch chuyển tương ứng với số dòng và độ dài khối khác nhau 20

Bảng 3.1.Các tham số cho lược đồ mã hóa trên đường cong Elliptic 68

Bảng 3.2 Thực hiện mã hóa mù trên đường cong Elliptic 70

Bảng 3.3 Mã hóa mù trên đường cong Elliptic được đề xuất 73

Trang 12

MỞ ĐẦU

1 Tính cấp thiết của đề tài

Bảo mật và bảo đảm an toàn thông tin đã và đang là vấn đề thời sự được nhiều nhà khoa học tập trung nghiên cứu Đây là một chủ đề rộng có liên quan đến nhiều lĩnh vực Trong thực tế có thể có nhiều phương pháp được thực hiện để đảm bảo an toàn thông tin Ngày nay, với sự phát triển nhanh chóng của hạ tầng truyền thông, đặc biệt là trong môi trường không an toàn như là Internet, người sử dụng dựa trên nền tảng này để truyền các thông tin thì nguy cơ xâm nhập trái phép vào các hệ thống thông tin, các mạng dữ liệu ngày càng gia tăng Nhiều chuyên gia đang tập trung nghiên cứu và tìm mọi giải pháp để đảm bảo an toàn, an ninh cho hệ thống, đặc biệt là các hệ thống mạng máy tính trong các cơ quan nhà nước, các công ty, tập đoàn công nghiệp Việc bảo mật cho hệ thống mạng máy tính có thể thực hiện theo nhiều kỹ thuật khác nhau, ở nhiều tầng khác nhau, bao gồm từ các kỹ thuật kiểm soát truy nhập vật lý vào hệ thống, thực hiện sửa chữa, cập nhật, nâng cấp hệ điều hành cũng như vá mọi lỗ hổng về an ninh, quản lý các hoạt động gửi và nhận Email và truyền tải văn bản (Giám sát qua tường lửa, các bộ định vị Router, phát hiện và phòng ngừa sự xâm nhập…) xây dựng các giải pháp bảo mật ở mỗi phần mềm để quản lý người dùng thông qua việc cấp quyền sử dụng, mật khẩu, mật mã,

mã hóa thông tin để che giấu thông tin Nếu không có sự bảo vệ phụ trợ, như mã hóa thì môi trường Internet thực sự không phải là nơi an toàn để trao đổi thông tin

và các tài liệu mật Giải pháp hiệu quả nhất nhằm bảo đảm sự an toàn thông tin trong các mạng máy tính là sử dụng mật mã [12, 31] Các giải pháp mật mã sẽ đảm bảo cả ba yêu cầu Đó là bảo mật thông tin, kiểm tra sự toàn vẹn của thông tin và xác thực thông tin

Bởi vậy, việc tiếp tục phát triển các phương pháp bảo mật và xác thực thông tin là rất cần thiết và phù hợp với yêu cầu thực tiễn của cuộc sống cũng như nghiên cứu khoa học

Trang 13

2 Sự cần thiết của bảo mật và xác thực thông tin

Ngày nay, mật mã đã trở thành một vấn đề thời sự bởi tính ứng dụng của nó Với cách tiếp cận như trên, việc nghiên cứu phương pháp bảo mật và xác thực thông tin theo xu hướng mới nhằm đáp ứng yêu cầu ngày càng cao của các ứng dụng là tất yếu Hơn nữa, trong điều kiện mà nhiều thuật toán mã hóa truyền thống đã được chứng minh là yếu hoặc có lỗ hổng hoặc không phù hợp trong các ứng dụng thì xu hướng mới lại càng cần thiết hơn

Việc mã hóa tựu trung là để thỏa mãn hai yêu cầu chính sau đây:

-Dùng để che giấu nội dung của văn bản rõ: để đảm bảo rằng, chỉ người chủ hợp pháp của thông tin mới có quyền truy cập thông tin, hay nói cách khác là chống truy nhập không đúng quyền hạn

-Tạo các yếu tố xác thực thông tin: đảm bảo thông tin lưu hành trong hệ thống đến người nhận hợp pháp là xác thực Tổ chức các sơ đồ chữ ký điện tử, đảm bảo không có hiện tượng giả mạo, mạo danh để gửi thông tin

Một hệ mật mã cần phải đảm bảo được ba yêu cầu cơ bản là:

1/ Độ dài khóa mã phải đủ lớn để chống lại khả năng vét cạn không gian khóa nhằm tìm được khóa đúng bằng mọi nặng lực tính toán hiện tại

2/ Nếu là hệ mật mã được sử dụng cho lĩnh vực an ninh- quốc phòng hoặc để bảo mật những thông điệp quan trọng có tính chiến lược quốc gia thì thuật toán mã hóa và giải mã phải được giữ bí mật

3/ Việc trao đổi và phân phối khóa mã phải được đảm bảo an toàn tuyệt đối Các mật mã được công khai hóa thuật toán mã hóa hoặc giải mã dù là mật mã khóa

bí mật hay mật mã khóa công khai đều chỉ ứng dụng trong thương mại là chủ yếu Hiện nay các thuật toán chủ yếu quan tâm tới không gian khóa mã phải đủ lớn và thuật toán mã hóa phải bí mật bằng cách cứng hóa các mô đun mã hóa và giải mã

3 Tình hình nghiên cứu trong nước và ngoài nước

Hiện nay nguy cơ mất an toàn thông tin hiện hữu như tấn công mạng, đặc biệt

là tấn công lây nhiễm mã độc sử dụng trí tuệ nhân tạo; tấn công mạng vào các hệ thống thương mại điện tử, tài chính - ngân hàng với mục tiêu tống tiền, đánh cắp

Trang 14

thông tin, dữ liệu của tổ chức, cá nhân… Điều này đòi hỏi các tổ chức, cá nhân phải quan tâm đến vấn đề về an ninh, bảo mật, tăng cường các biện pháp đảm bảo

an toàn, an ninh mạng cho hệ thống

Các phương pháp mã hóa và các lược đồ đề xuất đã chứng tỏ được hiệu quả nhất định so với các phương pháp truyền thống Tuy nhiên các phương pháp này còn tồn tại một số hạn chế trong tốc độ mã hóa và tính bảo mật của thông tin, khó khăn trong việc cài đặt các thuật toán Hơn nữa, một số bài toán trong thực tế chưa giải quyết được Đây cũng là một vấn đề thách thức trong các nhóm nghiên cứu về

an toàn và bảo mật thông tin trong nước

Gần đây có một số bài báo và luận án tiến sĩ đã được công bố nói về chữ ký số như của Đặng Minh Tuấn [1], [3] dựa trên của Popescu , Lưu Hồng Dũng [4] mới chỉ đề cập tới chữ ký số dựa trên bài toán logarit Trong giáo trình Lý thuyết mật mã

và An toàn thông tin [2] của Phan Đình Diệu cũng đề cập đến các lược đồ mã hóa

và một số định nghĩa về an toàn và bảo mật thông tin

Ở ngoài nước đã có nhiều đề tài nghiên cứu về an toàn và bảo mật thông tin như: Oliver Blazy, Laura Brouilhet, Duong Hieu Phan [56] đề cập đến chữ ký số dựa trên hệ mật định danh có thể truy nguyên Olivier Blazy, Paul Germouty, Duong Hieu Phan [49] đã tổng quát mã hóa một người nhận thành đa người nhận Sanjit Chatterjee, Sayantan Mukherjee [6] đã đưa ra một loại kiểu mã hóa dựa trên

dự báo, Cao.J, Li.H, Ma.M ,Li F, [28] đã đưa ra chữ ký nhóm S Goldwasser, S

Micali, và R Rivest trong [51], [48] và [59 đã mô tả một số loại hình tấn công vào chữ ký số L Harn and T Kiesler [30] đã đưa ra lược đồ chữ ký số, Kitae Jeong, Changhoon Lee1, Jaechul Sung, Seokhie Hong và Jongin Lim [29] đã đưa ra lược

đồ chữ ký số chống lại một số loại hình tấn công, Harn [31], [32], [33] [55] và Jeremy Quirke [25] đã đưa ra một số lược đồ dựa trên bài toán logarit rời rạc và chữ

ký ngưỡng Jie Wu [26] đưa ra một số khái niệm về mạng ngang hàng , Jia Yu, Fanyu Kong, Guowen Li [24] đã đề xuất lược đồ chữ ký ngưỡng, chữ ký mù, M Bellare và G Neven [34] đã đưa ra nhiều chữ ký trong mô hình khóa công khai, Bevish Jinila và Komathy [9] đã đưa ra lược đồ chữ ký dựa trên ID , Sattar J

Trang 15

Aboud và Mohammed A AL- Fayoumi [52] đã đưa ra một lược đồ chữ ký số dựa trên kỹ thuật mã hóa, D Hong, J K Lee, D C Kim, D Kwon, K H Ryu và D G Lee [16] đã sử dụng mã hóa nhanh trên các bộ xử lý thông thường, Against Adaptive Chosen- Message Attacks [8] đã đưa ra lược đồ chữ ký số thích nghi với các dạng tấn công, G Álvarez, D de la Guía, F Montoya và A Peinado [20] đã đưa ra một lược đồ mã hóa khối Z Shao [61] đưa ra lược đồ chữ ký số dựa trên bài toán logarit rời rạc trong mô hình khóa công khai, Niki Martinel và G L Foresti [38] đã đưa ra lược đồ có nhiều chữ ký, Kei Kawauchi [27] đã đưa ra tính bảo mật của chữ ký số dựa trên hàm 1 chiều, Ali Bagherzandi, Jung Hee Cheon, Stanislaw Jarecki [5] đã đưa ra độ an toàn của lược đồ chữ ký số dựa trên bài toán logarit N.R.Sunitha, B.B.Amberker and Prashant Koulgi [39] đã đưa ra lược đồ đa chữ ký

có bảo mật, Chris J Mitchell [11] đưa ra lược đồ tấn công vào lược đồ chữ ký số sử dụng ID , Chih- Yin Lin, Tzong- Chen Wu and Jing- Jang Hwang [13] đề xuất lược

đồ chữ ký đa cấu trúc, S Micali, K Ohta và L Reyzin [53] đưa ra lược đồ chữ ký nhóm, R Dutta, R Barua, P Sarkar và B T Road [46] đề xuất lược đồ mã hóa dựa trên các giao thức ghép nối, Constantin Popescu [12] đề xuất chữ ký số ủy nhiệm, S.- J Hwang, M.- S Hwang và S.- F Tzeng [54] đề xuất mô hình chữ ký đa thành phần, Mohammed Meziani và Pierre- Louis Cayrel [36] đề xuất lược đồ đa chữ ký dựa trên lý thuyết mã hóa, Peter W Shor [41] đề xuất mô hình mã hóa dựa trên bài toán logorit rời rạc, Rajul Kumar, K.K Mishra, Ashish Tripathi, Abhinav Toma, Surendra Singh [50] đề xuất mô hình mã hóa khóa đối xứng, X Li và K Chen [58]

đề xuất chữ ký số dựa trên cặp song tuyến, Canarda.S, Phan.D.H , Pointcheval.D, Trinh.V.C [60] đã đề xuất mô hình mã hóa dựa trên thuộc tính, ngoài ra Sahu R A

và Padhye S [44 ,[45 cũng đề xuất lược đồ chữ ký số dựa trên định danh

Mã dòng đã được nghiên cứu khá đầy đủ về tiêu chuẩn đánh giá cũng như phương pháp thiết lập các thuật toán tạo khóa mã dòng an toàn Gần đây, giới chuyên môn ít quan tâm đến lĩnh vực này, tuy nhiên hoàn toàn có thể có sự phối hợp giữa các kết quả của mã dòng với mã khối để tạo ra các thuật toán sinh khóa an toàn và hiệu quả trong thực tế Mã khối đang được nghiên cứu rất nhiều thời gian

Trang 16

gần đây, nhất là sau khi ra đời chuẩn mã dữ liệu AES với nguyên lý khuếch tán 2 chiều Cấu trúc Feistel hay cấu trúc SPN đã được khai thác khá kỹ càng trên lý thuyết Mã khối vẫn tuân thủ nguyên lý hỗn độn và khuếch tán của C.E Shannon, song một vấn đề vẫn còn khiến các nhà nghiên cứu đối với mã khối, đó là sự gắn kết giữa lược đồ khóa với các phép ngẫu nhiên hóa thông tin, làm sao vừa đảm bảo

an toàn vừa bảo đảm hiệu quả sử dụng thực tế

Đối với các hệ mật khóa công khai, gần đây giới chuyên môn tập trung nhiều vào nghiên cứu ứng dụng hệ mật trên đường cong elliptic do ưu thế khóa ngắn, độ

an toàn cao Ngoài ra, để an toàn thực tế thì độ dài khóa sử dụng cần quá lớn, đó là những điểm yếu mà thế giới bảo mật cần nghiên cứu trong tương lai

Các giao thức mật mã vẫn là vấn đề thách thức các nhà khoa học mật mã thế giới Đảm bảo tính an toàn, gọn nhẹ, không lộ bí mật, không để bị điều khiển hay lợi dụng hoặc bị can thiệp giả tạo là những yêu cầu hết sức khó khăn Một lý thuyết trọn vẹn cho độ an toàn giao thức cần tiếp tục phát triển, song song với nó là bộ công cụ trực tiếp kiểm định đánh giá thời gian thực là yêu cầu cấp thiết hiện nay Một cách khái quát, độ mật (hay lượng mật) không chỉ là định tính mà còn phải đo được, định lượng được Độ dài khóa (hay không gian khóa mật) là cái quyết định độ mật Độ dài khóa đó suy giảm đến đâu khi đưa hệ mật đó vào thực tế là do các tấn công kênh kề tác động trực tiếp tới; độ suy giảm thực tế đến đâu cũng cần phải định lượng được Do đó, vừa nghiên cứu về độ an toàn lý thuyết, vừa nghiên cứu độ an toàn thực tế sẽ là hai mặt song song tồn tại để hỗ trợ nhau phát triển Những kết quả nghiên cứu trong và ngoài nước kể trên cho thấy việc bảo mật

và xác thực thông tin là hết sức quan trọng và cần thiết trong tình hình mới

4 Những vấn đề được giải quyết trong luận án

Với các phân tích khái quát về thực trạng các giải pháp bảo mật và xác thực thông tin, các điểm mạnh, điểm yếu và xu hướng phát triển về mật mã hiện nay, về nhu cầu an ninh bằng mật mã thực tế của các dịch vụ và người sử dụng, hướng đi được lựa chọn của luận án là nghiên cứu phát triển và cải tiến một số phương pháp bảo mật và xác thực thông tin, đáp ứng được các yêu cầu ngày càng tăng của xã hội

Trang 17

trong kỷ nguyên số

Một số bài toán được đề xuất giải quyết trong luận án

Chương 2 của luận án đề xuất một lược đồ mã hóa kiểu OTP (One time pad) kết hợp giữa mã hóa dòng với mã hóa khóa công khai Khóa OTP nguyên bản có độ dài bằng độ dài bản rõ nhưng khóa OTP trong lược đồ này lại là giá trị băm của bản

rõ Do vậy, có thể trao đổi khóa này bằng mã hóa khóa công khai Từ đó đề xuất một số tiêu chuẩn đánh giá dãy bit giả ngẫu nhiên làm đầu vào cho lược đồ

Chương 3 của luận án nghiên cứu về lược đồ ký số tập thể dựa trên một số hệ mật định danh và chữ ký số mù dựa trên đường cong Elliptic

Hệ mật định danh là một hệ mật mã hoá khoá công khai, cho phép một người

sử dụng tính khoá công khai từ một chuỗi bất kỳ

Chuỗi này như là biểu diễn định danh của dạng nào đó và được sử dụng không chỉ như là một định danh để tính khoá công khai, mà còn có thể chứa thông tin về thời hạn hợp lệ của khoá để tránh cho một người sử dụng dùng mãi một khoá hoặc

để đảm bảo rằng người sử dụng sẽ nhận được các khoá khác nhau từ các hệ thống khác nhau Trong các lược đồ ký tập thể ủy nhiệm, các thành viên trong tập thể ký vào toàn bộ văn bản, hoặc mỗi thành viên ký vào duy nhất một phần trong văn bản theo thứ tự

5 Mục đích nghiên cứu

Mục đích của luận án chính là nghiên cứu cải tiến lược đồ mã hóa và giải mã dựa trên các thuật toán đã có (chương 2) và cải tiến thuật toán chữ ký số (chương 3) nhằm làm tăng độ an toàn, có thể chống lại được các kiểu tấn công trong thực tế

6 Đối tượng phạm vi nghiên cứu và phương pháp nghiên cứu

6.1 Đối tượng i nghiên cứu:

Đối tượng nghiên cứu: Luận án tập trung vào nghiên cứu cải tiến các thuật toán mật mã để nâng cao tính an toàn và khắc phục một số hạn chế của thuật toán

Cụ thể: Các thuật toán mã hóa OTP, chữ ký số dựa trên hệ mật định danh Phạm vi nghiên cứu của luận án được giới hạn trong phạm vi các thuật toán khóa bí mật và khóa công khai, các lược đồ xác thực bằng chữ ký số

Trang 18

6.2 P ương á ng iên cứu:

Căn cứ vào mục tiêu của luận án là tập trung nghiên cứu tổng quan và phát triển một số phương pháp bảo mật thông tin Do vậy, phương pháp nghiên cứu của luận án là nghiên cứu lý thuyết, triển khai thực nghiệm và đánh giá kết quả Cụ thể: -Trên cơ sở lý thuyết về an toàn và bảo mật thông tin hiện có, luận án đưa ra kết hợp các thuật toán đã có thành lược đồ và các lược đồ chữ ký số

-Mô phỏng thực nghiệm trên máy tính nhằm minh họa các kết quả thực nghiệm để so sánh và khẳng định tính đúng đắn của các lược đồ đã được đề xuất trong luận án

-Kết hợp tài liệu và hướng dẫn của giảng viên, tự nghiên cứu tìm kiếm tài liệu

và trao đổi kết quả với nhóm nghiên cứu Từng bước công bố các kết quả nghiên cứu trên các hội thảo chuyên ngành, các tạp chí trong nước và ngoài nước

7 Nhiệm vụ nghiên cứu

Nghiên cứu tổng quan về các thuật toán khóa bí mật và khóa công khai, các lược đồ xác thực thông tin dựa vào chữ ký số

- Đề xuất lược đồ mã hóa và giải mã, đề xuất các tiêu chuẩn đánh giá dãy bit giả ngẫu nhiên

- Triển khai thực nghiệm nhằm kiểm chứng tính đúng đắn của các lược đồ mà luận án đã đề xuất

8 Ý nghĩa khoa học và thực tiễn

Các phương pháp và các lược đồ đề xuất trong luận án được ứng dụng trong thực tế sẽ góp phần tạo ra nhiều cơ hội lựa chọn nhằm đảm bảo an toàn thông tin cho các tổ chức và cá nhân có nhu cầu Đây là các nghiên cứu phù hợp cho các thiết

bị hạn chế về tài nguyên, cần thay đổi khóa thường xuyên nhưng vẫn đảm bảo tốc

độ mã hóa và giải mã cũng như chứng thực được các bản tin cần trao đổi

9 Những đóng góp mới của luận án

9.1 Phần bảo mật thông tin

- Lược đồ bảo mật với khóa sử dụng một lần OTP(One Time Pad)

- Đề xuất các tiêu chuẩn đánh giá dãy bit giả ngẫu nhiên

Trang 19

9.2 Phần xác thực thông tin

- Đề xuất lược đồ chữ ký số tập thể ủy nhiệm dựa trên hệ mật định danh

- Đề xuất lược đồ chữ ký số dựa trên hệ mật định danh

- Cải tiến lược đồ chữ ký số mù trên đường cong Elliptic

- Đề xuất lược đồ chữ ký số dựa trên cặp song tuyến tính

10 Cấu trúc của luận án

Ngoài phần mở đầu giới thiệu về tính cấp thiết của luận án, mục đích, nhiệm

vụ, phương pháp, đối tượng, phạm vi, ý nghĩa khoa học và thực tiễn, các đóng góp mới, luận án được chia thành 3 chương với bố cục như sau:

Chương 1: Một số khái niệm về xác thực và bảo mật thông tin

Chương này tập trung vào trình bày tóm tắt tình hình nghiên cứu về các giải pháp mật mã nói chung và vấn đề an ninh bằng mật mã hiện nay Phân tích các tồn tại, những vấn đề đặt ra và hướng tiếp cận của luận án về một số phương pháp bảo mật và xác thực thông tin

Chương 2: Phát triển lược đồ mã hóa và giải mã

Chương này trình bày các kết quả nghiên cứu của luận án về phương pháp bảo mật thông tin

Nội dung của chương tập trung trình bày phương pháp bảo mật như là: Dùng khóa 1 lần (OTP)

Đề xuất các tiêu chuẩn đánh giá dãy bit giả ngẫu nhiên

Chương 3: Phát triển một số lược đồ chữ ký số

Chương này trình bày các kết quả nghiên cứu mới của luận án về một số phương pháp xác thực thông tin dựa trên hệ mật mới định danh Lược đồ chữ ký số dựa trên hệ mật định danh, Lược đồ chữ ký số tập thể ủy nhiệm dựa trên hệ mật định danh, Lược đồ chữ ký mù trên đường cong Elliptic

Trang 20

Chương 1 MỘT SỐ KHÁI NIỆM XÁC THỰC VÀ BẢO MẬT THÔNG TIN

Chương này trình bày tổng quan về vấn đề nghiên cứu với những nội dung chính sau: giới thiệu chung về vấn đề bảo mật, các thuật toán mật mã khóa bí mật

và các thuật toán mật mã khóa công khai, các lược đồ xác thực dựa vào chữ ký số Thông qua đó xác định rõ vấn đề đặt ra cần nghiên cứu, vị trí vấn đề nghiên cứu, xu hướng và giải pháp giải quyết vấn đề đặt ra

1.1 Bảo mật thông tin

Ngày nay thông tin đã trở thành một trong những tài nguyên quý nhất của nhiều quốc gia, đặc biệt trong bối cảnh của xu hướng toàn cầu hóa và phát triển nền kinh tế tri thức Bảo vệ thông tin và bảo đảm môi trường làm việc với nguồn tài nguyên này là nhiệm vụ tất yếu, chúng đóng vai trò rất quan trọng vì càng ngày càng có nhiều người tham gia khai thác và cung cấp thông tin trên đó

Song các ứng dụng và các dịch vụ trên đó hiện vẫn tiềm ẩn nguy cơ về an ninh Nguyên nhân là các lớp bảo mật của nhiều giao thức vẫn sử dụng các thuật toán mã hóa, đặc biệt là không phù hợp cho các thiết bị, nơi mà bị hạn chế về nguồn năng lượng, khả năng xử lý Nhìn chung, các thuật toán mật mã truyền thống sử dụng nhiều các phép toán số học và đại số

Năm 2000, Bernstein D.J và Buchmann J [23 đã giới thiệu về mật mã học, đến năm 2007, H Delfs và H Knebl [21 đã giới thiệu các nguyên tắc và ứng dụng mật mã Đây là lý do giải thích cho việc khi sử dụng các thuật toán mật mã dạng này tiêu hao nhiều tài nguyên và năng lượng của hệ thống, mà năng lượng đối với các thiết bị luôn là một vấn đề đáng được quan tâm

Trước đây khi công nghệ máy tính chưa phát triển, khi nói đến vấn đề an toàn bảo mật thông tin, thường hay nghĩ đến các biện pháp nhằm đảm bảo cho thông tin được trao đổi hay cất giữ một cách an toàn và bí mật

Các biện pháp thường dùng như sau:

- Đóng dấu và ký niêm phong một bức thư để biết rằng lá thư có được chuyển nguyên vẹn đến người nhận hay không

Trang 21

- Dùng mật mã mã hóa thông điệp để chỉ có người gửi và người nhận hiểu được thông điệp Phương pháp này thường được sử dụng trong chính trị và quân sự

- Lưu giữ tài liệu mật trong các két sắt có khóa, tại các nơi được bảo vệ nghiêm ngặt, chỉ có những người được cấp quyền mới có thể xem tài liệu

Với sự phát triển mạnh mẽ của công nghệ thông tin, đặt biệt là sự phát triển của mạng Internet, ngày càng có nhiều thông tin được lưu giữ trên máy vi tính và gửi đi Do đó xuất hiện nhu cầu về an toàn và bảo mật thông tin trên máy tính Có thể phân loại mô hình an toàn bảo mật thông tin trên máy tính theo hai hướng chính như sau :

+) Bảo vệ thông tin trong quá trình truyền thông tin (Network Security)

+) Bảo vệ hệ thống máy tính, và mạng máy tính, khỏi sự xâm nhập phá hoại từ bên ngoài (System Security)

Do đó đề tài của luận án Phát triển một số phương pháp bảo mật và xác thực thông tin nhằm đưa ra một số giải pháp tích cực hơn cho vấn đề này

1.2 Bảo vệ thông tin trong quá trình truyền tin

Thông tin được lưu trữ trên nhiều dạng vật liệu khác nhau như được khắc trên

đá, được ghi lại trên giấy, trên bìa, trên băng từ, đĩa từ, đĩa cứng, thẻ nhớ, Thông tin chính là tất cả những gì mang lại hiểu biết cho con người mà con người tri thức được Con người luôn có nhu cầu thu thập thông tin bằng nhiều cách khác nhau: đọc báo, nghe đài, xem truyền hình, truy cập mạng Internet, giao tiếp với người khác một cách trực tiếp hoặc thông qua các diễn đàn điện tử và mạng xã hội,

Thông tin làm tăng hiểu biết của con người, là nguồn gốc của nhận thức và là

cơ sở để đưa ra quyết định

1.2.1 Các loại hình tấn công

Giả sử, có ba nhân vật tên là Alice, Bob và Trudy, trong đó Alice và Bob thực hiện trao đổi thông tin với nhau, còn Trudy là kẻ xấu, đặt thiết bị can thiệp vào kênh truyền tin giữa Alice và Bob Sau đây là các loại hành động tấn công của Trudy mà ảnh hưởng đến quá trình truyền tin giữa Alice và Bob:

Trang 22

+) Xem trộm thông tin

Trudy Đọc nội dung thông tin của Alice

Network

Alice Bob

Hình 1.1 Xem trộm thông tin

+) Sửa nội dung thông tin

Trudy Sửa nội dung thông tin của Alice gửi cho Bob

Hình 1.3 Mạo danh

+) Phát lại thông tin

Trud Sao chép lại thông tin của Alice và gửi lại

sau cho Bob

Network

Alice Bob

Hình 1.4 Phát lại thông tin

Trang 23

1.2.2 An toàn bảo mật hệ thống thông tin

Sự an toàn của hệ thống thông tin thực chất là sự đảm bảo an ninh ở mức độ chấp nhận được

Những hoạt động đề phòng và xử lý sự cố đòi hỏi với các chi phí, chúng tỷ lệ thuận với khả năng và mức độ an toàn, nhưng vẫn có thể vượt khỏi vòng kiểm soát, gây ra sự mất an toàn không mong muốn

Muốn hệ thống thông tin an toàn thì trước hết phải có sự đảm bảo thông tin trên cơ sở hạ tầng mạng truyền dữ liệu thông suốt An toàn và bảo mật để đảm bảo

bí mật về nội dung thông tin

Hai yếu tố an toàn và bảo mật đều rất quan trọng và gắn bó với nhau Hệ thống mất an toàn thì không bảo mật được và ngược lại hệ thống không bảo mật được thì mất an toàn Tuy nhiên, có thể phân biệt chúng rõ ràng hơn bằng những định nghĩa

cụ thể như sau:

- Một hệ thống sẽ là an toàn khi các khiếm khuyết không thể làm cho các hoạt động chủ yếu của nó ngừng hẳn và các sự cố nếu xảy ra sẽ được khắc phục một cách kịp thời mà không gây thiệt hại đến mức độ nguy hiểm cho chủ sở hữu

- Một hệ thống được coi là bảo mật nếu tính riêng tư của nội dung thông tin được đảm bảo theo đúng các chỉ tiêu trong một thời gian xác định

Hình 1.5 Mô hình bảo mật truyền thông tin

Trang 24

1.2.3 Các biện pháp bảo vệ thông tin

Khi người sử dụng hệ thống thông tin thay đổi một thông tin nào đó thì sẽ trở thành chủ sở hữu của thông tin đã thay đổi Nhưng khi trao đổi một thông tin, thông tin đó chỉ có giá trị cao nhất đối với chủ sở hữu của nó và những đối tượng được phép truy cập nó hoặc những người nhận, nếu nó đảm bảo được 4 đặc điểm có tính chất nguyên tắc sau đây:

Tính sẵn sàng: Có tính sẵn sàng, hay truy cập được, nghĩa là thông tin phải có

thể lấy được vào bất cứ lúc nào theo yêu cầu của chủ sở hữu và người sử dụng

Tính toàn vẹn: Có tính toàn vẹn nghĩa là thông tin không bị thay đổi (thêm,

bớt, xoá bỏ) ngoài ý muốn của chủ sở hữu, trước khi sang tay người sử dụng

Tính riêng tư: Có tính riêng tư, hay bí mật,nghĩa là nội dung thông tin của chủ

sở hữu không bị người khác (trừ người sử dụng hợp pháp) đọc trộm, nghe trộm

hoặc hiểu được

Tính trách nhiệm: Có tính trách nhiệm, hay không từ chối, nghĩa là chủ sở hữu

và người sử dụng không thể phủ nhận việc đã gửi và nhận thông tin của nhau ở các thời điểm chính xác

1.2.4 Vai trò của mật mã trong việc bảo mật thông tin

Mật mã hay mã hóa, là một công cụ cơ bản thiết yếu của bảo mật thông tin

Mật mã đáp ứng được các nhu cầu về tính bảo mật, tính chứng thực và tính không

từ chối của một hệ truyền tin

Hình 1.6 Mô hình phòng chống thâm nhập và phá hoại hệ thống

Trang 25

1.3 Mật mã đối xứng hiện đại

Cùng với sự phát triển của máy tính, thông tin ngày một trở nên đa dạng, một bản tin bây giờ không chỉ đơn giản là bản tin gồm các chữ cái, mà có thể gồm cả các thông tin về định dạng văn bản như tài liệu HTML… Ngoài ra bản tin có thể xuất hiện dưới các loại hình khác như hình ảnh, video, âm thanh…

Tất cả các bản tin đó đều được biểu diễn trên máy tính dưới dạng một dãy các

số nhị phân Tương tự như bản tin ngôn ngữ, trong bản tin nhị phân cũng tồn tại một số đặc tính thống kê nào đó mà người phá mã có thể tận dụng để phá bản mã,

dù rằng bản mã bây giờ tồn tại dưới dạng nhị phân

Từ những thay đổi kể trên, cần phải có những phương pháp mã hóa hiện đại hơn những phương pháp mã hóa cổ điển để có thể mã hóa được tất cả những bản tin

đa phương tiện Trong mục này sẽ tìm hiểu các phương pháp mã hóa đối xứng hiện đại bao gồm mã hóa dòng và mã hóa khối

1.3.1 Mật mã dòng

Mật mã dòng là phương pháp mã hóa từng dòng bit và có các đặc tính sau:

Kích thước một đơn vị mã hóa gồm k bit Bản rõ được chia thành các đơn vị

mã hóa, , trong đó mỗi đơn vị gồm bít

Một bộ sinh dãy số ngẫu nhiên với hạt giống cho trước sẽ sinh ra n số ngẫu nhiên có kích thước bằng kích thước đơn vị mã hóa, , trong đó mọi số ngẫu nhiên gồm bit

Mỗi số ngẫu nhiên được XOR với đơn vị mã hóa tương ứng của bản rõ để có được bản mã

Quá trình giải mã được thực hiện ngược lại, bản mã được XOR với dãy số ngẫu nhiên để cho ra bản rõ ban đầu:

Trang 26

Hình 1.7 dưới đây minh họa một mô hình mã dòng Có thể thấy mã hóa dòng tương tự như mã hóa Vigenere Điểm quan trọng nhất của các mã dòng là bộ sinh số ngẫu nhiên Nếu chọn khóa có chiều dài ngắn như mã hóa Vigenere thì không bảo đảm an toàn

= 26 Một cách trực quan, tất cả các thuật toán mã hóa khối đối xứng hiện nay đều dựa trên cấu trúc của mật mã khối Feistel

Horst Feistel sáng tạo ra mã Feistel dựa trên mã tích nghịch đảo được, tức là kết hợp mã thay thế với mã hoán vị và qui trình giải mã là giống với mã hoá, chỉ cần thay đổi vai trò khối bản mã với khối bản rõ và thứ tự các khoá con được dùng Trong hệ mã Feistel, bản rõ sẽ được biến đổi qua một số vòng để cho ra bản

Trang 27

 …  K n F là một hàm mã hóa dùng chung cho tất cả các vòng Hàm F đóng

vai trò nhƣ là phép thay thế còn việc hoán đổi các nửa trái, phải đóng vai trò hoán

vị Bản mã C đƣợc tính từ kết xuất của vòng cuối cùng:

Có khá nhiều thuật toán mã hóa đối xứng hiện nay dựa trên cấu trúc mã hóa của Feistel Cụ thể là vào năm 1976 một hệ mật mã khối có tên DES (Data Encryption Standard) đã đƣợc xây dựng dựa trên nguyên tắc của hệ mã Feistel Sau

đó chuẩn này đã đƣợc sử dụng rộng rãi trên phạm vi thế giới Hiện nay DES đƣợc xem là không đủ an toàn cho nhiều ứng dụng Nguyên nhân chủ yếu là độ dài 56 bit của khóa là quá nhỏ Sau đó, DES đã đƣợc thay thế bằng AES (Advanced Encryption Standard - Tiêu chuẩn Mã hóa Tiên tiến)

Trang 28

1.3.2.2 Giới thiệu AES

AES [17] là một thuật toán mã hóa đối xứng, được phát triển sau DES dựa

trên nguyên lý Feistel và được đưa vào sử dụng năm 2000 và được công bố thành chuẩn mã hóa tiên tiến vào năm 2001

AES thực hiện mã hóa và giải mã theo khối, sử dụng khóa đối xứng Độ dài của khóa có thể là 128, 192 hoặc 256 bit, tuy nhiên việc mã hóa và giải mã thực hiện theo các khối 128 bit

Đầu vào của thuật toán mã hóa và giải mã là từng khối 128 bit, khối này được biểu diễn thành một ma trận vuông các byte Khóa được cung cấp cho quá trình mã hóa và giải mã là quá trình mở rộng khóa lưu trữ trong một mảng các word, mỗi word có kích thước 4 byte và tổng cộng có 44,52 hoặc 60 word tương ứng với độ dài khóa 128,192,256

Mã hóa dùng AES là mã hóa khối lặp gồm nhiều chu trình, các khóa con sử dụng trong các chu trình được tạo ra bởi quá trình tạo khóa con Rijndael

Số vòng lặp (kí hiệu là ) phụ thuộc vào độ dài khóa :

nếu khóa dài 128 bit

nếu khóa có độ dài 192 bit

nếu độ dài của khóa là 256 bit

1.3.2.3 Thuật toán AES

Với văn bản cho trước , khởi tạo Trạng thái (State) là và thực hiện

phép toánADDROUNDKEY để tiến hành XOR khóa (ROUNDKEY) với trạng thái.Với mỗi vòng lặp trong vòng đầu tiên, thực hiện lần lượt các phép toán sau:Phép toán thay thế (còn gọi là SUBBYTES) đối với trạng thái bằng cách sử

dụng một S- box;

Phép hoán vị SHIFTROWS đối với trạng thái;

Phép toán MIXCOLUMNS đối với trạng thái;

Phép toán ADDROUNDKEY

Trang 29

Thực hiện các phép toán SUBBYTES, SHIFTROWS và ADDROUNDKEY Hình 1.8 dưới đây mô tả quy trình mã hóa và giải mã bằng thuật toán DES

Hình 1.8 Mô hình mã hóa và giải mã bằng thuật toán AES

Trạng thái (State)

Các phép toán bên trong của Rijndael đều được thực hiện trên một mảng

byte 2 chiều gọi là trạng thái Mỗi trạng thái bao gồm 4 dòng byte Mỗi dòng chứa

byte với là độ dài chuỗi nhập đã chia cho 32 Trong mảng trạng thái (kí hiệu là ), mỗi byte có 2 chỉ số: chỉ số dòng (nằm trong khoảng 0 ) và chỉ số cột (nằm trong khoảng 0 ) Trong hệ mã AES, sẽ được cố định

là 4 Lúc bắt đầu hay kết thúc thao tác mã hóa và giải mã, các byte của dữ liệu mã đầu vào hay đầu ra được sao chép vào mảng trạng thái này theo thứ tự như hình sau

Các byte đầu vào Mảng trạng thái mã Các byte đầu ra

Hình 1.9 Đầu vào và đầu ra của chuỗi trạng thái mã

Hình 1.9 mô tả đầu vào và đầu ra của chuỗi trạng thái mã

Bắt đầu mã hóa hay giải mã, mảng đầu vào in được sao chép vào mảng trạng thái theo công thức sau:

Trang 30

[ ] [ ] Đồng thời khi hoàn thành mã hóa, trạng thái được sao chép cho mảng đầu ra như sau

[ ] [ ]

Phép biến đổi SubBytes

Hình 1.10 dưới đây là một phép thay thế byte không tuyến tính Phép biến đổi này thao tác trên mỗi byte của trạng thái một cách độc lập để tạo ra một giá trị byte mới bằng cách sử dụng một bảng thay thế S-box

Hình 1.10 SubBytes thao tác trên mỗi byte trong trạng thái một cách độc lập

Bảng 1.1 Bảng S-Box

Phép thay thế này có thể đảo ngược và được xây dựng bằng cách tạo nên hai phép biến đổi

Trang 31

- Đầu tiên lấy nghịch đảo nhân trong trường hữu hạn Trong đó, phần tử {00} được ánh xạ với chính nó

- Tiếp theo áp dụng phép biến đổi affine trong GF(2) theo công thức sau:

Phép biến đổi SubRows

Phép biến đổi này được thực hiện riêng lẻ đối với mỗi 3 dòng cuối của trạng thái bằng cách dịch chuyển đều đặn các byte trên 1 dòng sao cho:

[ ] với (1.10)

Hình 1.11 dưới đây thực hiện thao tác độc lập trên các dòng trạng thái Trong

đó tổng dịch chuyển [ ] phụ thuộc vào số dòng và độ dài khối như sau:

Hình 1.11 ShiftRows thao tác độc lập trên các dòng trong trạng thái Bảng 1.2 Khoảng dịch chuyển tương ứng với số dòng và độ dài khối khác nhau

Trang 32

Phép biến đổi này thao tác một cách độc lập trên mỗi cột của trạng thái và xem mỗi cột như một đa thức bậc 4

Ở dạng ma trận, phép biến đổi được dùng theo phương trình sau:

{

=

Hình 1.12 thực hiện các thao tác độc lập trên mỗi cột trong trạng thái

Trong đó tất cả giá trị là các phần tử thuộc trường hữu hạn

Hình 1.12 MixColumns thao tác độc lập trên các dòng trong trạng thái

Phép biến đổi XorRoundKey (AddRoundKey)

Trong phép biến đổi này, từ được thêm vào các cột của trạng thái từ bảng liệt kê khóa (sẽ được mô tả phía sau) sao cho thỏa mãn:

[ ] [ ] [ ] (1.11)

Trong đó [ ] là từ trong bản liệt kê khóa và ―round ‖ là số vòng trong khoảng

Số vòng bắt đầu từ 1 vì có một điều kiện về khóa khởi tạo trước hàm vòng

Hình 1.13 Các từ trong bảng liệt kê khóa được XOR với các cột trong trạng thái

Trang 33

AES là hệ mã đối xứng nên các bước của quá trình giải mã chính là các bước ngược lại với các bước của quá trình mã hóa

Ưu nhược điểm của mật mã khóa bí mật

Ưu điểm:

- Đơn giản (thời gian nhanh, yêu cầu phần cứng không phức tạp)

- Hiệu quả: (Tỷ lệ mã bằng 1) dễ sử dụng cho các ứng dụng nhạy cảm với độ trễ và các ứng dụng di động

Nhược điểm:

- Phải dùng kênh an toàn để truyền khóa (Khó thiết lập và chi phí tốn kém)

- Việc tạo và giữ khóa bí mật phức tạp, khó làm việc do phải tạo khóa nhiều

- Các thuật toán là song ánh, vì vậy nếu biết M và K thì chắc chắn biết C Thám mã có thể suy luận ra K, kết hợp với C tại kênh mở có thể suy ra M

- Khó xây dựng các dịch vụ an toàn khác như: đảm bảo tính toàn vẹn, xác thực, chữ ký số…

1.4 Mã hóa khóa công khai

Vào năm 1976, Whitfield Diffie và Martin Hellman đã tìm ra một phương pháp mã hóa khác mà có thể giải quyết được hai vấn đề trên, đó là mã hóa khóa công khai (Public Key Cryptography) hay còn gọi là mã hóa bất đối xứng (Asymetric Cryptography) Đây có thể xem là một bước đột phá quan trọng nhất trong lĩnh vực mã hóa

Để khắc phục điểm yếu của mã hóa đối xứng, người ta tập trung vào nghiên cứu theo hướng liệu có cách nào có thể mã hóa và giải mã dùng hai khóa khác nhau hay không

Nghĩa là tìm được hai thuật toán E và D là ngược của nhau nhưng lại sử dụng hai khóa khác nhau và và Sau đó, mỗi thành viên cộng đồng mật hóa cần phải có hai khóa có tính chất như trên, trong đó một khóa (giả sử là ) sẽ được công khai cho mọi người cùng biết còn khóa kia

Trang 34

(giả sử là ) thì của người nào người đó phải giữ bí mật Nếu thực hiện được như vậy thì chúng ta sẽ có thể có hai ứng dụng sau đây

 Gửi tin mật: Giả định là có 2 người là Bob và Alice thường xuyên trao đổi thư từ với nhau nhưng lại không muốn người thứ ba là Mallory biết Để có thể đảm bảo được việc này thì khi Alice muốn gửi thư cho Bob, Alice phải làm như sau Alice dùng khóa công khai của Bob ( ) để mã hóa thư của mình rồi gửi cho Bob Khi nhận được thư của Alice (đã mã hóa), Bob sẽ dùng khóa bí mật của mình ( )

để giải mã Trong lúc này, Mallory có thể biết việc trao đổi này nhưng cho dù anh ta biết khóa của Bob nhưng lại không thể dùng để giải mã mà phải dùng mới giải được, mà khóa này lại chỉ mình Bob có Do đó, chỉ có duy nhất Bob mới

có thể giải mã được Điều này bảo đảm tính bảo mật của quá trình truyền dữ liệu

Ưu điểm của phương án này là không cần phải truyền khóa trên kênh an toàn

 Xác thực thông tin: Bây giờ Alice lại muốn gửi cho Bob một thông tin quan trọng nhưng không cần phải giữ bí mật mà chỉ muốn khẳng định là thư này là

do đích thân cô gửi cho anh Để làm được việc này, Alice sẽ dùng khóa bí mật của mình ( ) để mã hóa thư rồi gửi cho Bob Khi nhận được thư của Alice, Bob sẽ dùng khóa công khai của Alice ( để giải mã Nếu giải được thì đây chính là thư

do Alice gửi Nhưng vì thư của Alice được mã hóa bằng khóa bí mật của Alice nên Mallory cũng có thể giải mã được thư này vì ai cũng biết khóa công khai của Alice Do đó, phương án này không được dùng để đảm bảo tính bí mật mà chủ ý được dùng để đảm bảo tính xác thực và tính không thể chối bỏ đối với thông tin đã gửi vì chỉ có duy nhất Alice biết được khóa bí mật ( ) của cô ấy, nên nếu Bob dùng khóa công khai của Alice mà giải mã được thư này thì điều đó có nghĩa

là Alice là người đã gửi thư cho anh

Hình 1.19 mô tả một qui trình mật hóa và giải mã bằng khóa công khai Mô hình này thực hiện cùng một lúc hai mục đích, xác thực và mật hóa bằng cách sử dụng hai cặp khóa công khai và một cặp thuật toán mã hóa và giải mã

Trang 35

Hình 1.14 Mật hóa và xác thực tin gửi bằng khóa công khai

Vì vậy, nếu kết hợp hai ứng dụng này lại thì ta sẽ có một mô hình mã hóa và xác thực khắc phục được các nhược điểm của mã hóa đối xứng Trong cả hai phương án, một khóa được giữ bí mật, chỉ một người biết, còn khóa kia được công khai Do đó, mô hình mã hóa trên được gọi là mã hóa khóa công khai (hay mã hóa bất đối xứng)

Để tránh nhầm lẫn với khóa bí mật của mã đối xứng, khóa bí mật trong mô hình mã hóa khóa công khai được gọi là khóa riêng (Private Key) và ký hiệu là Khóa công khai (Public Key) được ký hiệu là Nếu muốn chỉ cặp khóa của ai đó thì thêm tên của người này vào

Ví dụ và là để chỉ cặp khóa công khai và bí mật của A (viết tắt của Alice) Bản rõ được ký hiệu là , còn bản mã được ký hiệu là

Khi đó, nếu A muốn gửi cho B và chỉ cho B đọc được thì A mã hóa bằng khóa công khai của B; Khi nhận được bản mã, B dùng khóa riêng của mình để giải

mã ra :

Còn nếu A muốn B xác thực là do A đích thân soạn và gửi thì A mã hóa bằng khóa riêng của mình; Khi nhận được bản mã, B dùng khóa công khai của B để giải ra :

Trang 36

Hai khóa và không thể nào hoàn toàn độc lập với nhau Phải có một mối quan hệ nào đó giữa và thì mới có thể tiến hành mã hóa và giải mã được

Có nghĩa là tồn tại một hàm sao cho ( ) Tuy nhiên một yêu cầu rất quan trọng là việc tính ( ) phải là bất khả thi về mặt thời gian Nếu nguyên tắc này bị vi phạm thì việc giữ bí mật khóa không còn ý nghĩa vì từ khóa công khai

có thể tính được

Để có được cặp khóa và như trên, người ta thường dùng các hàm một chiều Các hàm một chiều có tính chất là hàm nghịch đảo của chúng rất khó thực hiện

1.4.1 Lý do phải sử dụng mã hóa khoá công khai

Phân phối khoá: làm sao có thể phân phối khóa an toàn mà không cần trung tâm phân phối khoá tin cậy

Chữ ký số: làm sao có thể kiểm chứng được rằng thông tin gửi đến là nguyên vẹn và từ đúng người đứng tên gửi

1.4.2 Các đặc trưng cần phải có của mã hóa khóa công khai

Không có khả năng tính toán để tìm khoá giải mã nếu chỉ biết thuật toán mã và khoá dùng để mã Có thể dễ dàng mã hoá hoặc giải mã mẩu tin nếu biết khoá tương ứng.Trong một số sơ đồ, một khoá bất kỳ trong hai khoá có thể dùng để mã, còn khoá kia dùng để giải mã Chúng có vai trò đối ngược nhau.Có nhiều phương pháp

mã hóa thuộc loại mã hóa khóa công khai Đó là các phương pháp Knapsack, RSA, Elgaman, và phương pháp đường cong elliptic ECC… Mỗi phương pháp sử dụng một hàm một chiều khác nhau

1.5 Hàm băm

Hàm băm [19] là một thuật toán dùng để nén một văn bản có độ dài bất kỳ thành một mẩu tin có độ dài cố định Hàm băm là một hàm tạo ra mã xác thực văn bản giống như MAC nhưng không sử dụng khóa bí mật

1.5.1 Các tính chất của hàm băm

Hàm băm tạo ra dấu vân tay (tức là thông tin đặc trưng) của một thông điệp

và được định nghĩa bằng công thức:

h = H(M)

Trang 37

trong đó, M là thông điệp cần băm, H là hàm băm, h là giá trị băm

Văn bản có kích thước tùy ý còn giá trị băm có kích thước cố định Hàm băm được giả thiết là công khai, mọi người đều biết cách sử dụng chúng

Hàm băm được sử dụng để phát hiện sự thay đổi của thông điệp và thường được kết hợp với mã hóa khóa công khai để tạo ra chữ ký số cho thông điệp

1.5.2 Các yêu cầu đối với hàm băm

 Có thể áp dụng được cho mọi văn bản có kích thước tuỳ ý Tuy nhiên, phải

tạo đầu ra h có kích thước cố định, thường là 128 bits đến 1024 bits

Dễ tính được h=H(M) cho mọi văn bản nguồn M và kết quả phụ thuộc chặt chẽ vào văn bản nguồn M mà không tính ngược lại được, hay chính xác hơn

là rất khó để có thể tìm được M khi biết h

Cho trước h không thể tìm được (rất khó) x sao cho H(x) = h Tính chất này

gọi là tính chất một chiều, chiều tìm nghịch ảnh rất khó khăn, tuy chiều tìm ảnh dễ dàng

Cho x không thể tìm được y sao cho H(y)=H(x) Đây là tính chất chống đỡ

va chạm yếu, không tìm được một văn bản khác có cùng giá trị băm với văn bản đã cho

Không thể tìm được x, y sao cho H(y)=H(x) Đây gọi là tính chất chống đỡ

va chạm mạnh Yêu cầu này cao hơn yêu cầu về chống đỡ va chạm yếu Hai đặc tính đầu tiên bảo đảm khả năng thực tiễn ứng dụng hàm băm để xác thực văn bản, thông tin

Đặc tính thứ ba bảo đảm tính một chiều, dễ dàng nhận được mã hàm băm h

trên cơ sở của văn bản đã cho, nhưng thực tiễn không có khả năng khôi phục lại tin

tức, khi chỉ có h phù hợp

Đặc tính thứ tư bảo đảm rằng không có người tham gia nào có thể tìm được một bản tin khác, có cùng giá trị băm như bản tin đã cho Điều này ngăn ngừa khả năng làm giả thông tin, văn bản nguồn, trong trường hợp khi thực hiện mã hoá hàm băm

Trang 38

Đặc tính thứ năm xác định độ bền của hàm băm tới một lớp tấn công cụ thể, được biết dưới tên cuộc tấn công dựa trên bài toán nghịch lí về ngày sinh nhật (Birthday Attack)

1.6 Chữ ký số

Chữ ký số được phát triển từ hệ mật khóa công khai Thông thường trong hệ mật khóa công khai, người gửi sẽ dùng khóa công khai của người nhận để mã hóa văn bản, người nhận sẽ dùng khóa bí mật để giải mã Trong mô hình ký số thì ngược lại, người gửi sẽ mã hóa văn bản bằng khóa bí mật của mình, kết quả sẽ được gọi là chữ ký số, sau đó người gửi chuyển đồng thời văn bản cùng chữ ký của văn bản đến người nhận Người nhận sẽ dùng khóa công khai của người gửi để giải mã

và so sánh kết quả giải mã với văn bản nhận được, nếu trùng khớp thì chữ ký đó là đúng của người gửi và văn bản đã không bị sửa đổi trong quá trình gửi văn bản, ngược lại là chữ ký số không hợp lệ, hoặc không phải của người ký hoặc văn bản đã không còn tính toàn vẹn Chữ ký số có vai trò và chức năng tương tự chữ ký tay truyền thống, nhưng có nhiều ưu việt hơn: bảo đảm tốt hơn tính toàn vẹn của văn bản ký (chỉ sai khác 1 bit của văn bản chữ ký số cũng có thể phát hiện ra), chống giả mạo chữ ký và nội dung văn bản đã ký tốt hơn, đảm bảo tính chống chối bỏ tốt hơn

và cho phép khả năng tự động hóa khâu ký, xác thực chữ ký và văn bản

Chữ ký số tập thể cho phép một tập thể người ký tham gia ký văn bản và người xác thực có thể xác thực được rằng văn bản đã được từng thành viên trong tập thể tham gia ký Cách thức đơn giản nhất để tạo chữ ký số tập thể là ghép tất cả các chữ ký đơn của từng thành viên Tuy nhiên như vậy độ dài chữ ký của tập thể và thời gian tính toán sẽ có tăng tỷ lệ với số lượng người ký

Chữ ký số tập thể khác với chữ ký số ngưỡng ở chỗ chữ ký số tập thể dùng để chứng minh rằng tất cả các thành viên đều tham gia vào ký văn bản trong khi đó chữ ký số ngưỡng không đưa ra thông tin định danh của từng người ký, điểm nữa là quá trình xác thực không phụ thuộc vào nhóm thành viên tham gia ký Chữ ký số tập thể cũng khác với chữ ký nhóm và chữ ký vành, ở hai lược đồ này mỗi thành

Trang 39

viên có thể sinh ra chữ ký số thay mặt cho cả tập thể ngoài ra người ký cũng không

được biết định danh đối với người xác thực

Với sự phát triển nhanh chóng và ứng dụng mạnh mẽ CNTT vào tất cả các

lĩnh vực kinh tế - xã hội, giao dịch điện tử đã trở thành nhu cầu quan trọng trong các

hoạt động quản lý nhà nước và phát triển kinh tế tại nước ta

Sau khi nhà nước chính thức công nhận các hoạt động giao dịch điện tử, Chính

phủ đã ban hành các quy định về chữ ký số và dịch vụ chứng thực chữ ký số như là

một giải pháp đảm bảo an toàn thông tin cho giao dịch điện tử Đây là một loại hình

dịch vụ CNTT còn mới mẻ ở Việt Nam, đòi hỏi sự quản lý cũng như đầu tư hạ tầng

của nhà nước để có thể phát triển và hỗ trợ hiệu quả cho các hoạt động giao dịch

điện tử

Trong thời gian qua, các hoạt động xây dựng cơ sở hạ tầng khóa công khai

(PKI) để triển khai dịch vụ chứng thực chữ ký số tại nước ta đã được khẩn trương

tiến hành Cùng với các cơ quan nhà nước có liên quan khác, Bộ Thông tin và

Truyền thông đã đặt nền móng để phát triển thị trường dịch vụ chứng thực chữ ký

số, tạo dựng niềm tin của xã hội vào hiệu quả của chữ ký số, bước đầu đưa chữ ký

số vào phục vụ các hoạt động phát triển kinh tế - xã hội trọng điểm

Chữ ký số là một trong những vấn đề khó trong lĩnh vực mật mã học Nó là một vấn

đề không mới, đang được phát triển ở nước ta hiện nay và có nhiều công việc cần

giải quyết nếu muốn xây dựng một hệ thống ký số đạt tiêu chuẩn quốc gia Hướng tiếp cận theo mật mã hóa khóa công khai là hướng tiếp cận dựa vào yêu cầu

thực tế

Chữ ký số tập thể là lược đồ ký số mà tất cả các thành viên trong một tập thể

cùng tham gia ký vào một văn bản Kích thước của chữ ký số tập thể và thời gian

xác thực được tính có độ dài và thời gian tính tương đương của một thành viên, nên

chữ ký số tập thể tiết kiệm được rất nhiều không gian lưu trữ và thời gian tính toán

so với chữ ký lặp của từng thành viên Das cùng các cộng sự, vào năm 2018 đã tổng

hợp một số lược đồ chữ ký số ủy nhiệm [35 Năm 2006, Gentry và Ramzan [14]

đề xuất chữ ký nhóm dựa trên định danh Năm 2015, Tiwari.Nvà S Padhye [43 đã

Trang 40

đưa ra mô hình chữ ký số đa thành phần dựa trên nhận dạng an toàn Năm 2016, Wang.F, Chen.C.C, Lin.C và Chang.S [42 đã đề xuất lược đồ chữ ký số tập thể dựa trên nhận dạng an toàn Sau này có nhiều lược đồ chữ ký số tập thể ủy nhiệm đã được đề xuất và nhiều trong số đó dựa trên hệ mật định danh như [15 , [22],[31],[37].

Hệ thống chứng thực chữ ký số đã được áp dụng trong lĩnh vực công, trong cơ quan nhà nước Trong đó, số lượng phần mềm ký số, kiểm tra chữ ký số đã được phát triển Tuy nhiên trong quá trình ứng dụng chữ ký số, mỗi phần mềm được áp dụng kiểm tra chữ ký số một cách khác nhau Điều này gây ra các rủi ro về dịch vụ chứng thực chữ ký số tại Việt Nam Chữ ký số là một dạng chữ ký điện tử (là tập con của chữ ký điện tử) được tạo ra bằng sự biến đổi một thông điệp dữ liệu sử dụng hệ mật mã khóa công khai, theo đó người có thông điệp dữ liệu ban đầu và khóa công khai của người ký có thể xác thực được chữ ký số vừa ký

1.7 Kết luận chương 1

Chương 1 đã trình bày khái quát về các giải pháp mật mã hiện nay với các phân tích để chỉ rõ điểm mạnh, điểm yếu của chúng Đồng thời tóm tắt xu hướng phát triển mật mã, nhu cầu an ninh bằng mật mã thực tế của người sử dụng

Tuy nhiên luận án sẽ giải quyết những bài toán cụ thể đặt ra trong thực tiễn là đưa ra một số phương pháp bảo mật và xác thực thông tin dựa trên các thuật toán đã

có, trên hệ mật định danh và trên đường cong Elliptic đang là xu thế của cách mạng công nghiệp 4.0

Ngày đăng: 12/03/2020, 07:18

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w