NGHIÊN CỨU MẬT MÃ HÓA ĐƯỜNG CONG ELLIPTIC VÀ KHẢ NĂNG ỨNG DỤNG TRONG THÔNG TIN DI ĐỘNG Mục tiêu luận văn: tìm hiểu mã hóa đường cong Elliptic, phân tích và đưa ra giải pháp ứng dụng trong thông tin di động Đối tượng nghiên cứu: mạng thông tin di động 2G và 3G Phạm vi nghiên cứu: bảo mật trong thông tin di động
Trang 1-
HOÀNG THẠCH GIANG
NGHIÊN CỨU MẬT MÃ HÓA ĐƯỜNG CONG ELLIPTIC
VÀ KHẢ NĂNG ỨNG DỤNG TRONG THÔNG TIN DI
Trang 2Luận văn được hoàn thành tại:
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
Người hướng dẫn khoa học: PGS.TS TRẦN HỒNG QUÂN
Phản biện 1:………
Phản biện 2:………
Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc sĩ tại Học viện Công nghệ Bưu chính Viễn thông
Vào lúc: giờ ngày tháng năm
Có thể tìm hiểu luận văn tại:
- Thư viện của Học viện Công nghệ Bưu chính Viễn thông
Trang 3LỜI MỞ ĐẦU
Từ xa xưa đến nay, vấn đề bảo đảm an toàn cho tài sản luôn là một vấn đề quan trọng trong đời sống Tài sản có thể là bất cứ thứ gì có giá trị, từ cụ thể như đồ vật, tiền bạc … cho đến trừu tượng như thông tin Ngày nay, con người không chỉ trao đổi thông tin qua qua trò chuyện trực tiếp, thư giấy mà còn qua các hệ thống truyền thông Do đó vấn đề bảo đảm an toàn cho hệ thống truyền thông cũng như thông tin được truyền trên các hệ thống đó là một yêu cầu rất quan trọng
Mạng điện thoại di động là mạng lưới truyền thông không dây lớn nhất hiện nay với 6,8 tỉ thuê bao [11, tr1] Bên cạnh sự gia tăng không ngừng về quy
mô, dịch vụ, mạng di động cũng đang phải đối mặt với những thách thức bảo mật ngày một lớn hơn Kết nối mở qua đường vô tuyến, người dùng đầu cuối không cố định vị trí, có thể kết nối đến các mạng ngoài như Internet …
là những nhân tố khiến người dùng/mạng lưới có thể bị mất an toàn
Các mạng di động thế hệ sau đã chú trọng và có những cải tiến về mặt bảo mật tuy nhiên khả năng bị tấn công vẫn luôn hiện hữu Qua thời gian, đã có một số thuật toán mã hóa và cơ chế bảo mật bị chinh phục Cùng với đó, sự xuất hiện của các dịch vụ mới trên nền di động, đặc biệt là các dịch vụ thương mại điện tử dẫn tới yêu cầu tìm kiếm những phương pháp bảo mật mới có độ an toàn cao hơn Do vậy, nghiên cứu ứng dụng của các loại mật
mã hóa mới như mã hóa đường cong Elliptic là một nhu cầu cần thiết Trong luận văn, học viên sẽ trình bày về phương pháp mã hóa này với:
- Mục tiêu luận văn: tìm hiểu mã hóa đường cong Elliptic, phân tích
và đưa ra giải pháp ứng dụng trong thông tin di động
- Đối tượng nghiên cứu: mạng thông tin di động 2G và 3G
- Phạm vi nghiên cứu: bảo mật trong thông tin di động
Trang 4- Phương pháp nghiên cứu: phân tích, so sánh và đưa ra giải pháp ứng dụng
Để thực hiện những mục tiêu trên, luận văn được tổ chức thành 3 chương với nội dung như sau:
Chương 1: Tổng quan về mã hóa Chương này sẽ giới thiệu tổng quan về bảo mật, cách thức thực hiện và những điểm yếu - điểm mạnh của các phương pháp bảo mật trong thông tin di động 2G/3G Từ đó thấy được vai trò của mã hóa trong bảo mật Tiếp theo đó, học viên sẽ giới thiệu về các loại mã hóa thông dụng hiện nay, so sánh mã hóa quy ước, RSA và ECC Chương 2: Mã hóa đường cong Elliptic Chương 2 của luận văn sẽ trình bày chi tiết về lý thuyết đường cong Elliptic, cách thức mã hóa, giải mã sử dụng ECC và mô hình trao đổi khóa đã được ECDH
Chương 3: Ứng dụng mã hóa đường cong Elliptic trong thông tin di động Chương 3 trình bày về hạ tầng khóa công khai và một mô hình ứng dụng ECC trong hạ tầng khóa công khai di động m-PKI
Kết luận: phần cuối của luận văn nêu lên những kết quả đã đạt được, những tồn tại và cách khắc phục và hướng nghiên cứu và phát triển sau này
Học viên xin trân trọng cảm ơn thầy giáo PGS.TS Trần Hồng Quân đã tận tình hướng dẫn, chỉ bảo và cung cấp cho em những tài liệu cần thiết phục
vụ việc hoàn thiện luận văn này
Trang 5CHƯƠNG 1: TỔNG QUAN VỀ BẢO MẬT
1.1 Tổng quan
1.1.1 Khái niệm bảo mật
Bảo mật trong hệ thống thông tin được hiểu các biện pháp nhằm giảm thiểu đến mức tối đa khả năng bị xâm hại thông tin/tài nguyên Trong đó "khả năng bị xâm hại" là bất kỳ điểm yếu nào có thể bị lợi dụng để tấn công hệ thống hoặc thông tin trong hệ thống đó
1.1.2 Các hình thức tấn công
Để hiểu rõ hơn về cơ chế bảo mật, trước tiên ta cần quan tâm tới các kiểu tấn công Có nhiều cách để phân chia, tuy nhiên dựa theo hình thức thực hiện tấn công, có thể chia thành hai nhóm lớn: tấn công Chủ động và tấn công Bị động
1.1.3 Các dịch vụ bảo mật
Dựa vào các hình thức tấn công, chuẩn kiến trúc bảo mật cho mô hình OSI X.800 đưa ra 5 dịch vụ bảo mật [19, tr20] Đó là các dịch vụ :
Trang 6GSM cung cấp dịch vụ xác thực người dùng và mã hóa lưu lượng Các dịch
vụ này được cung cấp nhằm đáp ứng các yêu cầu bảo mật của hệ thống GSM
a Yêu cầu bảo mật
Một thuê bao mạng GSM đòi hỏi cần phải được bảo vệ trong các trường hợp sau: thiết lập cuộc gọi, bảo vệ các dịch vụ trên nền thoại, bảo vệ tính riêng
tư về vị trí thuê bao, tính riêng tư của mẫu cuộc gọi, tính riêng tư của danh tính người dùng, và bảo vệ dữ liệu
b Mô hình bảo mật GSM
Mô hình bảo mật của GSM được mô tả như hình dưới đây:
Hình 1.7: Mô hình bảo mật GSM
Trang 7Ẩn danh: cơ chế ẩn danh được GSM cung cấp bằng cách sử dụng định danh
tạm thời Việc sử dụng ẩn danh nhằm tránh tiết lộ định danh thực của thuê bao trên đường truyền
Nhận thực: Lưu đồ nhận thực trong GSM được mô tả như hình sau:
Hình 1.8: Lưu đồ nhận thực GSM Bảo mật dữ liệu
Trong hình 1.9 ta có thể thấy khác với A3 tạo ra SRES, A8 dựa vào Ki và RAND sẽ tạo ra khóa phiên Kc (64 bit)
Hình 1.9: Thuật toán A8
Hệ thống mạng GSM đã ra đời từ nhiều thập kỷ và cho đến nay đã có nhiều điểm yếu bảo mật được khám phá [15, tr.179] Có thể kể đến các điểm yếu như:
Trang 8- Chỉ cung cấp cơ chế mạng nhận thực thuê bao mà không có cơ chế cho phép thuê bao nhận thực mạng
- Thuật toán COMP128 có những điểm yếu nghiêm trọng cho phép với một số giá trị RAND nhất định có thể cung cấp đủ thông tin để xác định được Ki, ít hơn rất nhiều so với hình thức tấn công vét cạn (2128
1.2.2 Mô hình bảo mật trong UMTS
Mô hình bảo mật trong mạng UMTS được xây dựng nhằm giảm thiểu những điểm yếu đã được khám phá trong GSM và bổ sung thêm các tính năng mới UMTS đã sử dụng kiến trúc bảo mật mới được mô tả như sau [15, tr.213]:
Hình 1.11: Mô hình bảo mật UMTS
Trang 9Kiến trúc này được phân chia thành 5 lớp, trong đó:
- Bảo mật truy cập mạng (Network access security - Lớp 1)
- Bảo mật miền mạng (Network domain security - Lớp 2)
- Bảo mật mức người dùng (User domain security - Lớp 3)
- Bảo mật mức ứng dụng (Application domain security - Lớp 4)
- Cấu hình bảo mật (Configurability of security - Lớp 5
Trong phạm vi luận văn, học viên sẽ chú trọng vào mức vô tuyến và chỉ đề cập đến lớp 1
Cho đến nay, chưa có công bố nào cho thấy có thể phá mã bảo mật của UMTS trên đường truyền vô tuyến một các trực tiếp Các hình thức tấn công hiệu quả nhất đối với 3G hiện dừng lại ở mức dò tìm IMSI (IMSI catcher)
và phá sóng (jamming) tần số 3G, ép thuê bao xuống 2G
1.2.3 Vai trò của mã hóa
Từ những phân tích trên đây có thể thấy để thực hiện bảo mật cho bất kỳ một hệ thống thông tin nào luôn cần vận dụng các thuật toán mã hóa một cách thích hợp Mã hóa là yếu tố tiên quyết đảm bảo cho thông tin không bị khai thác trái phép
Trang 10Mã hóa đối xứng là loại mã hóa mà quá trình mã hóa và giải mã một thông
điệp sử dụng cùng một mã khóa gọi là khóa bí mật (secret key) hay khóa đối
xứng (symmetric key)
a Mã hóa dịch chuyển
b Mã hóa thay thế
c Mã hóa bằng phép nhân
d Phương pháp DES (Data Encryption Standard)
e Mã hóa AES (Advanced Encryption Standard)
1.3.3 Mã hóa bất đối xứng
Trong mã hóa quy ước, có một vấn đề phát sinh là việc quy định chung mã
khóa k giữa người gửi và người nhận Khóa này cần được thay đổi để đảm
bảo bí mật và mỗi khi thay đổi, nó phải được trao đổi giữa hai bên
Mã hóa bất đối xứng (mã hóa công khai) vận dụng một ý tưởng khác so với
mã hóa quy ước Trong đó, nó sử dụng hai loại khóa khác nhau trong cùng một cặp khóa: khóa công khai (public key) được công bố rộng rãi trên kênh truyền, khóa riêng (private key) chỉ do một người nắm giữ Loại mã hóa này
khai thác những ánh xạ f mà việc thực hiện ánh xạ ngược rất khó Chỉ khi biết được mã khóa riêng thì mới có thể thực hiện được ánh xạ ngược f –1 Hiện nay có hai phương pháp mã hóa công khai phổ biến được sử dụng là RSA và ECC
RSA được công bố năm 1978 bởi ba nhà khoa học R.L.Rivest, A.Shamir và L.Adleman (RSA là 3 chữ cái đầu tiên của tên các tác giả) Trong phương
pháp này, tất cả các phép tính đều được thực hiện trên Z n với n là tích của hai số nguyên tố lẻ p và q khác nhau Khi đó, ta có φ(n) = (p–1) (q–1) Thuật
toán được mô tả như sau:
n = pq với p và q là hai số nguyên tố lẻ phân biệt
Trang 11Cho P = C = Z n và định nghĩa:
K = {((n, p, q, a, b)| n = pq; p, q là số nguyên tố; ab ≡ 1 (mod φ(n))} Với
mỗi k = (n, p, q, a, b) ∈ K, định nghĩa:
e k (x) = x b mod n và d k (y) = y a mod n, với x, y ∈ Z n
Giá trị n và b được công bố, trong khi giá trị p, q, a được giữ bí mật
Để bảo đảm an toàn cho hệ thống mã hóa RSA, số nguyên n = pq phải đủ lớn để không thể dễ dàng tiến hành việc phân tích n ra thừa số nguyên tố
(trên 100 chữ số thập phân) Cho đến nay RSA-2048 vẫn được cho là an toàn và đang được sử dụng phổ biến trong các ứng dụng thông tin
1.3.4 So sánh các loại mã hóa
Bảng 1.1: So sánh mã hóa quy ước và mã hóa công khai
Mã hóa quy ước Mã hóa khóa công khai (RSA)
112 3DES với 2 khóa 1024 Long DSS, PGP
128 IDEA, AES 1440
150 3DES 2047 PGP “alien grade”
168 3DES với 3 khóa 2880
(Nguồn: Alfred Quyang, CISSP Knowlegde review)
Trang 12CHƯƠNG II: MÃ HÓA ĐƯỜNG CONG ELLIPTIC
2.1 Lý thuyết đường cong Elliptic
2.1.1 Giới thiệu
Năm 1985, hai nhà khoa học Neal Koblitz và Victor S Miller đã độc lập nghiên cứu và đưa ra đề xuất áp dụng lý thuyết toán học đường cong elliptic trên trường hữu hạn [4, tr.ii], đây chính là tiền đề cho ECC
Tính bảo mật của ECC dựa trên điểm mấu chốt là độ phức tạp của bài toán logarit rời rạc trong hệ thống đại số Bài toán này chưa có thuật toán nào có thời gian giải nhỏ hơn cấp lũy thừa
Định nghĩa: gọi K là một trường hữu hạn hoặc vô hạn Một đường cong
elliptic được định nghĩa trên trường K bằng công thức [14, tr.2]:
y 2 + a 1 xy + a 3 y = x 3 + a 2 x 2 + a 4 x + a 6 (với a i ∈ K) (2.1)
2.1.2 Đường cong elliptic trên trường hữu hạn
Đường cong elliptic được xây dựng trên các trường hữu hạn Có hai trường
hữu hạn thường được sử dụng [19, tr.310]: F q với q là số nguyên tố hoặc q
là 2m (m là số nguyên).Tùy thuộc vào trường hữu hạn F q , với mỗi bậc của q,
tồn tại nhiều đường cong elliptic Do đó, với một trường hữu hạn cố định có
q phần tử và q lớn, sẽ có nhiều sự lựa chọn nhóm đường cong elliptic
a Đường cong elliptic trên trường F p (p là số nguyên tố)
b Đường cong elliptic trên trường 𝑭𝟐𝒎
Các phép toán đường cong
2.1.3 Bài toán logarit rời rạc trên đường cong elliptic
Bài toán logarit rời rạc trên đường cong elliptic (ECDLP) được nêu như sau:
Cho E là một đường cong elliptic và P ∈ E là một điểm có bậc n Cho điểm
Trang 13Q ∈ E, tìm số nguyên dương m (2 ≤ m ≤ n − 2) thỏa mãn công thức Q = m
2.2.1 Thao tác mã hóa
2.2.2 Thao tác giải mã
2.3 Trao đổi khóa theo phương pháp Diffie - Hellman sử dụng lý thuyết đường cong elliptic (ECDH)
2.3.1 Mô hình trao đổi khóa Diffie-Hellman
2.3.2 Mô hình trao đổi khóa Elliptic Curve Diffie - Hellman
2.4 Mô hình chữ ký điện tử ECDSA
Hệ mật mã công khai ECC cung cấp dịch vụ chữ ký điện tử tương tự như hệ mật mã RSA, thuật toán ký số ECDSA (Elliptic Curve Digital Signature Algorithm) đã được chuẩn hóa và được đưa vào các bộ chuẩn như ANSI X9.62, FIPS 186-2, IEEE 1363-2000 và ISO/IEC 15946-2
2.5 Ưu điểm của hệ mật mã đường cong Elliptic
ECC có thể cung cấp các khả năng sau:
- Trao đổi khóa an toàn
- Chống nghe lén
Trang 14RSA / DSA ECC
So với RSA, việc triển khai ECC có những ưu điểm sau:
- Đòi hỏi năng lực tính toán thấp hơn
- Tiết kiệm bộ nhớ
- Tiết kiệm băng thông
Tiết kiệm năng lượng
Trang 15CHƯƠNG III ỨNG DỤNG MÃ HÓA ĐƯỜNG CONG
ELLIPTIC TRONG THÔNG TIN DI ĐỘNG
3.1 Hạ tầng khóa công khai
3.1.1 Lý do lựa chọn
Có một thực tế rằng truyền thông di động hiện nay chưa đảm bảo được bảo mật ở mức đầu cuối đến đầu cuối GSM đã được chứng minh là không an toàn cả trên phương diện lý thuyết và thực tế, UMTS tuy chưa bị bẻ khóa một các trực tiếp nhưng vẫn có những lỗ hổng có thể khiến hacker có thể ép thuê bao vào chế độ GSM và thực hiện tấn công Ngoài ra còn có nguy cơ của bên thứ ba (nhà cung cấp/nhà vận hành giải pháp giám sát giám sát lưu lượng) nắm được thông tin của người dùng di động Do vậy cần có những giải pháp mới cho phép nâng cao tính bảo mật của dịch vụ trên nền di động
Đề xuất hạ tầng khóa công khai (PKI – Public Key Infrastructure) là một trong những hướng đi đang dành được nhiều sự chú ý
3.1.2 Thành phần của hạ tầng khóa công khai
Hình 3.1 mô tả các thành phần của hạ tầng khóa công khai [19, tr.428]:
Hình 3.1: Các thành phần của hạ tầng khóa công khai
Trang 163.1.3 Các giao thức
IETF đã đề xuất một số giao thức sử dụng cho hạ tầng khóa công khai hoạt động trên internet Trong phạm vi luận văn, học viên xin không đi chi tiết vào các giao thức này
3.2 Hạ tầng khóa công khai di động m-PKI
3.2.1 Thủ tục quản lý chứng thư
Trình tự thủ tục quản lý chứng thư được minh họa như hình dưới đây:
Hình 3.4: Quản lý chứng thư m-PKI
3.2.2 Khởi tạo và xác thực bản tin yêu cầu chứng thư
Hình 3.5: Thủ tục khởi tạo và xác thực bản tin yêu cầu chứng thư
Trang 173.2.3 Phát hành chứng thư và các giai đoạn trong vòng đời chứng thư
Phát hành chứng thư: RA thực hiện nhận thực và kiểm tra yêu cầu từ MHA
sau đó chuyển tiếp yêu cầu đến CA CA sau đó tạo khóa công khai dựa trên ECC, ký bằng ECDSA, phát hành chứng thư đó trên thư mục quản lý chứng thư và cuối cùng gửi trả lại đường dẫn chứng thư (Certificate ULR) cho MHA
Các giai đoạn trong vòng đời chứng thư: Danh sách các giai đoạn cùng
với thay đổi trong bản tin M được mô tả trong bảng dưới đây:
Bảng 3.1: Các giai đoạn trong vòng đời chứng thư Giai đoạn Bản tin M với loại cập nhật
Khởi tạo M = initial issue || IDMHA || IDM || V1
Trang 183.2.5 Kiểm tra chứng thư và truy cập ứng dụng
Chu trình hoạt động được mô tả như sau:
Hình 3.7: Mô hình kiểm tra chứng thư và truy cập ứng dụng
3.2.6 Đánh giá giải pháp
Trong giải pháp này, ban đầu MHA cần được nhận thực với RA để đảm bảo rằng thuê bao đang sở hữu khóa bí mật tương ứng với khóa công khai đã gửi Kể cả khi chứng thư được phát hành bởi CA (thông qua RA) đến được với thuê bao thì bất kỳ yêu cầu giao dịch nào nữa thuê bao và máy chủ ứng dụng cũng cần phải trải qua quá trình nhận thực chung bằng mã hóa công khai dựa trên ECC và đạt được độ bảo mật lý thuyết như đã trình bày ở chương trước Mô hình cung cấp một số khả năng sau:
Nhận thực chung: sau khi nhận được yêu cầu chứng thư, RA xác thực bản
tin, thực hiện nhận thực chung với MHA/người dùng Nhận thực chung cũng được thực hiện trong quá trình truy cập ứng dụng giữa máy chủ với CA và MHA/người dùng
Xác thực POP: quá trình xác thực POP được sử dụng để đảm bảo người
dùng sở hữu khóa bí mật tương ứng với khóa công khai đã gửi Dựa trên độ
Trang 19khó của bài toán đường cong Elliptic, quá trình xác thực này có thể được coi như an toàn trong thời gian có hiệu lực của chứng thư
Chống tân công lặp lại: để chống tấn công lặp lại, MHA chỉ gửi khóa công
khai đến RA khi mỗi thuê bao có 1 khóa công khai khác nhau hay nói cách khác, khóa công khai sẽ được gửi yêu cầu cấp chứng thư khi nó khác với tất
cả các khóa công khai đang hoạt động
Hiệu quả: mô hình ECC hiệu quả hơn so với RSA bởi các nguyên nhân sau:
- Cung cấp cùng độ bảo mật so với RSA nhưng yêu cầu khóa ngắn hơn:
khóa ECC có độ dài 160 bit được đánh giá có cùng độ bảo mật so với RSA-1024
- Yêu cầu năng lực tính toán thấp hơn: chiều dài khóa ngắn là chìa khóa
cho bài toán hiệu năng Như đã trình bày ở trên ECC có ưu điểm hơn
so với RSA ở khía cạnh này
- Yêu cầu băng thông thấp hơn: chiều dài khóa nhỏ hơn khiến kích thước
bản tin nhỏ hơn, ngoài ra việc sử dụng MHA cũng khiến cho số lượng bản tin/nội dung thông tin trao đổi từ thuê bao giảm đi Đây là một ưu điểm của mô hình m-PKI nhưng cũng tiềm ẩn những nguy cơ giảm độ
an toàn Học viên sẽ trình bày khía cạnh này ở phần sau
Các ưu điểm của mô hình có thể được tổng kết trong bảng sau:
Bảng 3.2: So sánh mô hình ECC với các mô hình khác
Tham số WAP [16] Đề xuất RSA
của Y Lee [13]
Mô hình ECC
Bảo mật end-to-end Không Có Có
Toàn vẹn dữ liệu Không Có Có