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

xác thực trong các mạng vô tuyến

117 282 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Xác thực trong các mạng vô tuyến
Tác giả Nguyễn Tuấn Hưng
Người hướng dẫn PGS.TS Trần Hồng Quân
Trường học Đại Học Quốc Gia Hà Nội Trường Đại Học Công Nghệ
Chuyên ngành Công nghệ thông tin
Thể loại Luận văn thạc sĩ
Năm xuất bản 2011
Thành phố Hà Nội
Định dạng
Số trang 117
Dung lượng 4,52 MB

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

Nội dung

DoS Tấn công từ chối dịch vụ DSA Thuật toán chữ ký số EAP Giao thức xác thực có thể mở rộng ECC Mật mã đường cong Elliptic ETSI Viện tiêu chuẩn viễn thông Châu Âu GPRS Công nghệ chuyển m

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

Nguyễn Tuấn Hưng

XÁC THỰC TRONG CÁC MẠNG VÔ TUYẾN

LUẬN VĂN THẠC SĨ

Hà Nội - 2011

Nghành : Công nghệ thông tin

Chuyên nghành : Truyền dữ liệu và mạng máy tính

Mã số : 60 48 15

CÁN BỘ HƯỚNG DẪN KHOA HỌC : PGS.TS Trần Hồng Quân

Trang 2

Lời cam đoan

Tôi xin cam đoan luận văn này là công trình do tôi nghiên cứu Trong luận văn có sử dụng các tài liệu tham khảo đều được tôi trính dẫn đầy đủ và chính xác trong phần tài liệu tham khảo

Hà Nội, ngày 12 tháng 05 năm 2011

Tác giả

Trang 3

Mục lục

BẢNG KÝ HIỆU VIẾT TẮT 5

DANH MỤC BẢNG 6

DANH MỤC HÌNH 6

GIỚI THIỆU 9

1 Đặt vấn đề 9

2 Vấn đề nghiên cứu 10

3 Phạm vi nghiên cứu 10

CHƯƠNG 1 : XÁC THỰC TRONG MẠNG VÔ TUYẾN 12

1.1 An ninh và các dịch vụ an ninh 12

1.1.1 Khái niệm về an ninh thông tin 12

1.1.2 Các hình thức tấn công 12

1.1.2.1 Tấn công bị động 13

1.1.2.2 Tấn công chủ động 14

1.1.3 Các dịch vụ an ninh thông tin 17

1.2 Cơ bản về mật mã học 18

1.2.1 Mã hóa đối xứng 19

1.2.1.1 Khái niệm 19

1.2.1.2 Mô hình hoạt động mã hóa khóa đối xứng 19

1.2.2 Mã hóa bất đối xứng 24

1.2.2.1 Khái niệm 24

1.2.2.2 Hệ mã hóa Diffie-Hellman 26

1.2.2.3 Hệ mã hóa công khai RSA 27

1.2.3 So sánh giữa mật mã khóa đối xứng và mật mã khóa công khai 28

1.3 Chữ ký điện tử 28

1.3.1 Khái niệm 28

1.3.2 Mô hình ký số RSA 30

1.3.3 Mô hình ký số DSA 31

1.3.4 Thuật toán băm 33

1.4 Xác thực và các các mô hình xác thực 33

1.4.1 Mô hình xác thực yếu 35

1.4.1.1 Xác thực dựa trên mật khẩu 35

1.4.1.2 Xác thực dựa trên mã định danh cá nhân (PIN-based Authentication) 36

1.4.2 Mô hình xác thực mạnh 36

1.4.2.1 Giao thức xác thực dựa trên hệ mật mã 37

1.4.2.2 Giao thức xác thực dựa trên kỹ thuật zero-knowledge 39

1.4.2.3 Giao thức xác thực dựa trên thiết bị hỗ trợ 41

1.5 Kết luận chương 1 42

Trang 4

CHƯƠNG 2: XÁC THỰC TRONG CÁC MẠNG VÔ TUYẾN THẾ HỆ SAU 44

2.1 Xác thực trong mạng GSM 44

2.1.1 Giới thiệu mạng GSM 44

2.1.2 Mô hình an ninh của mạng GSM 46

2.1.3 Dịch vụ xác thực trong mạng GSM 48

2.2 Xác thực trong mạng 3G 50

2.2.1 Giới thiệu mạng thông tin di động 3G 50

2.2.2 Mô hình an ninh trong mạng 3G 53

2.2.3 Dịch vụ xác thực và trao đổi khóa 54

2.3 Xác thực trong mạng cục bộ không dây WLAN 58

2.3.1 Giới thiệu về mạng cục bộ không dây WLAN 58

2.3.2 Mô hình an ninh mạng WLAN 60

2.3.2.1 Các vấn đề an ninh trong mạng WLAN 60

2.3.2.2 Giải pháp an ninh trong mạng WLAN 60

2.3.3 PRE-RSNA 62

2.3.2.1 Xác thực 62

2.3.2.2 Bảo mật và toàn vẹn dữ liệu 64

2.3.4 RSNA 65

2.3.4.1 Xác thực 65

2.3.4.2 Bảo mật và toàn vẹn dữ liệu 68

2.4 Kết luận chương 2 69

CHƯƠNG 3: Hệ MẬT MÃ CÔNG KHAI ECC VÀ ỨNG DỤNG TRONG XÁC THỰC CÁC MẠNG VÔ TUYẾN 70

3.1 Hệ mật mã đường cong Elliptic 71

3.1.1 Cơ sở toán học 72

3.1.1.1 Đường cong Elliptic 72

3.1.1.2 Phép cộng hai điểm 73

3.1.1.3 Phép nhân hệ số nguyên 76

3.1.1.4 Đường cong Elliptic trên trường hữu hạn 77

3.1.2 Hệ mật mã công khai ECC 83

3.1.2.1 Các tham số của hệ mật mã hóa ECC 84

3.1.2.2 Các kiểu dữ liệu trong hệ mật mã ECC 86

3.1.2.2 Thuật toán sinh khóa 87

3.1.2.3 Thuật toán trao đổi khóa ECDH 88

3.1.2.4 Thuật toán chữ ký điện tử ECDSA 88

3.1.2.5 Thuật toán xác thực chữ ký điện tử ECC 89

3.1.2.6.Mô hình mã hóa tích hợp đường cong Elliptic - ECIES 90

3.2 Ưu điểm của hệ mật mã đường cong Elliptic 92

3.3 Đề xuất xây dựng hạ tầng khóa công khai cho thiết bị di động dựa trên hệ mật mã ECC 93

3.3.1 Vấn đề an ninh của hệ mật mã công khai 93

3.3.2 Hạ tầng khóa công khai 94

3.3.3 Chứng thư số 95

3.3.4 Xác thực di động dựa trên hạ tầng khóa công khai sử dụng hệ mật mã đường cong Elliptic 97

3.3.4.1 Giao thức cấp pháp chứng thư trên thiết bị di động 98

3.3.4.2 Xác thực di động dựa trên chưng thư số sử dụng hệ mật mã ECC 101

3.3.5 Kết quả 103

3.3.5.1 Thiết kế chương trình 103

3.3.5.2 Các bước thực hiện 103

Trang 5

3.3.5.3 Đánh giá hiệu năng của hệ mật mã ECC 109

3.4 Kết luận chương 3 110

TỔNG KẾT VÀ HƯỚNG NGHIÊN CỨU TIẾP THEO 111

1 Hướng nghiên cứu tiếp theo 111

TÀI LIỆU THAM KHẢO 112

PHỤ LỤC: THAM SỐ HỆ MẬT MÃ ECC 114

Trang 6

DoS Tấn công từ chối dịch vụ

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

EAP Giao thức xác thực có thể mở rộng

ECC Mật mã đường cong Elliptic

ETSI Viện tiêu chuẩn viễn thông Châu Âu

GPRS Công nghệ chuyển mạch gói được phát triển từ mạng

GSM GSM Mạng thông tin di động toàn cầu thế hệ 2

HLR Bộ ghi địa chỉ thường trú

IEEE Viện kỹ sư điện và điện tử

ISO Tổ chức tiêu chuẩn quốc tế

ITU-T Liên minh viễn thông quốc tế

J2ME Công nghệ của Java để phát triển các ứng dụng Java trên

điện thoai di động hay các thiết bị cầm tay nhỏ gọn

MS Trạm di động

PIN Mã định danh cá nhân

PKI Hạ tầng khóa công khai

RADIUS Dịch vụ xác thực người sử dụng truy cập từ xa

RFID Định danh dựa trên tần số vô tuyến

Trang 7

RSA Hệ mật mã RSA

SGSN Nút hỗ trợ chuyển mạch dịch vụ

SIM Thành phần định danh thuê bao

STA Trạm di động

UMTS Mạng thông tin thế hệ 3 theo tiêu chuẩn của Châu Âu

USIM Thành phần định danh thuê bao của mạng 3G

VLR Bộ ghi địa chỉ tạm trú

WLAN Mạng nội bộ không dây

Danh mục bảng

Bảng 3.1 : So sánh độ an toàn các hệ mật mã theo chiều dài khóa ……… 67

Bảng 3.2 : Các điểm thuộc đường cong E23(1,1)……… …73

Bảng 3.3 : Các giá trị trường F24……… 76

Bảng 3.4 : Các điểm thuộc đường cong E24(g4,1)……….……… 76

Bảng 3.5a : So sánh tốc độ ký giữa hệ mật mã ECC và RSA ………

Bảng 3.5b : So sánh tốc độ xác thực giữa hệ mật mã ECC và RSA ………

Danh mục hình Hình 1.1 : Nghe lén thông tin……….……… 13

Hình 1.2 : Phân tích lưu lượng……….……….…14

Hình 1.3 : Giả mạo người gửi………,……,……… 15

Hình 1.4 : Tấn công lặp lại………,…….……… 16

Hình 1.5 : Tấn công sửa đổi dữ liệu………….……….………16

Hình 1.6 : Tấn công từ chối dịch vụ………….……….………17

Hình 1.7 : Chế độ ECB……….……….……20

Hình 1.8 : Chế độ CBC……… ………21

Hình 1.9 : Chế độ CFB……….……….…22

Trang 8

Hình 1.10 : Chế độ OFB ……….23

Hình 1.11 : CTR ……… 23

Hình 1.12a : Chức năng mã hóa / giải mã ……….25

Hình 1.12b : Chức năng ký ……… 25

Hình 1.13 : Mô hình ký số RSA ……….30

Hình 1.14a : Mô hình ký số và xác thực DSA ……… 32

Hình 1.14b : Mô hình truyền thông, sử dụng chữ ký điện tử DSA ……… 32

Hình 2.1 : Hạ tầng mạng GSM ……… 43

Hình 2.2 : Mô hình an ninh mạng GSM ……… 46

Hình 2.3 : Mô hình xác thực trong mạng GSM ………47

Hình 2.4 : Kiến trục mạng 3G UMTS ……… 49

Hình 2.5 : Mô hình an ninh mạng UMTS ……….51

Hình 2.6 : Giao thức xác thực 2 chiều mạng UMTS ……….53

Hình 2.7a : Sinh vector xác thực tại AuC ……… 54

Hình 2.7b : Thuật toán sinh xác thực tại USIM ……… 55

Hình 2.8 : Tham chiếu giữa mô hình IEEE 802.1và mô hình OSI ………… 57

Hình 2.9 : Giải pháp an ninh chuẩn 802.11i ……….60

Hình 2.10a : Phương thức xác thực mở - OSA ……… 61

Hình 2.10b : Phương pháp xác thực khóa chia sẻ - SKA ……… 62

Hình 2.11a : Mã hóa gói dữ liệu ………63

Hình 2.11b : Giải mã và kiểm tra tính toàn vẹn dữ liệu ………63

Hình 2.12 : Dịch vụ xác thực của 802.1x ………65

Hình 2.13 : EAPoL ……… 66

Hình 3.1a : y2x35x ……….70 3 Hình 3.1b : 2 3 5 8 yxx ……….……70

Hình 3.2a : Phép cộng 2 điểm ……….…………72

Trang 9

Hình 3.2b : Phép cộng 2 điểm, với Q ≡ - P ……… ……….72

Hình 3.2c : Phép nhân đôi điểm ……… 73

Hình 3.3 : Các điểm thuộc đường cong E23(1,1) trên đồ thị ……… 76

Hình 3.4 : Các điểm thuộc đường cong E24(g4,1) trên đồ thị ……….79

Hình 3.5 : Quan hệ chuyển đổi giữa các kiểu dữ liệu ………83

Hình 3.6 : Các thành phần hạ tầng khóa công khai ……… 90

Hình 3.7 : Cấu trúc chứng thư X.509 ……….92

Hình 3.8 : Giao thức cấp đăng ký cấp phát chứng thư ………94

Hình 3.9 : Giao thức pháp hành chứng thư ……….95

Hình 3.10a : Giao thức xác thực một bước ……….97

Hình 3.10b : Giao thức xác thực hai bước ……… 97

Hình 3.10c : Giao thức xác thực ba bước ……… 98

Hình 3.11a : Chứng thư của CA……….100

Hình 3.11b : Trường khóa công khai của CA ………100

Hình 3.11c : Thuật toán ký của CA………101

Hình 3.11d : Chữ ký của CA trên chứng thư ……….101

Hình 3.11e: Form điền thông tin cấp yêu cầu phát chứng thư ……….102

Hình 3.11f : Chứng thư được phát hành bởi CA ……… 102

Hình 3.11g : Thuật toán ký số của CA trên chứng thư phát hành……… 103

Hình 3.11h : Chữ ký của CA trên chứng thư phát hành ………103

Trang 10

Giới thiệu

1 Đặt vấn đề

Kể từ năm 1895, khi nhà khoa học Guglielmo Marconi đã thành công trong việc truyền 1 thông điệp điện báo đầu tiên từ khoảng cách 18 dặm mà không cần dùng một loại dây truyền nào Ngày nay, các thiết bị vô tuyến đã xâm nhập vào hầu hết các khía cạnh cuộc sống của con người, ở đâu ta cũng có thể dễ dàng bắt gặp những thiết bị vô tuyến: Từ những vật dụng đơn giản như đài radio, vô tuyến truyền hình, những chiếc điện thoại di động, hoặc mạng Wifi gia đình Các thiết bị vô tuyến nói chung và thiết bị di động nói riêng đã góp phần rất lớn trong cuộc cách mạng hiện đại hóa của con người Thật khó có thể hình dung cuộc sống hiện đại nếu không có những thiết bị vô tuyến đó

Bên cạnh những mặt tốt, truyền thông vô tuyến cũng có nhiều mặt hạn chế Do tính tiện lợi của truyền thông vô tuyến, do vậy cuộc sống của con người ngày càng

lệ thuộc vào nó Mặt khác, do bản chất của truyền thông vô tuyến là truyền công khai bằng các tín hiệu vô tuyến trong không khí, do vậy mạng vô tuyến tiềm ẩn rất nhiều nguy cơ an ninh Nếu kênh truyền không được bảo vệ tốt thì người sử dụng cuối rất có thể sẽ bị tổn thương nếu bị tấn công

Ví dụ, ngày nay có nhiều người sử dụng điện thoại di đông để liên lạc với nhau, các thông tin trao đổi cũng rất đa dạng, kể cả nhưng thông tin bí mật, nếu bị tấn công, những thông tin bí mật đó có thể bị lộ và sẽ gây ra những ảnh hưởng rất lớn tới người sử dụng Ta có thể nếu ra một ví dụ khác, trong thời gian gần đây, có rất nhiều tin nhắn điện thoại giả mạo lừa đảo được gửi tới nhiều người dùng điện thoại di động, gây ra nhiều bức xúc cho người sử dụng và là vấn đề nhức nhối của

xã hội Giải sử những thông tin giả mạo liên quan tới những vấn đề giao dịch, hay kinh doanh thì sẽ gây ra thiệt hại rất lớn cho người sử dụng

Do sự phổ biến của những chiếc điện thoại di động, do vậy có rất nhiều dịch

vụ giá trị gia tăng được phát triển trên truyền thông di động Trong đó có nhiều dịch

vụ thương mại điện tử như thanh toán di động (mobile payment), ngân hàng điện tử Tuy nhiên, nếu hạ tầng di động không đảm bảo được tính bảo mật thì các dịch vụ trên rất khó để thuyết phục người sử dụng tham gia

Hiện nay, hạ tầng an ninh truyền thông đã được xây dựng tương đối hoàn chỉnh, ví dụ như hạ tầng khóa công khai (PKI – Public key Infrastructure) Tuy nhiên các thiết kế ban đầu của các hạ tầng đó được phục vụ việc bảo mật và xác thực chạy trên các máy vi tính Với như thiết bị di động, hoặc các thiết bị nhúng có

Trang 11

năng lực xử lý và khả năng lưu trữ hạn chế thì phương pháp bảo mật cũ không có hiệu quả Mặc dù trong vài năm trở lại đây, có sự bùng nổ của các thiết bị di động thông minh, có năng lực xử lý ngang với máy vi tính, tuy nhiên đó vẫn chỉ là số ít Phần còn lại của các thiết bị di động vẫn là các thiết bị có năng lực xử lý kém, không tương thích với việc triển khai các thuật toán bảo mật

Để giải quyết các vấn đề này, trong những năm gần đây, có nhiều công trình

đã nghiên cứu các phương pháp để bảo mật trong truyền thông vô tuyến Trong luận văn của mình, học viên sẽ nghiên cứu những vấn đề bảo mật trong truyền thông vô tuyến

2 Vấn đề nghiên cứu

Để nghiên cứu vấn đề bảo mật trong truyền thông mạng vô tuyến, học viên nghiên cứu theo các vấn đề sau:

 Vấn đề an ninh và các mô hinh xác thực trong truyền thông mạng

 Khảo cứu các kỹ thuật an ninh đang được áp dụng trong các mạng truyền thông vô tuyến phổ biến hiện nay

 Nghiên cứu phương pháp xác thực hiệu quả được áp dụng trên các thiết

bị vô tuyến nói chung và thiết bị di động nói riêng

3 Phạm vi nghiên cứu

Khái niệm truyền thông mạng là một khái niệm rộng, do vậy trong phạm vi của một luân văn thạc sỹ Học viên chỉ xét các mạng vô tuyến đặc trưng và phổ biến nhất, đó là mạng di động và mạng không dây WLAN Trong đó sẽ tập trung chủ yếu vào mạng di động

Trong nghiên cứu về an ninh truyền thông, học viên sẽ giới thiệu các khái niệm chung về an ninh truyền thông, các phương pháp tấn công Tiếp đó học viên nêu ra các khái niệm cơ bản về mật mã học, các hệ mật mã được sử dụng phổ biến hiện nay, và các dịch vụ an ninh được xây dựng trên các hệ mật mã đó Phần cuối, học viên sẽ nghiên cứu các mô hình xác thực trong truyền thông dựa trên cơ sở các dịch vụ an ninh đã và đang được ứng dụng hiện nay đang được ứng dụng phổ biến Phần tiếp theo, học viên sẽ khảo cứu các kỹ thuật xác thực trong các mạng truyền thông phổ biến nhất hiện nay, đó là mạng di động GSM, mạng 3G và mạng WLAN Đối với từng mạng, học viên đi vào phân tích và nếu ra những nguy cơ an ninh trong hoạt động của các mạng đó

Trang 12

Phần cuối cùng, học viên đi vào nghiên cứu hệ mật mã công khai đường cong Elliptic (ECC - Elliptic Curve Cryptography) Học viên sẽ đi vào khảo cứu và giới thiệu các thuật toán được ứng dụng trong triển khai các dịch vụ an ninh trên cơ sở của hệ mật mã ECC Dựa vào các kết quả nghiên cứu trước đó về hệ mật mã ECC, học viên sẽ đưa ra những so sánh và đánh giá để chỉ ra sự tương thích của hệ mật

mã ECC khi chạy trên các thiết bị có năng lực xử lý yếu Cuối cùng, luận văn đề xuất ứng dụng hạ tầng khóa công khai sử dụng mật mã ECC ứng dụng trên điện thoại di động Để minh họa, luận văn đã thiết kế giao thức cấp phát chứng thư an toàn trên điện thoại di động Trong tương lại, học viên sẽ có thể tiếp tục nghiên cứu

và hoàn thiện các giải pháp triển khai hạ tầng khóa công khai trên thiết bị di động

Trang 13

Chương 1 : Xác thực trong mạng vô tuyến

1.1 An ninh và các dịch vụ an ninh

1.1.1 Khái niệm về an ninh thông tin

An ninh có thể được hiểu là các biện pháp nhằm bảo vệ an toàn cho các dữ

liệu và các tài nguyên khỏi sự xâm hại, sự giả danh từ các tác nhân trái phép

An ninh thông tin là một thành phần quan trọng trong bất cứ một dịch vụ, một

sản phẩm, hay hệ thống thông tin nào An ninh trong hệ thống truyền thông thông

tin lại càng quan trọng, bởi tính chất của truyền thông thông tin là truyền sóng dưới

dạng công khai mà bất cứ ai cũng có thể tiếp cận được, và do sự phổ biến của các

dịch vụ truyền thông thông tin ngày nay

Nói về an toàn thông tin của 1 hệ thống, giáo sư G Spafford đã từng nói [22]:

“Một hệ thống chỉ an toàn thực sự khi nó được ngắt hoàn toàn, được đóng trong 1

khối bê tông và được niêm phong trong 1 ngôi nhà bọc chì có lực lượng vũ trang

bảo vệ - Thậm chí khi đó tôi vẫn có sự nghi ngờ ” Theo định nghĩa của ISO/IEC

2382-8 : “An ninh là sự bảo vệ dữ liệu và tài nguyên bằng các hành động thích hợp

khỏi những hành vi gây hại cố tình hay vô ý”

Một trong những sai lầm phổ biến khi thiết kế hệ thống đó là việc coi yếu tố

an ninh là thành phần có thể được bổ xung sau, chính sai lầm này dẫn tới những lỗ

hổng an ninh phát sinh ở giai đoạn sau sẽ rất khó phát hiện, và sửa chữa Ví dụ,

trong các giao thức 802.11 của mạng WLAN, thiết kế của lớp trung gian MAC

(Medium Access Control) có thể dẫn tới hệ thống bị tấn công từ chối dịch vụ

(Denial of services - DoS) Các giao thức 802.11 sau này (802.11i) đã được cải tiến

để chống lại các cuộc tấn công dịch vụ, nhưng vẫn chưa loại bỏ được kiểu tấn công

người ở giữa (Man in the middle) Do vậy việc xem xét đánh giá tổng thể các khía

cạnh sử dụng, các tình huống sử dụng trong thực tế để phát hiện ra những nguy cơ

an ninh là một điều rất quan trọng

1.1.2 Các hình thức tấn công

Để nắm rõ được các cơ chế an ninh, ta cần quan tâm tới các hình thức

tấn-công Hiện nay, có rất nhiều hình thức tấn công vào hệ thống, nhưng ta có thể phân

thành 2 nhóm [24]: Tấn công bị động và tấn công chủ động Tấn công bị động là

hành động thu thập thông tin, nghe lén thông tin, phân tích thông tin trên kênh

Comment [u1]: Spafford, G.,

http://homes.cerias.purdue.edu/~spaf/quotes.h tml

Comment [u2]: William Stalling (2005)

“Cryptography and Network Security”, pp

13-15

Trang 14

truyền mà không phương hại tới tài nguyên hay dữ liệu của hệ thống Tấn công chủ động là hình thức tấn công mà kẻ tấn công tác động tới dữ liệu và tài nguyên của hệ thống, làm ảnh hưởng tới hoạt động của hệ thống

1.1.2.1 Tấn công bị động

Có 2 hình thức tấn công bị động đó là: Nghe lén và theo dõi lưu lượng Mục tiêu của kẻ tấn công là thu thập thông tin trên đường truyền để khôi phục thông điệp truyền tin và phân tích được lưu lượng truyền trên mạng

Việc tấn công nghe lén và khôi phục lại dữ liệu truyền là một dễ hiểu, bởi trong các thông tin truyền như các cuộc gọi, email, tin nhắn, có rất nhiều thông tin nhạy cảm mà ta không muốn bị lộ Nếu dữ liệu truyền của ta không được mã hóa, thì việc lộ thông tin khi bị nghe lén là điều chắc chắn

Tấn công phân tích lưu lượng là một kiểu tấn công tinh vi, giả sử thông tin trao đổi của chúng ta đã được mã hóa bằng một hệ mật mã nào đó, do vậy kẻ tấn công không thể nghe lén được nội dung thông tin trao đổi Nhưng kẻ tấn công có thể theo dõi được các mẫu thông điệp được truyền trên đường truyền, từ 1 nguồn tới

1 đích xác định, kết hợp với các thông tin khác, kẻ tấn công có thể đoán được một phần thông điệp truyền

Hình 1.1 : Nghe lén thông tin

Trang 15

Phương pháp tấn công bị động rất khó phát hiện, bởi không có bất cứ 1 sự thay đổi hay can thiệp nào trên dữ liệu truyền, do vậy cả người gửi và người nhận đều không thể nhận biết được thông tin truyền của mình có bị nghe lén, hay bị theo dõi hay không Để phòng chống việc bị tấn công thụ động, các thông tin truyền phải được mã hóa trước khi truyền để tránh bị tấng công nghe lén, đồng thời ta có thể áp dụng một số cơ chế đặc biệt để có thể chống được tấn công phân tích lưu lượng

1.1.2.2 Tấn công chủ động

Tấn công chủ động là các hình thức tấn công nhằm sửa đổi thông tin truyền, hoặc tạo ra các thông tin truyền giả mạo Tấn công chủ động có thể được chia làm 4 nhóm sau: Tấn công giả mạo, tấn công lặp lại, tấn công sửa đổi thông tin, và tấn công từ chối dịch vụ

Tấn công giả mạo : Là hình thức tấn công mà kẻ tấn công sẽ giả mạo mình là một người khác để thực hiện hành vi tấn công Ví dụ, trong thủ tục xác thực người dùng của 1 hệ thống, nếu kẻ tấn công có mật khẩu của người dùng thì kẻ đó có thể vượt qua hệ thông xác thực như 1 người dùng hợp lệ

Tấn công lặp lại : Kẻ tấn công sau khi đã thu thập được 1 đơn vị dữ liệu trên kênh truyền, nếu đơn vị dữ liệu đó được sử dụng trong thủ tục xác thực, kẻ tấn công

có thể gửi lại đơn vị dữ liệu đó để có thể vượt qua thủ tục xác thực

Hình 1.2 : Phân tích lưu lượng

Trang 16

Tấn công sửa đổi dữ liệu : Kẻ tấn công có thể can thiệp vào dữ liệu trên kênh truyền và sửa đổi dữ liệu đó nhằm phục vụ mục đích của mình

Tấn công từ chối dịch vụ (Denial of Service - Dos): Là hình thức làm suy giảm khả năng phục vụ của hệ thống, bằng cách gửi một loạt các yêu cầu phục vụ giả mạo tới hệ thống với số lượng cực lớn, làm cho hệ thống bị quá tải, dẫn tới những yêu cầu phục vụ chính đáng không thể được xử lý

Hình 1.3 : Giả mạo người gửi

Trang 17

Hình 1.4 : Tấn công lặp lại

Hình 1.5 : Tấn công sửa đổi dữ liệu

Trang 18

Ta có thể thấy hình thức tấn công chủ động trái ngược với các tấn công

bị-động Trong khi các hình thức tấn công bị động rất khó phát hiện, nhưng việc áp

dụng các biện pháp phòng chống lại có thể dễ dàng áp dụng, ngược lại các hình

thức tấn công chủ động lại dễ dàng có thể phát hiện, nhưng lại khó phòng chống bởi

hiện nay có rất nhiều các loại hình dịch vụ khác nhau, các loại thiết bị khác nhau

cùng hoạt động, do vậy càng có nhiều lỗ hổng an ninh hơn, trong đó có nhiều lỗ

hổng an ninh đã được phát hiện và nhiều lỗ hổng an ninh tiềm ẩn, chưa được phát

hiện Đây là mảnh đất màu mỡ cho các hacker có thể hoạt động

1.1.3 Các dịch vụ an ninh thông tin

Dựa vào các hình thức tấn công, chuẩn kiến trúc an ninh cho mô hình OSI

X.800 [12] đưa ra 5 dịch vụ an ninh thông tin Đó là các dịch vụ :

Bảo mật: Dịch vụ bảo mật dữ liệu đảm bảo dữ liệu không thể bị đọc bởi những

người không được phép Theo đó dữ liệu sẽ được mã hóa, chỉ có những người được

phép có khóa hợp lệ mới có thể đọc được nội dung dữ liệu Mặt khác, khi dữ liệu

truyền được mã hóa địa chỉ nguồn và địa chỉ đích, thì có tác dụng bảo vệ kênh

truyền khỏi cuộc tấn công phân tích lưu lượng Dịch vụ bảo mật thông tin được sử

dụng để bảo mật dữ liệu truyền khỏi tấn công thụ động

Dịch vụ xác thực: Dịch vụ xác thực đảm bảo được danh tính của các thực thể

truyền thông, và dữ liệu truyền thông được công bố là xác thực và không bị sửa đổi

bởi bên thứ 3

Hình 1.6 : Tấn công từ chối dịch vụ

Comment [u3]: ITU-T

Recommendation X.800, “Security architecture for open system interconnection (OSI)”, pp 8-10

Trang 19

Dịch vụ điều khiển truy cập: Dịch vụ điều khiển truy cấp là khả năng hạn chế

và điều khiển truy cập vào hệ thống và ứng dụng thông qua kênh truyền Để có thể truy cập hệ thống, thực thể truy cập trước tiên phải được định danh, và xác thực Sau khi thực thể được xác thực thành công, hệ thống sẽ cấp quyền truy cập tới những thành phần được phép truy cập cho thực thể đó

Toàn vẹn dữ liệu: Dịch vụ toàn vẹn dữ liệu ngăn chặn những hành động sửa đổi dữ liệu trái phép Theo đó, chỉ những thực thể hợp lệ mới được phép sửa đổi dữ liệu Các thao tác sửa đổi dữ liệu bao gồm: Thay đổi trạng thái dữ liệu, tạo dữ liệu giả, xóa dữ liệu, và gửi lại dữ liệu đã gửi trước đó

Chống chối bỏ: Dịch vụ chống chối bỏ đảm bảo cho thực thể nhận có thể chứng minh được dữ liệu nhận được chắc chắn là của bên gửi Tương tự, thực thể gửi cũng có thể chứng minh được dữ liệu gửi đi chắc chắn là của mình

1.2 Cơ bản về mật mã học

Các dịch vụ an ninh chỉ có thể được xây dựng trên nền tảng hệ thống mật mã học Với mỗi dịch vụ, mỗi mục đích khác nhau, có những phương pháp mã hóa khác nhau được sử dụng Trước khi đi chi tiết các phương pháp trong an ninh mạng

vô tuyến, ta cần có những khái niệm cơ bản về mật mã học và các hệ mật mã được

sử dụng phổ biến hiện nay

Mã hóa (Encryption) là quá trình biến đổi một thông điệp theo 1 phương thức nào đó nhằm giữ bí mật nội dung của thông điệp đó, theo đó các ký tự dễ hiểu của bản gốc thông điệp ( bản rõ - plain text) bị thay thế bởi các ký tự có thứ tự hỗn độn tạo ra một thông điệp có hình thức khó hiểu (bản mã - ciphertext) Quá trình ngược lại với quá trình mã hóa được gọi là quá trình giải mã (Decrytion) Một hệ mật mã (cryptography) bao gồm 1 phương pháp mã hóa và 1 phương pháp giải mã với một hay nhiều khóa xác định để thực hiện thao tác mã hóa và giải mã Thông thường, để bảo đảm an toàn cho 1 thông điệp truyền, ta thường kết hợp nhiều phương pháp mã hóa, ví dụ một lớp mã hóa để đảm báo thông điệp không bị đọc trộm bởi các thực thể không được phép, và có thể dùng thêm một lớp mã hóa để “tạo chữ ký” cho thông điệp truyền Khi thông điệp đã được ký, nó có tác dụng đảm bảo tính toàn vẹn của thông điệp, xác thực và chống chối bỏ Ngoài ra, trong các thông điệp truyền,

có thể áp dụng kỹ thuật đóng dấu thời gian để chống tấn công lặp lại

Các hệ mã hóa có thể được chia ra làm 2 loại chính: Mã hóa đối xứng và mã hóa bất đối xứng Ta sẽ cùng xét lần lượt 2 loại mã hóa này

Trang 20

1.2.1 Mã hóa đối xứng

1.2.1.1 Khái niệm

Hệ mật mã đối xứng là hệ mật mã sử dụng thuật toán mã hóa khóa đối xứng, tức là quá trình mã hóa và quá trình giải mã đều sử dụng chung một khóa Để sử dụng hệ mật mã đối xứng, người gửi và người nhận trước đó phải trao đổi một khóa dùng chung, sau đó mới có thể tiến đến mã hóa và giải mã thông điệp gửi đi và nhận lại

Quá trình mã hóa và giải mã có thể được ký hiệu một cách hình thức như sau: Gọi P (Plaintext) và C (Ciphertext) lần lượt là bản rõ và bản mã của một thông điệp

K là tập các khóa Ek và Dk lần lượt là 2 thủ tục mã hóa và giải mã với khóa k, ký hiệu là:

Ek và Dk thỏa mãn tính chất sau:

Việc tính toán Ek(x) và Dk(y) có thể dễ dàng thực hiện được Nhưng ngược lại việc tìm ra x khi chỉ biết bản mã Ek(x) = C, hoặc tìm ra khóa k là một việc rất khó Việc phá mã có thể đưa về 2 bài toán sau:

 Tìm bản rõ x khi chỉ biết Ek(x)

 Tìm khóa k nếu biết k thuộc tập khóa K và có các bản mã Ek(x)

Trong hệ mật mã khóa đối xứng, độ lớn của không gian khóa là cực kỳ quan trọng Trong thực tế, độ an toàn của hệ mật mã phụ thuộc rất lớn vào độ lớn của không gian khóa, không gian khóa càng lớn thì địch thủ càng khó để thực hiện tấn công vét cạn để tìm ra khóa đúng Nếu không gian khóa có độ lớn là 2128 khóa, với siêu máy tính hiện đại nhất hiện nay là Thiên hà 1A của Trung Quốc có số phép tính trong 1 giây là 2.5x1015 phép tính Để tìm ra khóa, siêu máy tính phải thực hiện trong khoảng 1015 năm Đây là một điều không thể

1.2.1.2 Mô hình hoạt động mã hóa khóa đối xứng

Dựa vào mô hình hoạt động, các hệ mã hóa khóa đối xứng có thể được chia làm 2 loại: Mã hóa khối (block cipher scheme) và mã hóa theo dòng (stream

Trang 21

cipher) Mã hóa khối hoạt động bằng cách chia nhỏ thông điệp gốc thành nhiều khối

có cùng độ dài xác định b (b > 0), sau đó mã hóa tất cả các khối theo đúng thư tự và

truyền đi Mã hóa theo dòng là một trường hợp đặc biệt của mã hóa khối trong

trường hợp số khối bằng 1, chiều dài khối đúng bằng chiều dài thông điệp

Mô hình khối đối xứng có 5 chế độ tương ứng với 5 mô hình mã hóa khối, đó

là các chế độ : ECB (Electronic Codebook), CBC (Cipher Block Chaining), CFB

(Cipher Feedback), Output Feedback (OFB) và Counter (CTR) [26]

a ECB – Electronic Codebook

Chế độ ECB là chế độ đơn giản nhất trong các mô hình mã hóa khối Chế độ

ECB sẽ chia bản rõ (plaintext) thành các khối có độ dài bằng nhau và mã hóa các

khối đó độc lập với nhau với cùng 1 khóa k Do các khối được mã hóa độc lập với

nhau nên địch thủ có thể dễ dàng nhận ra được các khuôn mẫu của bản rõ dựa vào

sự giống nhau các khối trùng nhau (Hình 1.7)

Hình 1.7 : Chế độ ECB

Comment [u4]: William Stalling (2005)

“Cryptography and Network Security”, pp 181-189

Trang 22

b CBC – Cipher Bock Chaining

Chế độ CBC chia nhỏ bản rõ (plaintext) thành các khối có độ dài bằng nhau Nhưng khác với chế độ EBC, các khối dữ liệu sau sẽ được thực hiện phép XOR với bản mã của khối dữ liệu trước Riêng khối dữ liệu đầu tiên sẽ được XOR với 1 vector khởi tạo (Initialize Vector - IV) Chế độ CBC đã khắc phục được nhược điểm của ECB, do có khối sau được mã hóa dựa trên bản mã của khối trước đó nên địch thủ không thể nhận biết được các mẫu khối bản rõ giống nhau (Hình 1.8)

c CFB (Cipher Feedback)

Chế độ CFB có cơ chế hoạt động tương tự với chế độ CBC, nhưng thay vì khối sau được XOR với bản mã của khối trước, CFB sử dụng thanh thêm 1 thanh ghi dịch chuyển và 1 hàm băm để băm khối mã trước đó rồi mới XOR với bản rõ (Hình 1.9)

Hình 1.8 : Chế độ CBC

Trang 23

d OFB (Output Feedback)

Chế độ OFB có cơ chế hoạt động tương tự với chế độ CFB, nhưng thay vì bản

mã của khối trước được băm, OFB sử dụng mã băm của khối trước để băm tiếp ở khối sau trước khi XOR với bản rõ của khối sau (Hình 1.10)

e CTR (Counter)

Chế độ CTR sử dụng một biến đếm tăng dần theo số lượng khối, ở mỗi khối biến đếm của khối đó được mã hóa bởi khóa K, bản mã của phép mã hóa này sẽ được XOR với bản rõ của khối (Hình 1.11)

Hình 1.9 : CFB

Trang 24

Hình 1.10 : OFB

Hình 1.11 : CTR

Trang 25

1.2.2 Mã hóa bất đối xứng

1.2.2.1 Khái niệm

Mật mã bất đối xứng - hay còn gọi là mật mã công khai - có 2 loại khóa trong không gian khóa là (PR, PU), trong đó PR là khóa bí mật, PU là khóa công khai 2 thủ tục mã hóa E và giải mã D với lần lượt khóa PU và khóa PR được ký hiệu như sau:

Thỏa mãn :

Hàm mã hóa EPU(x) và hàm giải mã DPR(y) là các hàm dễ dàng tính được Việc phá mật mã công khai được đưa về các bài toán sau:

 Tìm bản rõ x nếu biết bản mã hóa EPU(x) và khóa công khai PU

 Tìm khóa công bí mật PR khi biết khóa công khai PU

Không giống như hệ mã hóa khóa đối xứng - sử dụng 1 khóa chia sẻ để mã hóa và giải mã thông điệp trao đổi - mã hóa khóa công khai sử dụng 1 cặp khóa gọi

là khóa bí mật và khóa công khai: Khóa công khai được sử dụng để mã hóa dữ liệu, khóa bí mật sử dụng để giải mã Mã hóa khóa công khai đã giải quyết được những điểm yếu của mã hóa khóa đối xứng, đó là mã hóa khóa đối xứng trước khi sử dụng phải có sự trao đổi khóa giữa các thực thể truyền, nếu khóa chung được chia sẻ qua môi trường công cộng (Như Internet hay điện thoại …) thì rất dễ bị nghe lén, khi bị

lộ khóa thì việc mã hóa không còn tác dụng nữa Mặt khác mã hóa khóa đối xứng không có chức năng “ký”, do vậy các thực thể tham gia truyền thông không thể tự bảo vệ mình nếu đối tác có hành động chống lại ( Hành động chối bỏ dữ liệu đã truyền, hoặc giả mạo ) Mã hóa khóa công khai sử dụng 2 khóa để hoạt động, mỗi bên sẽ tự tạo cho mình 2 khóa có liên hệ về mặt toán học, khóa công khai sẽ được công bố công khai, khóa bí mật sẽ được giữ kín

Khi bên A cần truyền thông tin bí mật cho bên B, bên A sẽ sử dụng khóa công khai của bên B để mã hóa Do chỉ B mới có khóa bí mật trong cặp khóa, nên chỉ duy nhất B mới có thể giải mã được thông tin bên A gửi, đó gọi là chức năng mã hóa (Hình 1.12a) Khi bên B muốn xác nhận 1 thông điệp gửi cho bên A là chính xác do

Trang 26

B gửi, B sẽ dùng khóa bí mật của mình để mã hóa thông điệp truyền và gửi đính

kèm thông điệp truyền Bên A nhận được sẽ dùng khóa công khai của B để giải mã

bản mã bên B gửi đính kèm, nếu kết quả giải mã trùng với thông tin bên B gửi thì

bên A có thể chắc chắc thông tin đó chính xác là do bên B gửi, đây là chức năng

“ký” của mã hóa khóa công khai (Hình 1.12b)

Theo William Stalling, mã hóa khóa công khai có 3 chức năng chính [27]:

 Mã hóa và giải mã

 Chứ ký điện tử

 Trao đổi khóa

Hình 1.12a : Chức năng mã hóa / giải mã

Hình 1.12b: Chức năng ký

Comment [u5]: William Stalling

(2005) “Cryptography and Network Security”, pp 266-267

Trang 27

Cơ sở lý thuyết của mã hóa khóa công khai là dựa trên hàm 1 chiều trong các phép tính toán học, theo đó phép tính theo chiều xuôi rất dễ, nhưng phép tính theo chiều ngược lại là rất khó, Ví dụ như trong phép nhân 2 số nguyên tố rất lớn, chiều xuôi là phép nhân được tính toán rất đơn giản, nhưng chiều ngược, tức là phần tích

1 số nguyên rất lớn thành tích của các thừa số nguyên tố lại là bài toán rất khó, các phương tiện máy tính hiện đại nhất và các phương pháp phá mã, thám mã đến nay vẫn chưa thể giải quyết được

1.2.2.2 Hệ mã hóa Diffie-Hellman

Hệ mã hóa Diffie-Hellman có cơ sở toán học từ bài toán 1 chiều của logarit rời rạc Bài toán lograrit rời rạc được phát biểu như sau: Cho số nguyên tố p, số y và g, tìm số nguyên x thỏa mãn:

2 thực thể truyền thông Alice và Bob khi thực hiện trao đổi khóa Hellman sẽ thực hiện các bước sau:

Diffie- Alice chọn 1 số nguyên tố p và một số nguyên cơ sở g Alice chọn số nguyên xa, sau đó tính được x amod

a

yg p Sau đó Alice công bố khóa công khai (ya, p, g) và giữ lại khóa bí mật (xa,p,g), khóa công khai sẽ được gửi cho Bob

 Bob chọn ra một số nguyên bí mật xb, sau đó tính được x bmod

b

sau đó gửi lại cho Alice số yb

 Alice tính toán ra được khóa chia chung x amod

b

a

Ky p, Bob cũng sẽ tính được khóa chia chung x bmod

a

b

Ky p Khóa Ka và Kb là 2 khóa chia

sẻ giữa Alice và Bob, được tính toán độc lập với nhau và bằng nhau Thật vậy

(5)

Trang 28

1.2.2.3 Hệ mã hóa công khai RSA

Hệ mã hóa RSA có cơ sở toán học từ bài toán hàm 1 chiều phân tích thừa số của một số nguyên rất lớn thành tích các thừa số nguyên tố.Cụ thể hệ mã hóa RSA hoạt động như sau:

 Chọn ra 2 số nguyên tố p, q có giá trị rất lớn (Cỡ 256 bit trở lên)

 Tính ra tích n = p.q

 Tính ra hàm Eule (Ơle) của tích n: ( )n (p1)(q1)

 Chọn ra số nguyên e nguyên tố cùng nhau với ( )n , tức gcd(e, ( )n ) = 1 (gcd – là hàm tính ước chung lớn nhất của 2 số nguyên)

 Tìm ra số nguyên d thỏa mãn e d 1(mod ( )) n

 Hủy p,q, và ( )n

 Công bố khóa công khai là PU = (n,e), Giữ lại khóa bí mật là PR = (n,d)

 Mã hóa thông điệp m (m là dạng số hóa): emod

Alice hủy số p=7,q=13, ( )n =72 Công bố khóa công khai PU=(91,5), và lưu lại khóa bí mật PR=(91,29)

Giả sử Bob muốn mã hóa thông điệp m=7, Bob sẽ sử dụng khóa công khai của Alice để mã hóa:

Trang 29

1.2.3 So sánh giữa mật mã khóa đối xứng và mật mã khóa công khai

Cả 2 hệ mật mã khóa đối xứng và mật mã khóa công khai đều có những ưu

điểm và nhược điểm riêng Mật mã khóa đối xứng có những ưu điểm so với mã hóa

khóa công khai :

 Tốc độ mã hóa nhanh và không đòi hỏi năng lực tính toán lớn

 Với cùng 1 độ an toàn, khóa của mật mã khóa đối xứng nhỏ hơn so với

khóa của mật mã khóa công khai

Ngược lại, mật mã khóa công khai cũng có những ưu điểm so với mã hóa khóa

đối xứng:

 Mật mã khóa đối xứng yêu cầu 2 bên phải giữ bí mật khóa chia sẻ, mật

mã khóa công khai thì mỗi bên có khóa bí mật của riêng mình, còn khóa

công khai sẽ được công khai

 Mật mã khóa đối xứng gặp khó khăn trong việc phân phối khóa và quản

lý khóa Việc phân phối khóa của khóa đối xứng là đặc biệt quan trọng,

thường sẽ phải bằng phương pháp vật lý để không bị nghe lén, đọc trộm

Mặt khác mật mã khóa đối xứng thường xuyên phải thay đổi khóa để

đảm bảo tính an toàn Với mật mã khóa công khai, việc trao đổi khóa là

rất dễ dàng, bởi khóa của mỗi bên được công bố công khai

 Mã hóa khóa đối xứng không có chức năng ký, do vậy không thể thực

hiện các dịch vụ xác thực và chống chối bỏ Mật mã khóa công khai cung

cấp đầy đủ các dịch vụ xác thực và chống chối bỏ

1.3 Chữ ký điện tử

1.3.1 Khái niệm

Chữ ký điện tử là một kỹ thuật mật mã cung cấp dịch vụ xác thực, điều khiển

truy cập và chống chối bỏ Mục tiêu của chữ ký điện tử là cung cấp khả năng để 1

thực thể truyền thông có thể đính kèm những thông tin có tính chất định danh lên

một thông điệp truyền Quá trình ký 1 thông điệp là một quá trình sử dụng một số

thông tin bí mật của bên gửi để mã hóa thông điệp đó thành 1 chuỗi định danh để

chứng minh quan hệ không thể chối bỏ của thông điệp được ký và thực thể ký Chữ

ký điện tử được định nghĩa như sau [13]:

 M là tập các thông điệp được ký

Comment [u6]: Noureddine Boudriga (2009), “Security of mobile

communications”, Auerbach Publications, pp

59-60

Trang 30

 S là tập các thành phần chữ ký (Thường là 1 xâu binary có độ dài cố định)

 Hàm “ký” SgA: M → S là hàm biến đổi từ tập M sang tập S của thực thể

truyền A Phép biến đổi SgA được gọi là một thuật toán “ký”, với 1 khóa

Mô hình chứ ký điện tử (Sg, V) phải đảm bảo các tính chất sau:

 Chữ ký SgA(m) là chữ ký hợp lệ của thực thể truyền thông A khi và chỉ khi VA(m, SgA(m)) = 1

 Với một thông điệp m thuộc M, việc tính toán hàm ra hàm ký s của thông điệp m đối với thực thể giả danh sao cho V(m,s) = 1 là một việc không khả thi

A, B sẽ sử dụng hàm băm H để băm lại thông điệp m, sau đó sẽ sử dụng khóa công khai của A để giải mã chữ ký số A gửi kèm, nếu giá trị được giải mã trùng với giá trị băm của hàm H thì B sẽ chắc chắn thông điệp m là do A gửi chứ không phải một bên thứ 3 nào khác

Trang 31

Với việc áp dụng kết hợp các kỹ thuật đóng dấu thời gian (timestamp), chữ ký điện tử cung cấp các dịch vụ an ninh sau:

in the middle)

1.3.2 Mô hình ký số RSA

Theo mô hình mật mã RSA, khóa bí mật của thực thể truyền thông A có dạng

là PRA=(n,d), khóa công khai có dạng PUA=(n,e) Không gian của thông điệp và bảng mã là {1,2,3 … n} (n là một hợp số có giá trị rất lớn)

Để ký vào một thông điệp m, thực thể A sẽ sử dụng một hàm băm H để băm thông điệp m về một bản mã có kích thước cố định, sau đó A sẽ sử dụng khóa bí mật của mình để ký trên giá trị băm đó Ta có thể viết:

sSg mH m n

Thực thể A sau khi ký thông điệp m tính được giá trị s, A sẽ gửi cho đối tác là

B thông điệp m và chữ ký s, ký hiệu là ( | )m s Khi B nhận được thông điệp m và chữ ký s A gửi, B sẽ sử dụng khóa công khai của A là PUA=(n,e) để giải mã chữ ký

s, tức B sẽ tính giá trị của s emodn Sau đó A sẽ so sánh giá trị giải mã tính được

với giá trị băm của hàm băm H(m), nếu H(m) = s emodn thì chữ ký của A là hợp lệ,

và B có thể chắc chắn A đã ký vào thông điệp m

Hình 1.13: Mô hình ký số RSA

(6)

Trang 32

1.3.3 Mô hình ký số DSA

Mô hình ký số DSA là thuật toán ký số dựa trên độ khó của bài toán tính

logarit rời rạc, được đề xuất lần đầu bởi 2 nhà toán học ElGamal [11] và Schnorr

[20]

Thuật toán DSA được thực hiện qua các bước sau:

Khởi tạo:

 Chọn số nguyên tố p có độ dài bit là 160bit

 Chon số nguyên tố p nằm trong khoảng 1

(2L, 2 )L , với L là bội của 64 thỏa mãn 512 L 1024

 Chọn số g có dạng gh(p 1)/qmodp với h là số nguyên dương nằm

trong khoảng (1, p-1)

Tạo khóa bí mật:

 Chọn 1 số nguyên ngẫu nhiên, hoặc giả ngẫu nhiên x với 0 < x < q Khóa

bí mật là PR=( x )

Tạo khóa công khai :

 Tính toán yg xmodp Khóa công khai là PU = (p, q, g, y)

Quá trình ký số thông điệp m của bên gửi :

 Chọn ra số ngẫu nhiên hoặc giả ngẫu nhiên x với 0 < x < q

Quá trình xác thực của bên nhận :

 Thông điệp bên nhận nhận được là ( m’|(r’,s’) )

 Tính w=(s') mod1 q

 Tính u1H m( ') w mod  q

 Tính u ( ' w) modrq

Comment [u7]: ElGamal, T "A

Public-Key Cryptosystem and a Signature Scheme Based on Discrete Logarithms." IEEE Transactions on Information Theory, July 1985

Comment [u8]: Schnorr, C "Efficient

Signatures for Smart Card." Journal of Cryptology, No 3, 1991

Trang 33

 Tính v g u1y u2modp modq

 Nếu v=r’ thì chữ ký trên thông điệp m là hợp lệ

Trong mô hình chữ ký điện tử DSA, hàm H được quy định là hàm băm SHA-1

Mô hình ký số và xác thực của DSA được mô tả trong hình vẽ 1.14a, và mô hình truyền thông sử dụng chữ ký điện tử DSA được biểu diễn trong hình 1.14b

Hình 1.14a : Mô hình ký số và xác thực DSA

Hình 1.14b: Mô hình truyền thông, sử dụng chữ ký điện tử DSA

Trang 34

1.3.4 Thuật toán băm

Trong các hệ thống an ninh, thuật toán băm thường được sử dụng và giữ một vai trò quan trọng trong các hệ thống mật mã Một hàm băm H ánh xạ xâu dữ liệu

có độ dài hữu hạn tùy ý thành một xâu khác được gọi là mã băm có độ dài cố định

n, chiều dài cố định n phụ thuộc vào hàm băm H Mã băm của một thông điệp được băm bởi hàm H có đặc điểm là khi thay đổi, dù chỉ là 1 bit dữ liệu đầu vào, thì mã băm bị thay đổi hoàn toàn mà không tuân theo một quy luật logic nào, so với mã băm trước khi bị thay đổi

Một hàm băm H có những đặc điểm sau:

 Có thể áp dụng với thông báo M có độ dài bất kỳ

 Tạo ra giá trị băm có độ dài cố định

 H(M) có thể được tính dễ dàng với bất cứ thông báo M nào

 Từ mã băm h rất khó tìm lại được thông điệp M thỏa mã H(M)=h Đây là tính một chiều của hàm băm

 Từ thông báo M1, rất khó để tìm được thông điệp M2 thỏa mãn H(M1)=H(M2) Tức hàm băm có tính chống xung đột yếu

 Rất khó để tìm được 2 thông điệp ( M1, M2 ) thỏa mãn H(M1)=H(M2) Tức hàm băm có tính chống xung đột mạnh

Hiện nay có rất nhiều loại hàm băm khác nhau như MD5, SHA-1, SHA-256, SHA-512 Độ an toàn của hàm băm phụ thuộc vào loại hàm băm, cũng như chiều dài kết quả băm

Ví dụ: Xét hàm băm SHA-256

SHA(“”)= e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855

SHA(“mobile”)= d524c1a0811da49592f841085cc0063eb62b3001252a94542795d1ca9824a941 SHA(“mobilz”) = “0617a2dd1e4d7c1e00b15bf723c6a77baa7c2a74e1bbb8a97b817ba5a870cbb3” SHA(“mobil”)=”403b42efc1997638d33da8f5282c7579d00a885c3e7bd0193fd2d26fd7ef72e0”

1.4 Xác thực và các các mô hình xác thực

Xác thực là quá trình nhằm xác nhận định danh của một thực thể truyền thống, cũng nhưng các thông tin quan trọng đi kèm khác như tên, mật khẩu, và một số

Trang 35

thông tin khác Thực thể cần xác thực ở đây có thể là người sử dụng cuối, thiết bị di động, máy tính, ứng dụng, một dịch vụ, hoặc một hệ thống

Quá trình xác thực bao gồm 2 bên: Bên cần xác thực (claimant) và bên xác thực (verifier) Bên cần xác thực sẽ khai báo định danh và các thông tin để bên xác thực có thể xác thực lại định danh đó Khái niệm “xác thực” ( authentication) là một khái niệm đặc biệt, nó có ý nghĩa khác hẳn với khái niệm “định danh” (identification) – Là việc xác định danh tính của thực thể đang giao tiếp – Khái niệm xác thực cũng khác với khái niệm “quyền truy cập” ( authorization) - là việc xác định quyền truy cập dữ liệu và tài nguyên của một thực thể đã được “xác thực” (authentication)

Ta cần phân biệt 2 khái niệm xác thực, là xác thực thực thể (entity authentication) và xác thực thông điệp (message authentication) Xác thực thực thể

là quá trình xác thực danh tính của một thực thể, xem liệu thực thể đang được xác thực có đúng với danh tính của nó, ví dụ là xác thực người dùng đăng nhập vào hệ thống, và đó là một quá trình thời gian thực Ngược lại xác thực thông điệp là một quá trình không là quá trình thời gian thực, nó đảm bảo việc thông điệp được xác thực không bị thay đổi và thông điệp đó được gửi bởi một thực thể đã xác định danh tính

Trong xã hội thông tin ngày nay, việc xác thực thông báo trở thành một vấn đề quan trọng trên nhiều lĩnh vực, đặc biệt là lĩnh vực kinh doanh và lĩnh vực quân sự

Đã có rất nhiều phương pháp, nhiều công nghệ được phát minh cung cấp nhiều kỹ thuật, nhiều dịch vụ xác thực an toàn và tiện lợi Tuy nhiên, có thể phân loại kỹ thuật xác thực thành 3 nhóm:

 Xác thực dựa trên mã hóa thông điệp: Là kỹ thuật sử dụng phương pháp

mã hóa để mã hóa toàn bộ thông điệp, sau đó làm căn cứ để xác thực

 Xác thực mật mã kiểm tra : Sử dụng 1 hàm tổng kiểm tra công khai, với

1 khóa bí mật sẽ được mã hóa thành 1 xâu giá trị có độ dài cố định, làm căn cứ xác thực

 Xác thực dựa trên hàm băm: Sử dụng các hàm băm một chiều, mã hóa thông điệp có độ dài bất kỳ thành xâu có độ dài cố định, làm căn cứ xác thực

Như đã nêu ở trên, xác thực thực thể là một quá trình thời gian thực, các giao thức xác thực thực thể (entity authentication protocol) phải đảm bảo được những tiêu chí sau:

Trang 36

 Không có một bên thứ ba nào có thể giả mạo được

 Bên xác thực không thể tái sử dụng được các thông tin xác thực cũ của thực thể cần xác thực để cung cấp khả năng giả mạo cho một bên thứ ba

 Thông báo được ký không thể được khôi phục lại từ mã của chữ ký trong suốt quá trình xác thực

Trong phần này, ta sẽ xét lần lượt các các mô hình xác thực và các đặc điểm của các mô hình đó

1.4.1 Mô hình xác thực yếu

Mô hình xác thực yếu là một mô hình xác thực, nhưng nó không cung cấp một giải pháp xác thực hiệu quả và đầy đủ về tổng thể Có hai loại hình xác thực yếu rất được quan tâm bởi đó là các phương pháp xác thực tự nhiên và rất phổ biến hiện này, đó là mô hình xác thực dựa trên mật khẩu (Password-based Authentication) và

mô hình xác thực dựa trên mã cá nhân (PIN-based Authentication)

1.4.1.1 Xác thực dựa trên mật khẩu

Xác thực dựa trên mật khẩu là phương pháp xác thực người dùng phổ biến nhất hiện nay Hệ xác thực dựa trên mật khẩu được xây dựng trên mô hình chia sẻ mật khẩu giữa người sử dụng và hệ thống, hệ thống sẽ lưu các bản ghi chứa mật khẩu chia sẻ của người dùng, mật khẩu này sẽ được người sử dụng dùng để cung cấp cùng với tên định danh khi đăng nhập trong bước xác thực

Các hệ xác thực dựa trên mật khẩu thường được phân biệt bởi phương thức lưu trữ mật khẩu trong hệ thống Ở các hệ thống thế hệ trước, mật khẩu thường được lưu dưới dạng bản rõ (plaintext) trên hệ thống file hoặc trong một cơ sở dữ liệu Việc lưu như vậy khá nguy hiểm, bởi ai có thẩm quyền truy cập hệ thống (Quản trị viên, hoặc hacker khi chiếm được quyền kiểm soát) đều có thể lấy cắp được mật khẩu và thông tin của người dùng Để khắc phục nhược điểm này, các hệ thống ngày nay thường lưu mật khẩu dưới dạng mã băm sử dụng hàm băm 1 chiều (Ví dụ là MD5, SHA-256) của mật khẩu người dùng Theo đó, khi người dùng nhập mật khẩu đăng nhập, mật khẩu đó sẽ được băm thành mã băm, sau đó hệ thống sẽ so sánh mã băm đó với mã băm mật khẩu được lưu trong hệ thống Biện pháp này đảm bảo rằng mật khẩu nguyên gốc của người dùng không bị lộ, ngay cả khi người quản trị hay hacker xem được bản chứa mật khẩu được lưu trong hệ thống

Mô hình xác thực dựa trên mật khẩu hiện nay đã bộc lộ một số yếu điểm về an ninh Kẻ tấn công có nhiều phương pháp chiếm quyền kiểm soát của người sử dụng bằng cách đánh cắp mật khẩu Phương pháp đơn giản nhất là kẻ tấn công sẽ sử dụng

Trang 37

phương pháp nghe lén đường truyền, nếu mật khẩu không được mã hóa trên đường

truyền, kẻ tấn công có thể dễ dàng lấy được mật khẩu của người sử dụng Nếu mật

khẩu đã được mã hóa trên đường truyền, kẻ tấn công có phương pháp khác là sử

dụng tấn công bằng từ điển (Dictionary attack – Là cách tấn công sử dụng 1 từ điển

các mật khẩu thường được sử dụng – Hoặc sử dụng phương pháp tấn công ngày

sinh (Birthday attack) [31] để tìm ra điểm xung đột của thuật toán băm

Tuy nhiên, có một kỹ thuật để cải tiến nâng cao độ an toàn trong hệ thống xác

thực dựa trên mật khẩu, đó là sử dụng mật khẩu một lần (One time password)

Nguyên lý của hệ mật khẩu một lần là mỗi mật khẩu được chỉ có hiệu lực 1 lần,

trong một khoảng thời gian nhất định Mật khẩu một lần đảm bảo việc cho dù kẻ tấn

công có lấy được mật khẩu trên đường truyền, thì kẻ đó cũng không sử dụng lại mật

khẩu đó Mật khẩu một lần được hệ thống sinh ra theo một thuật toán ngẫu nhiên,

hoặc giả ngẫu nhiên, có kích thước cố định và được thông báo lại cho người sử

dụng bằng một kênh truyền thông nào đó như qua tin nhắn di động, qua internet,

hoặc qua các thiết bị chuyên dụng , ví dụ như thiết bị Secure ID của hãng bảo mật

RSA, hay OTP token của hãng VeriSign

1.4.1.2 Xác thực dựa trên mã định danh cá nhân (PIN-based

Authentication)

Mô hình xác thực dựa trên mã định danh cá nhân sử dụng các thiết bị vật lý để

lưu trữ mã định danh cá nhân như thẻ SmartCard, hay USB Token Mỗi người sử

dụng được cấp một mã cá nhân (PIN) có chiều dài từ 4-10 chữ số, mã cá nhân được

bảo vệ trong thiết bị vật lý bằng mật khẩu tự đặt của người sử dụng Khi đăng nhập

vào hệ thống, ở bước xác thực, người dùng phải cắm thiết bị vào máy tính để nhập

mã PIN, thông thường khi đó thiết bị sẽ yêu cầu người sử dụng nhập mật khẩu để có

thể kích hoạt mã PIN được lưu trong thiết bị Để đảm bảo mã PIN của người sử

dụng được an toàn ngay cả trong trường hợp người sử dụng bị mất, thiết bị token sẽ

khóa hoặc tự hủy nếu kẻ tấn công nhập sai mật khẩu sử dụng trong một số lần liên

tiếp (Thường là 3 lần hoặc 5 lần)

1.4.2 Mô hình xác thực mạnh

Thông thường, mô hình xác thực mạnh thường sử dụng các giao thức xác thực

dựa trên việc hỏi và trả lời (Challenge-Response), các giao thức đó có thể được mô

tả như sau: Một người sử dụng khi muốn truy cập vào một dịch vụ hay một hệ

thống, anh ta phải chứng minh được danh tính của mình với hệ thống bằng những

Comment [u9]: William Stalling (2005)

“Cryptography and Network Security”,

Prentice Hall Publisher, pp 338

Trang 38

những kiến thức của anh ta về một thông tin bí mật, có liên quan tới anh ta và chỉ anh ta mới có thể tạo ra câu trả lời chính xác mà không cần tiết lộ thông tin bí mật

đó cho bên xác thực Ta gọi chung các giao thức xác thực đó là giao thức hỏi trả lời

(challenge-Response Protocol )

Các giao thức xác thực thường được xây dựng trên hệ mã hóa chia sẻ khóa, hoặc hệ mã hóa khóa công khai, hoặc các kỹ thuật zero-knowledge – là kỹ thuật được sử dụng để chứng minh danh tính dựa trên thông tin bí mật của chủ thể mà không cần tiết lộ bí mật đó của chủ thể - Giao thức xác thực thường sử dụng các tham số thời gian, hoặc kỹ thuật đánh số thông điệp để nhận biết thông điệp nào là thông điệp mới, thông điệp nào là thông điệp đã được gửi rồi, để tránh tấn công lặp lại, kỹ thuật này được gọi là kỹ thuật đóng dấu thời gian Kỹ thuật đóng dấu thời gian được thực hiện như sau: Khi 1 thông điệp được gửi từ bên gửi, bên gửi sẽ chèn

1 con dấu thời gian (timestamp) đi kèm thông điệp và nó được mã hóa cùng thông điệp Khi bên nhận nhận được thông điệp, bên nhận sẽ giải mã thông điệp và sẽ thu được con dấu thời gian đó, bên nhận sẽ tính toán độ lệch thời gian so thời điểm nhận, tính theo đồng hồ của máy nhận Nếu độ lệch thời gian nằm trong một giới hạn cho phép thì thông điệp đó là hợp lệ qua bước kiểm chứng con dấu thời gian Khi thực thi phương pháp này, cần chú ý tính đồng bộ của đồng hồ bên gửi và đồng

hồ bên nhận

Các hệ xác thực mạnh được xây dựng theo 3 loại sau: Giao thức xác thực trên

hệ mật mã , giao thức xác thực lời dựa trên các kỹ thuật zero-knowledge, và xác thực dựa trên thiết bị hỗ trợ

1.4.2.1 Giao thức xác thực dựa trên hệ mật mã

Là các giao thức sử dụng các hệ mã hóa để bảo mật và xác thực, có hai hệ mã hóa tương ứng với 2 hệ giao thức xác thực đó là: Giao thức xác thực dựa trên mật

mã đối xứng (Hay mật mã khóa chung), và giao thức xác thực dựa trên mật mã khóa công khai

a Giao thức xác thực dựa trên mật mã khóa đối xứng

Với giao thức xác thực sử dụng mật mã khóa đối xứng, các bước được thực hiện có thể được mô tả như sau: Xét một phiên xác thực giữa người dùng A và hệ thống B sử dụng giao thức xác thực mật mã khóa đối xứng, do sử dụng mật mã khóa đối xứng, nên A và B cùng thống nhất sử dụng khóa chung k và hệ mã hóa Ek

 Để bắt đầu phiên, bên A sẽ gửi yêu cầu xác thực sang bên B

 Bên B sẽ sinh ra 1 số ngẫu nhiên r, sau đó dùng hàm mã hóa với khóa chung chia sẻ để mã hóa số r kèm theo một thông điệp tùy chọn m để

Trang 39

phục vụ cho việc định danh hoặc chống tấn công lặp lại, tức B sẽ gửi lại cho A thông điệp Ek(r || m) (Ký hiệu || là ký hiệu nối giữa các thông điệp nhỏ trong 1 thông điệp tổng)

 Bên A nhận được thông điệp Ek(r || m) từ bên B gửi, do A và B cùng chia

sẻ 1 khóa chung k, nên chỉ có A mới có thể giải mã thông điệp B gửi để nhận được số ngẫu nhiên r và thông điệp tùy chọn m Sau đó bên A sẽ gửi lại cho bên B một thông điệp có chứa số ngẫu nhiên r kèm 1 thông điệp tùy chọn m’ được mã hóa bởi hàm mã tức thông điệp Ek(r || m’)

 Bên B nhận lại thông điệp bên A gửi, bên B sẽ giải mã thông điệp và nhận lại số ngẫu nhiên r, B sẽ so sánh số r nhận được với số r trước đó B

đã gửi cho A Nếu trùng nhau thì A được xác thực và ngược lại

Trong trường hợp A cũng cần xác thực lại B, ở bước yêu cầu xác thực A sẽ gửi định danh của A (IDA) cho B, B sẽ gửi kèm lại số ngẫu nhiên r và IDA trong được mã hóa bởi Ek Ta có thể tóm tắt lại quá trình xác thực như sau:

b Giao thức xác thực dựa trên mật mã công khai

Giao thức xác thực dựa trên mật mã công khai cũng tương tự như giao thức dựa trên mật khẩu khóa đối xứng, chỉ khác ở điểm là hệ mật mã sử dụng là mật mã

Trang 40

công khai Nguyên lý chung của giao thức vẫn là bên B sẽ gửi cho bên A một số ngẫu nhiên r, nhưng thay vì sử dụng mật mã khóa đối xứng, B sẽ mã hóa số r và thông điệp tùy chọn m bằng khóa công khai của A, và gửi cho A A nhận được sẽ giải mã bằng khóa bí mật, rồi gửi lại cho B số r và thông điệp m’, sử dụng khóa công khai của B B sẽ dùng khóa bí mật của B để lấy ra số r, so sánh với số ngẫu nhiên B đã gửi cho A, nếu trùng thì A được xác thực và ngược lại

Nếu A và B cần xác thực nhau, ta áp dụng kỹ thuật tương tự với trường hợp xác thực khóa đối xứng, ta có quá trình xác thực như sau:

(1) A → B : IDA

(2) B → A : E(PUA, IDA || r || m)

(3) A → B : E(PUB, r || m’)

1.4.2.2 Giao thức xác thực dựa trên kỹ thuật zero-knowledge

Như đã đề cập ở phần trên, các phương pháp xác thực thường bên cần xác thực phải công bố hoặc tiết lộ một phần hoặc những thông tin liên quan tới những bí mật của họ để được xác thực Sẽ rất nguy hiểm nếu bên xác thực có ý đồ xấu muốn khôi phục lại những thông tin bí mật của người cần xác thực dựa trên những thông tin bên cần xác thực cung cấp cho ở những phiên xác thực trước Ví dụ với giao thức xác thực dùng mật mã khóa đối xứng, bên A sẽ bị tổn thương nếu bên B cố tình tiết lộ khóa chia sẻ của A và B cho một bên thứ ba khác Kỹ thuật xác thực zero-knowledge được đề xuất cho phép người cần xác thực vẫn có thể xác thực được mà không cần tiết lộ những thông tin bí mật liên quan tới khóa của mình cho bên xác thực Ngược lại, từ những thông tin bên cần xác thực cung cấp ở những

Ngày đăng: 17/02/2014, 21:06

HÌNH ẢNH LIÊN QUAN

Hình 1.7 : Chế độ ECB - xác thực trong các mạng vô tuyến
Hình 1.7 Chế độ ECB (Trang 21)
Hình 1.8 : Chế độ CBC - xác thực trong các mạng vô tuyến
Hình 1.8 Chế độ CBC (Trang 22)
Hình 1.9 : CFB - xác thực trong các mạng vô tuyến
Hình 1.9 CFB (Trang 23)
Hình 1.10 : OFB - xác thực trong các mạng vô tuyến
Hình 1.10 OFB (Trang 24)
Hình 2.1 : Hạ tầng mạng GSM - xác thực trong các mạng vô tuyến
Hình 2.1 Hạ tầng mạng GSM (Trang 45)
Hình 2.2 : Mô hình an ninh mạng GSM - xác thực trong các mạng vô tuyến
Hình 2.2 Mô hình an ninh mạng GSM (Trang 49)
Hình 2.4 : Kiến trúc mạng 3G  UMTS - xác thực trong các mạng vô tuyến
Hình 2.4 Kiến trúc mạng 3G UMTS (Trang 52)
Hình 2.6 : Giao thức xác thực 2 chiều mạng UMTS - xác thực trong các mạng vô tuyến
Hình 2.6 Giao thức xác thực 2 chiều mạng UMTS (Trang 56)
Hình 2.12 : Dịch vụ xác thực của 802.1x - xác thực trong các mạng vô tuyến
Hình 2.12 Dịch vụ xác thực của 802.1x (Trang 68)
Hình 2.13: EAPoL - xác thực trong các mạng vô tuyến
Hình 2.13 EAPoL (Trang 69)
Hình 3.3 : Các điểm thuộc đường cong E 23 (1,1) trên đồ thị - xác thực trong các mạng vô tuyến
Hình 3.3 Các điểm thuộc đường cong E 23 (1,1) trên đồ thị (Trang 80)
Hình 3.5 : Quan hệ chuyển đổi giữa các kiểu dữ liệu - xác thực trong các mạng vô tuyến
Hình 3.5 Quan hệ chuyển đổi giữa các kiểu dữ liệu (Trang 88)
Hình 3.6 mô tả các thành phần và hoạt động của hạ tầng khóa công khai [33]. - xác thực trong các mạng vô tuyến
Hình 3.6 mô tả các thành phần và hoạt động của hạ tầng khóa công khai [33] (Trang 95)
Hình 3.7 : Cấu trúc chứng thư X.509 - xác thực trong các mạng vô tuyến
Hình 3.7 Cấu trúc chứng thư X.509 (Trang 98)
Hình 3.11a: Chứng thư của CA - xác thực trong các mạng vô tuyến
Hình 3.11a Chứng thư của CA (Trang 106)

TỪ KHÓA LIÊN QUAN

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

w