Tải bản đầy đủ (.docx) (149 trang)

LUẬN án TIẾN sĩ TOÁN học NGHIÊN cứu PHÁT TRIỂN GIAO THỨC TRAO đổi KHÓA AN TOÀN

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.32 MB, 149 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO

BỘ QUỐC PHÒNG

VIỆN KHOA HỌC VÀ CƠNG NGHỆ QN SỰ

ĐỖ VIỆT BÌNH

NGHIÊN CỨU PHÁT TRIỂN GIAO THỨC
TRAO ĐỔI KHĨA AN TỒN

LUẬN ÁN TIẾN SĨ TỐN HỌC

HÀ NỘI - 2018


ĐỖ VIỆT BÌNH

NGHIÊN CỨU PHÁT TRIỂN GIAO THỨC
TRAO ĐỔI KHĨA AN TỒN
Chun ngành: Cơ sở tốn học cho tin học
Ma sơ: 9 46 01 10
LUẬN ÁN TIẾN SĨ TỐN HỌC

NGƯỜI HƯỚNG DẪN KHOA HỌC:
1.

PGS. TS Nguyễn Hiếu Minh

2.


TS Nguyễn Mạnh Linh

HÀ NỘI - 2018


i

LỜI CAM ĐOAN

Tơi xin cam đoan đây là cơng trình nghiên cứu của riêng tôi, các kết
quả nghiên cứu là trung thực và chưa được công bố trong bất kỳ cơng trình
nào khác. Các dữ liệu tham khảo được trích dẫn đầy đủ.
TÁC GIẢ LUẬN ÁN

Đỗ Việt Bình


LỜI CẢM ƠN
Trong q trình nghiên cứu và hồn thành luận án, Nghiên cứu sinh đã
nhận được sự định hướng, giúp đỡ, các ý kiến đóng góp quý báu và những lời
động viên của các nhà khoa học, các thầy cơ giáo, đồng nghiệp và gia đình.
Trước hết, Nghiên cứu sinh xin bày tỏ lời cảm ơn đến PGS, TS Nguyễn
Hiếu Minh, TS Nguyễn Mạnh Linh, cùng nhóm nghiên cứu tại Viện Công
nghệ thông tin, Viện Khoa học và Công nghệ Quân sự.
Cho phép Nghiên cứu sinh chân thành cảm ơn các thầy cô giáo trong
Viện Công nghệ thông tin, Viện Khoa học và Công nghệ Quân sự đã giúp đỡ
và có nhiều đóng góp quý báu trong suốt thời gian Nghiên cứu sinh thực hiện
luận án.
Nghiên cứu sinh chân thành cảm ơn Ban Giám đốc, Phòng Đào tạo/
Viện Khoa học và Công nghệ Quân sự đã tạo điều kiện thuận lợi để Nghiên

cứu sinh hoàn thành nhiệm vụ nghiên cứu.
Cuối cùng, Nghiên cứu sinh bày tỏ lời cảm ơn tới đồng nghiệp, gia
đình, và bạn bè đã ln động viên, chia sẻ, ủng hộ và giúp đỡ Nghiên cứu
sinh trong suốt quá trình học tập và nghiên cứu vừa qua.
NCS Đỗ Việt Bình


MỤC LỤC
Trang
DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT...................................vi
DANH MỤC CÁC HÌNH VẼ..........................................................................ix
DANH MỤC CÁC BẢNG................................................................................x
MỞ ĐẦU...........................................................................................................1
Chương I: TỔNG QUAN VỀ VẤN ĐỀ NGHIÊN CỨU..................................8
1.1. Tổng quan về bài tốn trao đổi khóa...................................................... 8
1.1.1. Khái niệm giao thức trao đổi khóa................................................ 11
1.1.2. Các tính chất an tồn của giao thức trao đổi khóa.........................12
1.1.3. Giao thức trao đổi khóa an tồn.....................................................17
1.1.4. Bài tốn trao đổi khóa nhóm......................................................... 20
1.2. Tổng quan về lược đồ chữ ký số.......................................................... 23
1.2.1. Cơ sở toán học...............................................................................24
1.2.2. Lược đồ chữ ký số......................................................................... 27
1.3. Kết luận chương 1................................................................................ 38
Chương II: PHÁT TRIỂN GIAO THỨC TRAO ĐỔI KHÓA CĨ XÁC THỰC
DỰA TRÊN HAI BÀI TỐN KHĨ................................................................ 40
2.1. Phát triển lược đồ chữ ký số dựa trên hai bài tốn khó........................40
2.1.1. Lược đồ thứ nhất (Rabin và Schnorr)............................................48
2.1.2. Lược đồ thứ hai (RSA và Schnorr)................................................49
2.1.3. Đánh giá khả năng bảo mật........................................................... 50



2.2. Phát triển giao thức trao đổi khóa có xác thực dựa trên hai
bài tốn khó ..................................................................................................52
2.2.1. Một số phát triển giao thức trao đổi khóa an tồn.........................53
2.2.2. Mơ tả giao thức DH–MM–KE.......................................................60
2.2.3. Đánh giá giao thức.........................................................................65
2.3. Kết luận chương 2................................................................................ 68
Chương III: PHÁT TRIỂN GIAO THỨC KÝ VÀ MÃ HĨA ĐỒNG THỜI DỰA
TRÊN HAI BÀI TỐN KHĨ............................................................................. 69
3.1. Giao thức ký và mã hóa đồng thời....................................................... 69
3.1.1. Phương pháp ký rồi mã hóa...........................................................70
3.1.2. Phương pháp ký và mã hóa đồng thời........................................... 71
3.1.3. Một số nghiên cứu về ký và mã hóa đồng thời..............................73
3.2. Phát triển giao thức ký và mã hóa đồng thời DH–MM–SC.................75
3.2.1. Mơ tả giao thức..............................................................................75
3.2.2. Đánh giá giao thức.........................................................................76
3.3. Phát triển giao thức ký và mã hóa đồng thời có thể chối từ
DH–MM–DSC .............................................................................................. 79
3.3.1. Mơ tả giao thức..............................................................................82
3.3.2. Đánh giá giao thức.........................................................................84
3.4. Kết luận chương 3................................................................................ 87
Chương IV: PHÁT TRIỂN GIAO THỨC TRAO ĐỔI KHÓA NHÓM.........88
4.1. Đặt vấn đề.............................................................................................88
4.1.1. Giao thức IKA.1............................................................................ 90


4.1.2. Giao thức IKA.2............................................................................ 91
4.2. Đề xuất giao thức trao đổi khóa nhóm................................................. 93
4.3. Đánh giá giao thức................................................................................94
4.3.1. Khơng để lộ khóa cặp.................................................................... 94

4.3.2. Dễ dàng hốn vị để hình thành khóa mới......................................95
4.3.3. Đánh giá độ phức tạp.....................................................................96
4.4. Kết luận chương 4................................................................................ 97
KẾT LUẬN.....................................................................................................98
DANH MỤC CÁC CƠNG TRÌNH KHOA HỌC ĐÃ CÔNG BỐ...............100
TÀI LIỆU THAM KHẢO.............................................................................101


DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT
Từ viết tắt

Nghĩa của từ viết tắt

{0,1}∗

Ký hiệu ch̃i bit có độ dài bất kỳ

{0,1}�

Ký hiệu ch̃i bit có độ dài �

(�)

Hàm phi Euler của �

ACMA

Tấn công thông điệp được lựa chọn thích ứng (Adaptive Chosen
Message Attack)


AKA

Hoạt động bổ trợ trao đổi khóa (Auxiliary Key Agreement)

AKAKC

Giao thức trao đổi khóa có xác thực cùng xác nhận khóa
(Authenticated Key Agreement witk Key Confirm)

CNTT

Cơng nghệ thông tin

CKS

Chữ ký số

CSDL

Cơ sở dữ liệu

DCMA

Tấn công thông điệp được lựa chọn trực tiếp (Directed Chosen
Message Attack)

DH

Diffie–Hellman


DHKE

Giao thức trao đổi khóa Diffie–Hellman (Diffie–Hellman Key
Exchange)

DLP

Bài tốn logarithm rời rạc (Discrete Logarithm Problem)

DoS

Từ chối dịch vụ (Denial Of Service)

DPG

Nhóm ngang hàng động (Dynamic Peer Group)

DS

Chữ ký số (Digital Signature)

DSA

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

DSS

Chuẩn chữ ký số (Digital Signature Standard)

ECC


Mã hóa trên đường cong elliptic (Elliptic Curve Cryptography)


ECDHKE

Trao đổi khóa Diffie–Hellman trên đường cong elliptic (Elliptic
Curve Diffie–Hellman Key Exchange)

ECDLP

Bài toán logarithm rời rạc trên đường cong elliptic (Elliptic
Curve Discrete Logarithm Problem)

ECDSA

Thuật toán chữ ký số trên đường cong elliptic (Elliptic Curve
Digital Signature Algorithm)

ECM

Phương pháp phân tích thừa số trên đường cong Elliptic (Elliptic
Curve Method)

ECMQV

Giao thức MQV trên đường cong elliptic (Elliptic Curve MQV)

EF


Tồn tại giả mạo (Existential Forgery)

EKC

Xác nhận khóa hiện (Explicit key Confirmation)

EKA

Xác thực khóa hiện (Explicit key Authentication)

���

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

GCMA

Tấn công thông điệp được lựa chọn tổng quát (Generic Chosen
Message Attack)

GDH
���

Giao thức trao đổi khóa nhóm Diffie–Hellman (Group Diffie–
Hellman)
Thủ tục tạo khóa (Generation)

�(�)

Giá trị băm của �


IFP
IKA

Bài tốn phân tích thừa số nguyên tố (Integer Factorization
Problem)
Xác thực khóa ẩn (Implicit Key Authentication)

IKC

Xác nhận khóa ẩn (Implicit Key Confirmation)

���

Khóa phiên theo hướng từ A tới B

���

Khóa phiên theo hướng từ B tới A

KCI

Giả mạo khóa thỏa thuận (Key Compromise Impersonation)

KKS

Độ an tồn khóa đã biết (Known – Key Security)

KMA

Tấn cơng thơng điệp đã biết (Known Message Attack)


KOA

Tấn cơng vào khóa (Key–Only Attacks)


MA

Tấn công vào thông điệp (Message Attacks)

MITM

Tấn công kẻ đứng giữa (Man–In–The–Middle Attack)

NFS

Thuật toán sàng trường số (Number Field Sieve)

P2P

Giao thức ngang hàng (Peer to Peer)

PFS

An toàn đầy đủ về phía trước (Perfect Forward Secrecy)

PGP

Bảo mật rất mạnh (Pretty Good Privacy)


��

Khóa cơng khai (Public Key)

QS

Thuật tốn sàng bậc hai (Quadratic Sieve)

��

Thuật tốn ký và mã hóa (Signcryption)

SF

Giả mạo có lựa chọn (Selective Forgery)

���

Thủ tục ký (Sign)

��

Khóa bí mật (Secret Key)

SSR

Tiết lộ trạng thái phiên (Session-State Reveal)

TB


Phá vỡ hoàn toàn (Total Break)

����

Thời gian sinh số nguyên tố ngẫu nhiên

����

Độ phức tạp thời gian của phép mũ modulo

����

Độ phức tạp thời gian của phép nhân modulo

��

Độ phức tạp thời gian của việc thực hiện hàm băm.

����

Độ phức tạp thời gian của phép tính nghịch đảo modulo.

����

Độ phức tạp thời gian của phép tính đồng dư Trung Hoa.

��

Thuật tốn giải mã và xác thực (Unsigncryption)


UF

Giả mạo tổng quát (Universal Forgery)

UKS

Tấn công không biết khóa chia sẻ (Unknown Key–Share attacks)

���

Thủ tục xác thực (Verify)

��∗

Nhóm nhân hữu hạn


DANH MỤC CÁC HÌNH VẼ
Hình 1.1. Quy trình tạo chữ ký số.........................................................28
Hình 1.2. Quy trình xác thực chữ ký số................................................29
Hình 2.2. Giao thức trao đổi khóa L. Harn........................................... 55
Hình 2.3. Giao thức trao đổi khóa Phan................................................57
Hình 2.4. Giao thức trao đổi khóa của Jie Liu và Jianhua Li................59
Hình 2.5. Giao thức DH–MM–KE........................................................64
Hình 3.1. Giai đoạn ký và mã hóa.........................................................73
Hình 3.2. Giai đoạn giải mã và xác thực...............................................73
Hình 3.3. Giao thức DH–MM–SC........................................................76
Hình 3.4. Giao thức DH–MM–DSC.....................................................84
Hình 4.1. Sơ đồ giao thức IKA.1.......................................................... 90
Hình 4.2. Ví dụ thực hiện IKA.1 cho nhóm 4 thành viên [44].............90

Hình 4.3. Sơ đồ giao thức IKA.2.......................................................... 92
Hình 4.4. Ví dụ thực hiện IKA.2 cho nhóm 4 thành viên [44].............92
Hình 4.5. Sơ đồ giao thức NGDH1.......................................................94


DANH MỤC CÁC BẢNG
Bảng 1.1. Dữ liệu lịch sử của bài tốn phân tích thừa số ngun tố.....27
Bảng 2.1. So sánh độ phức tạp thời gian...............................................52
Bảng 2.2. Độ phức tạp thời gian của giao thức DH–MM–KE..............67
Bảng 3.1. Độ phức tạp thời gian của giao thức DH–MM–SC..............78
Bảng 3.2. Kích thước bản ký mã hóa của giao thức DH–MM–SC......79
Bảng 3.3. Độ phức tạp thời gian của giao thức DH–MM–DSC...........86
Bảng 3.4. Kích thước bản ký mã hóa của giao thức DH–MM–DSC....86
Bảng 4.1. Độ phức tạp của giao thức IKA.1.........................................91
Bảng 4.2. Độ phức tạp của giao thức IKA.2.........................................93
Bảng 4.3. Độ phức tạp của giao thức NGDH1..................................... 97


1

MỞ ĐẦU
1. Tính cấp thiết của đề tài nghiên cứu
Khi nhu cầu trao đổi thông tin dữ liệu ngày càng lớn và đa dạng, các
tiến bộ về điện tử viễn thông và công nghệ thông tin không ngừng được phát
triển để nâng cao chất lượng và lưu lượng truyền tin thì các biện pháp bảo vệ
thơng tin cũng cần được đổi mới để thích nghi. Các biện pháp bảo vệ an tồn
thơng tin có thể được chia thành ba nhóm sau:
- Bảo vệ an tồn thơng tin bằng các biện pháp hành chính;
- Bảo vệ an tồn thơng tin bằng các biện pháp kỹ thuật;
- Bảo vệ an tồn thơng tin bằng các biện pháp thuật toán.

Các biện pháp bảo vệ an tồn thơng tin có thể được ứng dụng riêng rẽ
hoặc phối kết hợp. Biện pháp hiệu quả và kinh tế nhất hiện nay là biện pháp
thuật tốn.
Mơi trường khó bảo vệ an tồn thơng tin nhất và cũng là mơi trường
đối phương dễ xâm nhập nhất đó là mơi trường mạng. Để đảm bảo an tồn
thơng tin dữ liệu trên đường truyền tin và trên mạng máy tính có hiệu quả thì
điều trước tiên là phải lường trước hoặc dự đốn trước các nguy cơ mất an
tồn, nguy cơ bị tấn cơng, các sự cố rủi ro có thể xảy ra đối với thông tin dữ
liệu được lưu trữ và trao đổi trên đường truyền tin cũng như trên mạng. Xác
định càng chính xác các nguy cơ nói trên thì càng quyết định được tốt các giải
pháp để giảm thiểu các thiệt hại. Có hai loại hành vi xâm phạm thơng tin dữ
liệu đó là: tấn cơng chủ động và tấn công bị động. Tấn công bị động chỉ nhằm
mục đích cuối cùng là nắm bắt được thơng tin (đánh cắp thơng tin). Tấn cơng
bị động có khi không lấy được nội dung cụ thể của bản tin nhưng có thể dị ra
được người gửi, người nhận nhờ thông tin điều khiển giao thức chứa trong
phần đầu các gói tin. Kẻ xâm nhập có thể kiểm tra được số lượng, độ dài và
tần số trao đổi. Vì tấn công thụ động không làm sai lệch hoặc hủy hoại nội
dung thông


tin dữ liệu được trao đổi nên thường khó phát hiện nhưng vẫn có những biện
pháp ngăn chặn hiệu quả. Tấn cơng chủ động là dạng tấn cơng có thể làm thay
đổi nội dung, xóa bỏ, làm trễ, sắp xếp lại thứ tự hoặc làm lặp lại gói tin tại
thời điểm tấn cơng hoặc sau đó một thời gian. Tấn cơng chủ động có thể thêm
vào một số thơng tin ngoại lai để làm sai lệch nội dung thông tin trao đổi. Tấn
công chủ động dễ phát hiện nhưng để ngăn chặn hiệu quả thì khó khăn hơn
nhiều. Một thực tế là khơng có một biện pháp bảo vệ an tồn thơng tin dữ liệu
nào là đứng vững hồn tồn trước các hành vi tấn cơng từ bên ngồi. Một hệ
thống dù được bảo vệ chắc chắn đến đâu cũng khơng thể đảm bảo là an tồn
tuyệt đối.

Mật mã học là ngành khoa học ứng dụng toán học vào việc biến đổi
thơng tin thành một dạng khác với mục đích che dấu nội dung, ý nghĩa thơng
tin cần mã hóa. Đây là một ngành quan trọng và có nhiều ứng dụng trong đời
sống xã hội. Ngày nay, các ứng dụng mã hóa và bảo mật thơng tin đang được
sử dụng ngày càng phổ biến hơn trong nhiều lĩnh vực khác nhau trên thế giới,
từ các lĩnh vực an ninh, quân sự, quốc phòng,… cho đến các lĩnh vực dân sự
như thương mại điện tử, ngân hàng,…
Cùng với sự phát triển của khoa học máy tính và Internet, các nghiên
cứu và ứng dụng của khoa học mật mã ngày càng trở nên đa dạng hơn, mở ra
nhiều hướng nghiên cứu chuyên sâu vào từng lĩnh vực ứng dụng đặc thù với
những đặc trưng riêng. Ứng dụng của khoa học mật mã khơng chỉ đơn thuần
là mã hóa và giải mã thơng tin mà còn bao gồm nhiều vấn đề khác nhau cần
được nghiên cứu và giải quyết: Chứng thực nguồn gốc nội dung thông tin (kỹ
thuật chữ ký điện tử), chứng nhận tính xác thực về người sở hữu mã khóa
(chứng nhận khóa cơng cộng), các quy trình giúp trao đổi thơng tin và thực
hiện giao dịch điện tử an tồn trên mạng,... Những kết quả nghiên cứu về mật
mã cũng đã được đưa vào trong các hệ thống phức tạp hơn, kết hợp với những
kỹ thuật khác để đáp ứng yêu cầu đa dạng của các hệ thống ứng dụng khác
nhau trong


thực tế, ví dụ như hệ thống bỏ phiếu bầu cử qua mạng, hệ thống đào tạo từ xa,
hệ thống quản lý an ninh của các đơn vị với hướng tiếp cận sinh trắc học, hệ
thống cung cấp dịch vụ multimedia trên mạng với yêu cầu cung cấp dịch vụ
và bảo vệ bản quyền sở hữu trí tuệ đối với thông tin số,...
Mật mã hay các giải pháp bảo mật được sử dụng để bảo vệ tính bí mật
của thơng tin khi chúng được truyền trên các kênh truyền thông công cộng.
Giả sử nếu một người A muốn gửi cho người B một văn bản P, để bảo mật A
lập cho P một bản mật mã C bằng một phương pháp tốn học nào đó, và thay
vì gửi cho B văn bản P, A gửi cho B văn bản C. B nhận được C thực hiện giải

mã để thu được P. Để A biến P thành C và B biến C thành P, A và B phải
thống nhất sử dụng chung một hệ mật nào đó có thể là hệ mật khóa bí mật
hoặc hệ mật khóa cơng khai.
Trong hệ mật khóa bí mật, bước mã hóa và giải mã đều sử dụng chung
một khóa bí mật �, và với các giá trị của � khác nhau ta thu được các bản mã
khác nhau. Tính an tồn của hệ mật phụ thuộc vào hai yếu tố là thuật toán
phải đủ mạnh để không thể giải mã được văn bản nếu đơn thuần chỉ dựa vào
bản mã, và tính an tồn của khóa (chứ khơng phải là an tồn thuật tốn), tức là
nếu biết bản mã và thuật tốn mã hóa nhưng khơng biết khóa vẫn khơng thể
tìm được bản rõ. Nói cách khác, ta khơng cần giữ bí mật thuật tốn mà chỉ cần
giữ bí mật khóa. Việc giữ bí mật khóa trở thành điểm mấu chốt của hệ mật
loại này, nếu vì lý do nào đó mà khóa bị lộ thì tất cả những văn bản hai bên
trao đổi với nhau cũng sẽ bị lộ.
Để sử dụng hệ mật khóa bí mật u cầu hai bên trước khi truyền tin
phải có chung một giá trị khóa, giá trị này cần phải giữ bí mật và điều này
khơng thuận tiện trong môi trường truyền thông công cộng như hiện nay. Vì
thế người ta đã đưa ra cách mã hóa khác, cho phép các bên trong hệ thống có
thể truyền tin cho nhau bằng cách công bố công khai thông tin cần cho việc
lập mã, khiến


cho người gửi và người nhận không cần quy ước trước với nhau và cũng
khơng có những bí mật chung. Bên nhận được bản mã sử dụng khóa bí mật
của mình giải mã để thu được văn bản gốc. Mã hóa được thực hiện rất dễ
dàng, bất kỳ người nào cũng có thể làm được, cịn việc giải mã rất khó khăn
nếu như khơng có khóa riêng, cịn nếu có nó thì việc giải mã cũng dễ như việc
mã hóa. Việc giữ bí mật khóa trong hệ mật khóa cơng khai khơng cịn là vấn
đề lớn nữa, vì mỡi người có một khóa riêng chỉ có chính người đó biết mà
thôi nên khả năng làm lộ gần như là không có. Vì vậy đối với những hệ mật
loại này tính an tồn của chúng nằm trong khả năng khơng bị lộ của chìa khóa

bí mật từ những thơng tin cơng khai tất cả mọi người đều có, mà điều này thì
lại phụ thuộc vào độ khó của bài tốn nào đó ví như: việc tính tích hai số
ngun tố lớn � = � × �. Dễ dàng nhân hai số nguyên tố lớn �, � để thu
được tích � của chúng, nhưng bài tốn sẽ là khó nếu cho giá trị tích � và yêu
cầu xác định các thừa số nguyên tố
�, � của nó.
Đối với cả hệ mật khóa bí mật và hệ mật khóa cơng khai đều cần trao
đổi khóa, nhưng bài tốn trao đổi khóa cho hệ mật khóa bí mật phức tạp hơn.
Vấn đề bảo vệ an tồn khóa là đặc biệt quan trọng. Trong đó khâu quan
trọng nhất nhưng cũng là khâu kém an toàn nhất chính là trao đổi khóa. Với
tất cả các kỹ thuật mật mã hiện đại vấn đề trao đổi khóa ln được đặt ra để
có thể đảm bảo việc ứng dụng được các thuật tốn mật mã.
Do đó việc xây dựng giao thức trao đổi khóa an tồn có tính cấp thiết
trong điều kiện hiện nay.
2. Mục đích nghiên cứu
Nghiên cứu tổng quan các cơ sở lý thuyết về các giao thức trao đổi
khóa, về chữ ký số và cơ sơ tốn học của các bài tốn khó giải để xây dựng
lược đồ chữ ký số dựa trên hai bài tốn khó nhằm phát triển các giao thức trao
đổi khóa an tồn có xác thực sử dụng lược đồ chữ ký số dựa trên hai bài tốn
khó giải.


Đồng thời nghiên cứu các vấn đề liên quan đến trao đổi khóa nhóm, đề xuất
giao thức trao đổi khóa nhóm mới.
3. Đối tượng nghiên cứu
Đối tượng nghiên cứu là bài tốn trao đổi khóa, giao thức trao đổi khóa
an tồn, giao thức trao đổi khóa nhóm. Các khái niệm cơ sở toán học, các
lược đồ chữ ký số RSA, Rabin, Schnorr,... Các giao thức ký và mã hóa đồng
thời, các mơ hình mã hóa chối từ.
4. Phương pháp nghiên cứu

- Nghiên cứu lý thuyết: Phân tích, tổng hợp các kết quả nghiên cứu liên
quan đến các giao thức trao đổi khóa, sử dụng các lý thuyết về đại số trừu
tượng, bài toán logarithm rời rạc, các phương pháp thiết kế, phát triển giao
thức thiết lập khóa an tồn dựa trên giao thức trao đổi khóa Diffie–Hellman,
từ đó đề xuất một số giao thức trao đổi khóa an tồn mới có tính ứng dụng
cao. Chứng minh tính đúng đắn, sử dụng lý thuyết về độ phức tạp thuật toán,
đánh giá độ an toàn và thời gian hoàn thành giao thức trao đổi khóa (theo lý
thuyết) của các giao thức đề xuất.
- Thực nghiệm: xây dựng các module thử nghiệm kiểm tra tính đúng
đắn của các giao thức đã đề xuất.
5. Bố cục của luận án
Ngoài phần mở đầu giới thiệu về tính cấp thiết, mục đích, phương
pháp, đối tượng, phạm vi nghiên cứu của luận án, các đóng góp mới, ý nghĩa
khoa học và thực tiễn của luận án và phần kết luận, luận án được chia thành 4
chương, bố cục như sau:
Chương 1. TỔNG QUAN VỀ VẤN ĐỀ NGHIÊN CỨU
Trình bày tổng quan bài tốn trao đổi khóa, một số khái niệm, phương
pháp đánh giá, tiêu chuẩn an toàn của một giao thức trao đổi khóa. Giới thiệu
chi tiết giao thức trao đổi khóa Diffie–Hellman; phân tích giao thức trao đổi


khóa an tồn, ưu nhược điểm của một số giao thức trao đổi khóa an tồn đã
cơng bố. Trình bày các khái niệm về trao đổi khóa nhóm, các đặc điểm và yêu
cầu đối với một giao thức trao đổi khóa nhóm. Trình bày các vấn đề cơ sở
tốn học của các bài tốn khó giải, tổng quan về lược đồ chữ ký số và điểm lại
những vấn đề xung quanh các lược đồ chữ ký số RSA, DSA, Rabin, Schnorr.
Đồng thời cũng đã trình bày các thảo luận liên quan đến bảo mật, sự thực thi,
các phương pháp tấn cơng,...
Chương 2. PHÁT TRIỂN GIAO THỨC TRAO ĐỔI KHĨA CĨ XÁC
THỰC DỰA TRÊN HAI BÀI TỐN KHĨ

Tập trung nghiên cứu và phân tích ưu nhược điểm của các lược đồ chữ
ký số dựa trên hai bài tốn khó đã được cơng bố, từ đó làm cơ sở đề xuất lược
đồ chữ ký số mới dựa trên hai bài tốn khó, giải quyết các vấn đề cịn tồn
tại. Phân tích khả năng bảo mật và hiệu quả của lược đồ mới đề xuất. Trên cơ
sở đó phát triển giao thức trao đổi khóa an tồn có xác thực tích hợp chữ ký
số dựa trên hai bài tốn khó. Phân tích đánh giá tính bảo mật và hiệu năng
của thuật tốn.
Chương 3. PHÁT TRIỂN GIAO THỨC KÝ VÀ MÃ HÓA ĐỒNG
THỜI DỰA TRÊN HAI BÀI TỐN KHĨ
Phân tích mơ hình ký rồi mã hóa truyền thống, chỉ ra ưu điểm của mơ
hình ký và mã hóa đồng thời so với mơ hình truyền thống. Phân tích một số
giao thức ký và mã hóa đồng thời đã cơng bố, các hạn chế cịn tồn tại của các
giao thức này. Dựa trên cơ sở lược đồ chữ ký số mới ở chương 2, đề xuất giao
thức ký và mã hóa đồng thời dựa trên hai bài tốn khó (DH–MM–SC) và
giao thức ký và mã hóa đồng thời có thể chối từ dựa trên hai bài tốn khó
(DH–MM–DSC) nhằm nâng cao tính bảo mật và cung cấp khả năng chống
tấn công cưỡng bức chủ động. Đây là giao thức ký và mã hóa đồng thời đầu
tiên có khả năng chối từ.


Chương 4. PHÁT TRIỂN GIAO THỨC TRAO ĐỔI KHÓA NHÓM
Nghiên cứu các vấn đề liên quan đến trao đổi khóa nhóm thơng qua
phân tích giao thức GDH ngun thủy và một số phát triển của giao thức này
để từ đó đề xuất xây dựng giao thức cải tiến trong trường hợp trao đổi khóa
nhóm nhằm tránh lộ khóa cặp, dễ dàng thay đổi khóa và giảm khối lượng tính
tốn.
6. Ý nghĩa khoa học và thực tiễn của luận án
Việc cải tiến và phát triển các giao thức trao đổi khóa an tồn ln là
u cầu đặt ra của bất kỳ tổ chức hay quốc gia nào. Hiện nay, các giao thức
trao đổi khóa an tồn tích hợp chữ ký số đều dựa vào một bài tốn khó giải

như: Bài tốn logarithm rời rạc, bài tốn phân tích thừa số ngun tố, bài toán
khai căn bậc 2 ��� � hoặc bài toán logarithm rời rạc trên đường cong
Elliptic. Một giả thiết đặt ra là trong tương lai, khi các bài toán khó giải lần
lượt được giải quyết thì các giao thức trao đổi khóa hiện tại sẽ trở thành
khơng an tồn. Do đó, cần phát triển các giao thức mới dựa trên kết hợp các
bài tốn khó giải để tăng tính an tồn cho giao thức trao đổi khóa.
Đóng góp của luận án chính là việc xây dựng các giao thức trao đổi
khóa an tồn tích hợp chữ ký số dựa trên kết hợp các bài tốn khó giải để tăng
tính an tồn cho giao thức trao đổi khóa đó. Đồng thời, luận án cũng xem xét
đề xuất giao thức trao đổi khóa theo nhóm nhằm tránh lộ khóa cặp, dễ dàng
thay đổi khóa và giảm số lượng tính tốn.


Chương I: TỔNG QUAN VỀ VẤN ĐỀ NGHIÊN CỨU
Nội dung chính của chương này: Giới thiệu tổng quan về bài tốn trao
đổi khóa, với cơ sở là giao thức trao đổi khóa Diffie–Hellman; trình bày một
số khái niệm, vai trị của trao đổi khóa; trình bày các tiêu chuẩn an tồn của
giao thức trao đổi khóa. Ngồi ra nội dung của chương cũng đề cập tới: Các
giao thức trao đổi khóa an tồn, phân tích xu hướng nghiên cứu, phát triển của
các giao thức trao đổi khóa có xác thực, trình bày ưu nhược điểm của một số
giao thức trao đổi khóa kết hợp với lược đồ chữ ký số đã cơng bố có liên
quan; trình bày bài tốn trao đổi khóa nhóm và các phân đoạn thỏa thuận khóa
nhóm. Chương này cũng trình bày cơ sở tốn học của của các lược đồ chữ ký
số là bài toán logarithm rời rạc (DLP) và bài tốn phân tích thừa số ngun tố
(IFP); phân tích độ an tồn và các hình thức tấn cơng đối với hai bài tốn này;
định nghĩa chữ ký số, các yêu cầu an toàn đối với một lược đồ chữ ký số và
trình bày một số phát triển của lược đồ chữ ký số.
1.1. Tổng quan về bài tốn trao đổi khóa
Giao thức trao đổi khóa đầu tiên được đưa ra bởi W. Diffie và M.
Hellman vào năm 1976 [67], nó được gọi là giao thức Diffie–Hellman nguyên

thủy. Giao thức được thực hiện như sau:
Hai đối tượng Alice (A) và Bob (B) thỏa thuận lựa chọn một nhóm hữu
hạn �∗ và một phần tử � ∈ � ∗ , với � là phần tử sinh ra một nhóm có bậc
lớn,




� là một số nguyên tố lớn. Các giá trị � và � có thể được sinh ra nhờ các thuật
tốn mơ tả trong [69], [70].
Các tham số đầu vào chung: (�, �), với � là một số nguyên tố lớn, � là

một phần tử sinh của nhóm nhân ��
.




Đầu ra: Một giá trị (phần tử) thuộc ��
được chia sẻ giữa A và B.

Các bước thực hiện:




- A phát sinh một giá trị ngẫu nhiên �� (1 ≤ �� ≤ � − 1),
tính
�� = ��� ��� � và gửi giá trị này cho B;
- B phát sinh một giá trị ngẫu nhiên �� (1 ≤ �� ≤ � − 1),

tính
�� = ��� ��� � và gửi giá trị này cho A;
- A tính giá trị ��� = (��)�� = (���)�� ��� �
- B tính giá trị ��� = (��)�� = (���)�� ��� �
Dễ dàng thấy rằng cả A và B đã nhận được một giá trị khóa bí mật chung
chia sẻ, nó có thể được sử dụng trên các hệ mật khóa bí mật.
Một số khuyến nghị khi thực hiện và sử dụng giao thức DH:
- Lựa chọn số nguyên tố � đủ lớn (|�| ≥ 1024 ���).
- Lựa chọn � là phần tử sinh của nhóm ��∗ .


- A và B sẽ xóa các giá trị �� và �� khi kết thúc hoạt động của giao thức.
Khi thực hiện điều này chúng sẽ có đặc tính bảo mật về phía trước.
Sau khi W. Diffie và M. Hellman đề xuất sử dụng các hệ mật khóa cơng
khai để trao đổi khóa, các giao thức trao đổi khóa khác đã được phát triển
tương tự, trong đó có thể kể đến giao thức PGP (Pretty Good Privacy
Encryption) được tạo ra bởi Philip Zimmermann vào năm 1991 [79]. Trong
giao thức này, khóa được mã hóa bằng cách sử dụng một hệ mật khóa cơng
khai (sử dụng khóa cơng khai của bên nhận). Vì vậy, chỉ có bên nhận có thể
giải mã được khóa đã được mã. Nhưng bằng cách sử dụng một giao thức như
vậy địi hỏi khơng chỉ q trình mã hóa – giải mã khác mà cịn thêm chứng
thực của khóa cơng khai.
Khi các hệ mật mới hơn được phát triển, giao thức DHKE thay đổi dựa
trên các bài tốn khác nhau. Đó là DHKE dựa trên đường cong elliptic
(Elliptic Curve Diffie–Hellman Key Exchange – ECDHKE), các giao thức
MQV (Menezes–Qu–Vanstone Protocols), giao thức ECMQV (Elliptic Curve
MQV), HMQV (Hashed MQV), FHMQV (Fully Hashed MQV),…


Một số phát triển dựa trên giao thức MQV:

Năm 1995, nhóm tác giả A. J. Menezes, Minghua Qu và S. A. Vanstone
(MQV) [1] đã trình bày phương thức tấn cơng đối với một số giao thức trao
đổi khóa đã phát triển trước đó như: giao thức một lần truyền của Nyberg–
Rueppel; giao thức hai lần truyền của Goss và Yacobi. Các giao thức này đều
khơng cung cấp tính chất an tồn là xác thực khóa ẩn. MQV cũng đề xuất giao
thức của nhóm và chứng minh được giao thức đề xuất cung cấp tính chất an
tồn là xác thực khóa ẩn. Giao thức này được trình bày và chứng minh chi tiết
trong tài liệu [1]. Giao thức MQV được coi là giao thức trao đổi khóa chuẩn
và được tích hợp trong các khóa cơng khai tiêu chuẩn IEEE P1363 [68].
Năm 2005, khi nghiên cứu tính an tồn của giao thức MQV trên mơ
hình trao đổi khóa Canetti–Krawczyk, Hugo Krawczyk đã chứng minh rằng
giao thức MQV khơng an tồn với tấn cơng khóa biết. Để khắc phục nhược
điểm trên Krawczyk đã đề xuất giao thức HMQV là phát triển của giao thức
MQV [23]. Với việc sử dụng hàm băm (hash function), Krawczyk đã chứng
minh giao thức HMQV có độ phức tạp tính tốn tương đương với giao thức
MQV nhưng có độ an tồn cao hơn (khả năng chống lại tấn cơng khóa biết).
Một biến thể mới của giao thức HMQV được P. S. Augustin và cộng sự giới
thiệu năm 2009 là FHMQV (Fully Hashed MQV) và FHMQV–C (C viết tắt
cho Key Confirmation) được thể hiện chi tiết trong [50].
Một hướng phát triển khác của giao thức MQV được Tseng đề xuất vào
năm 2002 [74] là không sử dụng hàm băm, thay vào đó sử dụng �2 khóa
phiên trong một phiên để chống lại tấn cơng khóa biết. Năm 2013, Hwang và
cộng sự phát triển giao thức hiệu quả tạo lập �2 + � khóa trong một phiên
[31]. Năm 2014, nhóm nghiên cứu của Li-Chin Hwang, Đại học TaiChung,
tiếp tục mở rộng giao thức của Tseng [73] bằng cách sinh �2 + 1 khóa phiên
và tất cả các khóa phiên đều được sử dụng để chống lại tấn cơng khóa biết
[29].


1.1.1. Khái niệm giao thức trao đổi khóa

Trao đổi khóa (key exchange): Là các phương pháp trao đổi khóa giữa
các thực thể tham gia mã hóa.
Giao thức: Là một thuật tốn có sự tham gia của nhiều bên, được xác
định chính xác bởi một ch̃i các bước hoạt động của các bên tham gia nhằm
đạt được mục tiêu xác định.
Giao thức trao đổi khóa (key exchange protocol): Là q trình thực
hiện mà nhờ đó các bên cùng nhau thiết lập khóa bí mật dùng chung trong q
trình truyền thơng trên một kênh cơng cộng.
Xác lập khóa (Key Establishment): Là tiến trình trong đó hai (hoặc
nhiều) đối tượng xác lập một khóa bí mật được chia sẻ. Trong thực tế có hai
kiểu giao thức xác lập khóa: 1) Các giao thức chuyển khóa (Key Transport
Protocols), trong đó một khóa được phát sinh bởi một đối tượng và truyền bí
mật đến đối tượng thứ hai; 2) Các giao thức thỏa thuận khóa (Key Agreement
Protocols), trong đó cả hai đối tượng trao đổi các thơng tin để xác lập một
khóa bí mật được chia sẻ.
Ngồi nhiệm vụ thiết lập một giá trị khóa chung cho hai bên, đơi khi
các bên cịn địi hỏi giao thức cung cấp tính xác thực, các khả năng xác thực
mà giao thức có thể là:
- Xác thực khóa (key authentication): Là khả năng giao thức cho phép
một bên được bảo đảm rằng ngoại trừ đúng bên đúng với thơng tin danh tính
đã xác định trước thì khơng một ai khác có thể tính được giá trị bí mật. Điều
này có nghĩa là nếu A (B) muốn thiết lập, hoặc chuyển cho B (A) khóa bí mật
bằng cách sử dụng một giao thức có khả năng xác thực khóa thì sau khi kết
thúc giao thức A chắc chắn rằng chỉ có B mới có thể thu được giá trị đó. Xác
thực khóa đơi khi cịn được gọi là xác thực khóa ẩn (implicit key
authentication);


- Xác nhận khóa (key confirmation): Là khả năng giao thức cho phép
một bên chắc chắn rằng bên kia đã có giá trị bí mật. Nghĩa là sau khi kết thúc

giao thức A chắc chắn rằng B đã thu được giá trị bí mật �;
- Xác thực khóa hiện (explicit key authentication): Giao thức có khả
năng xác thực khóa và xác nhận khóa được gọi là giao thức xác thực khóa
hiện;
- Xác thực thực thể (entity authentication): Là q trình cho phép một
bên được đảm bảo về danh tính của bên kia, và thực sự bên kia đã tham gia
vào hoạt động của giao thức.
Các giao thức có thể chỉ cung cấp xác thực thực thể một chiều (tức là
chỉ cho phép xác thực theo một chiều hoặc là A về B, hoặc là B về A).
Các giao thức có thể bị tấn cơng dưới dạng các hình thức sau:
- Tấn cơng thụ động (cịn gọi là tấn cơng bị động – passive attack):
Quan sát, nghe trộm quá trình thực hiện giao thức nhưng không làm ảnh
hưởng tới giao thức và không thay đổi được thông tin giao dịch;
- Tấn cơng chủ động (active attack): Tìm cách thay đổi giao thức (theo
hướng có lợi cho mình), thay đổi thơng tin, xóa thơng tin thực, tạo thơng tin
giả, tham gia vào giao dịch.
1.1.2. Các tính chất an tồn của giao thức trao đổi khóa
Phần này mơ tả một số tính chất cần có của một giao thức trao đổi khóa
([2], [3], [5], [9], [68]).
Tính chất 1.1. Độ an tồn khóa đã biết (Known–Key Security – KKS).
Mỡi một phiên trao đổi khóa giữa hai thực thể A và B, khóa phiên được
tạo ra phải là một khóa bí mật duy nhất chỉ được biết bởi A và B, ngay cả khi
người tấn cơng đã có nghiên cứu (kiến thức) về một vài khóa phiên khác.


Tính chất 1.2. Tính an tồn đầy đủ về phía trước (Perfect Forward
Secrecy – PFS).
Tính an tồn khơng đầy đủ về phía trước (Half Forward Secrecy): Nếu
khóa bí mật dài hạn của một bên tham gia thỏa thuận khóa bị lộ thì các khóa
phiên được tạo ra trước đó cũng khơng bị ảnh hưởng.

Tính an tồn đầy đủ về phía trước (Perfect Forward Secrecy hoặc Full
Forward Secrecy): Nếu khóa bí mật dài hạn của cả hai bên tham gia thỏa
thuận khóa bị lộ thì các khóa phiên được tạo ra trước đó vẫn khơng bị ảnh
hưởng.
Tính chất 1.3. Tính chất khóa độc lập.
Một giao thức trao đổi khóa được gọi là thỏa mãn tính chất khóa độc
lập nếu một khóa phiên bị lộ thì người tấn cơng cũng khơng thể tính được các
khóa phiên khác.
Tính chất 1.4. Khả năng có thể chối từ hợp lý (Plausible deniablity).
Đây là tính năng cho phép một thực thể có thể chối từ “hợp lý” sự tồn
tại của một kết nối với một đối tác truyền thơng. Tính chất này là cần thiết ở
tầng IP bởi vì nó cho phép nhiều dịch vụ bí mật có thể hoạt động được, giống
như kiểu nặc danh (Anonymity). Tính chất nặc danh có thể có ích trong
trường hợp người khởi tạo hoặc người phúc đáp là một đầu cuối hoạt động
bên trong một tường lửa (Firewall). Đặc điểm này có được nếu như chúng ta
khơng ký lên định danh của mình hoặc nếu gửi các chứng chỉ số trong một
thơng báo đã được mã hóa. Chối từ hợp lý là một đặc điểm được đưa ra trong
quá trình xây dựng giao thức SIGMA của Krawczyk [24]. Giao thức STS
(Station–to–Station) [8] gửi các thông báo kèm chứng chỉ để ở dạng rõ nên
khơng có tính chất này.
Tính chất 1.5. Khả năng bảo vệ định danh (Identity protection).
Giao thức trao đổi khóa yêu cầu phải thiết kế để có tính chất xác thực
hai chiều đủ tin cậy. Để thực hiện được điều này, định danh của các thực thể
tham gia trao đổi khóa phải được truyền trên mạng. Một vài ứng dụng cần
chống lại


×