Giao thức PKM sử dụng thuật toán khóa công khai RSA, chứng thực số X.509 và thuật toán mã hóa mạnh để thực hiện trao đổi khóa giữa SS và BS.Giao thức bảo mật này dựa trên giao thức PKM c
Trang 11
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
LÊ ĐỨC HUY
KỸ THUẬT XÁC THỰC VÀ MÃ HÓA DỮ LIỆU TRONG CÔNG NGHỆ WIMAX
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
Thái Nguyên – 2015
Trang 22
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
LÊ ĐỨC HUY
KỸ THUẬT XÁC THỰC VÀ MÃ HÓA DỮ LIỆU TRONG CÔNG NGHỆ WIMAX
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
Chuyên ngành: Khoa học máy tính
Mã số: 60480101
NGƯỜI HƯỚNG DẪN KHOA HỌC PGS – TS NGUYỄN VĂN TAM
Thái Nguyên - 2015
Trang 33
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
LỜI CẢM ƠN
Trên thực tế không có thành công nào mà không gắn liền với những sự hỗ
trợ, giúp đỡ Trong suốt thời gian từ khi bắt đầu học tập tại trường đến nay, em
đã nhận được rất nhiều sự quan tâm, giúp đỡ của quý Thầy Cô trường Đại học
Công nghệ Thông tin và Truyền thông – Đại học Thái Nguyên đã cùng với tri
thức và tâm huyết của mình để truyền đạt vốn kiến thức quý báu cho chúng em
trong suốt thời gian học tập tại trường, và luôn luôn tạo mọi điều kiện tốt nhất
cho chúng em trong suốt quá trình theo học tại trường Em xin chân thành cảm
ơn quý Thầy Cô và Ban lãnh đạo nhà trường!
Với lòng biết ơn sâu sắc nhất em xin gửi lời cảm ơn tới PGS.TS Nguyễn
Văn Tam, viện Hàn Lâm Khoa Học Việt Nam, là cán bộ trực tiếp hướng dẫn
khoa học cho em Thầy đã dành nhiều thời gian cho việc hướng dẫn em cách
nghiên cứu, đọc tài liệu, cài đặt các thuật toán và giúp đỡ em trong việc xây
dựng chương trình, em xin chân thành cảm ơn Thầy!
Mặc dù tôi đã có nhiều cố gắng hoàn thiện luận văn bằng tất cả sự nhiệt tình
và năng lực của mình, tuy nhiên không thể tránh khỏi những thiếu sót, rất mong
nhận được những đóng góp quí báu của quí thầy cô và các bạn
Hà nội , ngày 25 tháng 08 năm 2015
LÊ ĐỨC HUY
Trang 44
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
LỜI CAM ĐOAN
Tôi xin cam đoan luận văn là kết quả nghiên cứu của tôi, không sao chép của ai Nội dung luận văn có tham khảo và sử dụng các tài liệu liên quan, các thông tin trong tài liệu đƣợc đăng tải trên các tạp chí và các trang website theo danh mục tài liệu của luận văn
Tác giả luận văn
Lê Đức Huy
Trang 55
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
MỤC LỤC
LỜI CẢM ƠN 2
LỜI CAM ĐOAN 4
MỤC LỤC 5
DANH MỤC CÁC TỪ VIẾT TẮT 7
DANH MỤC CÁC HÌNH 8
LỜI NÓI ĐẦU 9
CHƯƠNG 1: TỔNG QUAN VỀ WIMAX VÀ VẤN ĐỀ AN NINH TRONG WIMAX 11
1.1 Giới thiệu WIMAX 11
1.1.1 Kiên trúc phân lớp WIMAX 11
1.1.2 Khái quát phân lớp trong giao thức IEEE 802.16 11
1.1.2.1 Lớp vật lý 11
1.1.2.2 Lớp MAC 12
1.1.3 Ưu điểm của WIMAX 17
1.2 Một số các cách tấn công trong WIMAX 19
1.3 Vấn đề an toàn bảo mật trong WIMAX 20
1.3.1 Nhận thực 20
1.3.2 Bảo mật 21
1.3.3 Toàn Vẹn 21
1.3.4 Một số giải pháp an ninh trong Wimax 22
CHƯƠNG II: KỸ THUẬT XÁC THỰC VÀ MÃ HÓA DỮ LIỆU TRONG CÔNG NGHỆ WIMAX 23
2.1 Thuật toán xác thực 23
2.1.1 Thuật toán mã hóa khóa công khai ( RSA) 23
2.1.1.1 Giới thiệu thuật toán 23
2.1.1.2 Thuật toán 24
2.1.1.3 Ưu nhược điểm 27
2.1.1.3.1 Nhược điểm 27
2.1.1.3.2 Ưu điểm 27
2.1.1.4 Đặc trưng của hệ mật RSA 28
2.1.1.5 Độ an toàn của hệ mật RSA 30
2.1.1.6 Quản lý khoá của hệ mật mã RSA 31
2.1.1.7 Các ứng dụng của RSA 37
2.1.2 Thuật toán mã hóa dựa trên định danh (IBE) 41
2.1.2.1 Giới thiệu 41
Trang 66
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
2.1.2.2 Các khả năng ứng dụng IBE 41
2.1.2.3 Lược đồ mã hóa dựa trên định danh 43
2.2 Thuật toán mã hóa dữ liệu 45
2.2.1 Thuật toán mã hóa DES 45
2.2.1.1 Giới thiệu: 45
2.2.1.2 Thuật toán : 46
2.2.2 Thuật toán mã hóa 48
2.2.2.1 Giới thiệu: 48
2.2.2.2 Thuật toán 49
CHƯƠNG III: XÂY DỰNG CHƯƠNG TRÌNH MÔ PHỎNG DỰA TRÊN THUẬT TOÁN XÁC THỰC CẢI TIẾN RSA 56
3.1 Xác thực lẫn nhau dựa trên RSA 56
3.1.1 Đặt vấn đề bài toán 56
3.1.2 Mô tả thuật toán 56
3.2 Xây dựng chương trình mô phỏng 60
3.2.1 Lựa chọn công cụ và ngôn ngữ 60
3.2.2 Hoạt động và giao diện của chương trình 63
3.3 Đánh giá hiệu quả của giải pháp cải tiến 69
3.3.1 Phòng chống tấn công Replay 70
3.3.2 Phòng chống tấn công Man in Middle Attack và Denial of Service 70 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 72
PHỤ LỤC MÃ NGUỒN CỦA CHƯƠNG TRÌNH 74
Trang 77
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
DANH MỤC CÁC TỪ VIẾT TẮT
AES Advanced Encryption Standard Chuẩn mã hóa dữ liệu cao cấp ARQ Automatic Repeat Request Tự động lặp lại yêu cầu
ADSL Asymmetric Digital Subcriber Line Đường dây thuê bao số bất đối
xứng BPSK Binary Phase Shift Keying Khóa dịch pha nhị phân
BPSK Binary Phase Shift Keying Điều chế pha nhị phân
CID Connection Identify Nhận dạng kết nối
CSMA Carrier Sense Multiple Access Đa truy nhập cảm ứng sóng
mang
DHCP Dynamic host Configuration Protocol Giao thức cấu hình Host động DSL Digital Subcriber Line Đường dây thuê bao số
DES Data Encryption Standard Tiêu chuẩn mã hóa dữ liệu
IEEE Institute of Electrical and Electronics
Engineers
Viện kỹ nghệ Điện và Điện tử WMAN Wireless Metropolitan Area Network Mạng vô tuyến khu vực đô thị OFDM Orthogonal Frequency Division
Multiplexing
Ghép phân chia tần số trực giao
NLOS Non light of Sight Không tầm nhìn thẳng
SOFDMA Scalable Orthogonal Frequency Division
Multiple Access
Khả năng mở rộng đa truy cập phân chia theo tần số trực giao TDD Time Division Duplex Song công phân chia theo thời
gian FDD Frequence Division Duplex Song công phân chia theo tần số
TDMA Time Division Multiple Access Đa truy nhập phân chia theo
thời gian MAC Medium Access Control Điều khiển truy nhập môi
trường
TEK Traffic Encryption Key Khóa bảo mật dữ liệu
UMTS Universal Mobile Telecommunication
seytem
Hệ thống viễn thông di động toàn cầu
IBE Indetity Base Encryption Mã hóa dựa trên định danh
QPSK Quadrature phase-shift keying Điều chế pha cầu phương
PDA Personal Digital Assistance Thiết bị hỗ trợ cá nhân kĩ thuật
số
Trang 88
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
DANH MỤC CÁC HÌNH
Hình 1: Lớp giao thức trong IEEE 802.16 12
Hình 2: Chi tiết phân lớp MAC trong IEEE 802.16 13
Hình 3: Khuôn dạng bản tin MAC 14
Hình 4: Nhận thực trong IEEE 802.16 16
Hình 5: Quá trình trao đổi khóa 17
Hình 6: Quá trình mã hóa khóa công khai RSA 29
Hình 7: Ứng dụng RSA trong chữ kí điện tử 38
Hình 8: Ứng dụng của RSA trong thẻ ATM của ngân hàng 39
Hình 9: Mã hoá bằng hệ thống IBE 43
Hình 10: Giải mã bằng hệ thống IBE 44
Hình 11: Hàm F (F-function) dùng trong DES 47
Hình 12: Quá trình tạo khóa con trong DES 48
Hình 13: Bước SubBytes 50
Hình 14: Bước ShiftRows 51
Hình 15: Bước MixColumns 52
Hình 16: Bước AddRoundKey 52
Hình 17: Quá trình xác thực lẫn nhau để tránh BS giả mạo tấn công 57
Hình 18: Lưu đồ thuật toán SS 58
Hình 19: Lưu đồ thuật toán BS 59
Hình 20: Quy trình truyền thông tổng thể 60
Hình 21: Phòng chống tấn công phát lại bằng cách sử dụng Timestamp 70
Trang 99
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
LỜI NÓI ĐẦU
Công nghệ thông tin vô tuyến tạo ra sự thay đổi sâu sắc theo cách mà mọi người tương tác với nhau và trao đổi thông tin trong xã hội chúng ta Một thập
kỷ qua, các mô hình đang thịnh hành cho cả các hệ thống điện thoại và các mạng máy tính là các mô hình mà người sử dụng tiếp cận mạng – tổ hợp điện thoại hoặc trạm máy tính được nối bằng dây tới cơ sở hạ tầng liên mạng rộng hơn.Ngày nay, các mô hình đó đã dịch chuyển đến một mô hình nơi mà mạng tiếp cận người sử dụng bất kì khi nào họ xuất hiện và sử dụng chúng Khả năng liên lạc thông qua các máy điện thoại theo mô hình tổ ong trong khi đang di chuyển là thực hiện được và các hệ thống cho truy nhập Internet không dây ngày càng phổ biến
Ngành công nghệ viễn thông đã chứng kiến những phát triển ngoạn mục trong những năm gần đây, đặc biệt là truyền thông không dây băng thông rộng Khi mà công nghệ mạng thông tin di động thế hệ thứ ba 3G chưa có đủ thời gian
để khẳng định vị thế của mình trên toàn cầu, người ta đã bắt đầu nói về công nghệ Wimax từ những năm gần đây
Tiềm năng cung cấp kết nối mềm dẻo, mọi lúc mọi nơi và các khả năng mới của thông tin vô tuyến cho người sử dụng và các tổ chức là rõ ràng Cùng thời điểm đó, việc cung cấp các cơ sở hạ tầng rộng khắp cho thông tin vô tuyến
và tính toán di động cũng xuất những nguy cơ mới, đặc biệt là trong lĩnh vực an ninh Thông tin vô tuyến liên quan đến việc truyền thông tin qua môi trường không khí, điển hình là bằng các sóng vô tuyến hơn là thông qua môi trường dây dẫn khiến cho việc chặn hoặc nghe lén các cuộc gọi khi người sử dụng thông tin với nhau trở nên dễ dàng hơn Ngoài ra, khi thông tin là vô tuyến thì không thể
sử dụng vị trí kết nối mạng của người sử dụng như là một phần tử để đánh giá nhận dạng chúng Để khai thác tiềm năng của công nghệ này mọi người phải có thể chuyển vùng tự do với các thiết bị truyền thông di động được và do đó mọi người có thể xuất hiện tự do trong những vị trí mới Trong khi các đặc tính này cung cấp cho người sử dụng các tiện ích mới thì nhà cung cấp dịch vụ và nhà quản trị hệ thống phải đối mặt với những thách thức về an ninh chưa có tiền lệ
Do đặc điểm trao đổi thông tin trong không gian truyền sóng nên khả năng thông tin bị rò rỉ ra ngoài là hoàn toàn dễ hiểu Hơn nữa, ngày nay với sự
Trang 1010
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
phát triển cao của công nghệ thông tin, các hacker có thể dễ dàng xâm nhập vào mạng hơn bằng nhiều con đường khác nhau Vì vậy có thể nói điểm yếu cơ bản nhất của mạng di động Wimax đó là khả năng bảo mật, an toàn thông tin Thông tin là một tài sản quý giá, đảm bảo được an toàn dữ liệu cho người sử dụng là một trong những yêu cầu được đặt ra hàng đầu
Xuất phát từ những lý do trên, tôi đã chọn đề tài ―Kỹ thuật xác thực và mã hóa dữ liệu trong công nghệ WIMAX‖ Chủ đề quan tâm ở đây là lĩnh vực an ninh thông tin trong mạng không dây băng thông rộng, mà điểm mấu chốt là tìm hiểu các kỹ thuật, công nghệ để đảm bảo sự an ninh đó Đó thực sự là lĩnh vực rất rộng lớn và phức tạp
Luận văn gồm có các nội dung như sau:
Chương 1 : Tổng quan về Wimax và vấn đề an ninh trong Wimax
Chương 2 : Kỹ thuật xác thực và mã hóa dữ liệu trong công nghệ Wimax Chương 3 : Xây dựng chương trình mô phỏng dựa trên thuật toán xác thực cải tiến RSA
Trang 1111
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
CHƯƠNG 1: TỔNG QUAN VỀ WIMAX VÀ VẤN ĐỀ AN NINH TRONG
WIMAX
1.1 Giới thiệu WIMAX
1.1.1 Kiên trúc phân lớp WIMAX
WiMAX là tên thương mại của chuẩn IEEE 802.16 Ban đầu chuẩn này được tổ chức IEEE đưa ra nhằm giải quyết các vấn đề kết nối cuối cùng trong một mạng không dây đô thị WMAN hoạt động trong tầm nhìn thẳng (Line of Sight) với khoảng cách từ 30 tới 50 km Nó được thiết kế để thực hiện đường trục lưu lượng cho các nhà cung cấp dịch vụ Internet không dây, kết nối các điểm nóng WiFi, các hộ gia đình và các doanh nghiệp… đảm bảo chất lượng dịch vụ (QoS) cho các dịch vụ thoại, video, hội nghị truyền hình thời gian thực
và các dịch vụ khác với tốc độ hỗ trợ lên tới 280 Mbit/s mỗi trạm gốc Chuẩn IEEE 802.16-2004 hỗ trợ thêm các hoạt động không trong tầm nhìn thẳng tại tần
số hoạt động từ 2 tới 11 GHz với các kết nối dạng mesh (lưới) cho cả người dùng cố định và khả chuyển Chuẩn mới nhất IEEE 802.16e, được giới thiệu vào ngày 28/2/2006 bổ sung thêm khả năng hỗ trợ người dùng di động hoạt động trong băng tần từ 2 tới 6 GHz với phạm vi phủ sóng từ 2 - 5 km Chuẩn này đang được hy vọng là sẽ mang lại dịch vụ băng rộng thực sự cho những người dùng thường xuyên di động với các thiết bị như laptop, PDA tích hợp công nghệ WiMAX
1.1.2 Khái quát phân lớp trong giao thức IEEE 802.16
1.1.2.1 Lớp vật lý
WiMAX sử dụng công nghệ OFDM (Orthogonal Frequency Division Multiplex) Ưu điểm quan trọng của OFDM là khả năng mang lại hiệu suất băng thông cao hơn và do đó thông lượng dữ liệu sẽ cao hơn ngay cả khi hoạt động trong môi trường kết nối NLOS (None Line of Sight) hay điều kiện đa đường Trong chuẩn IEEE 802.16-2004, tín hiệu OFDM được chia thành 256 sóng mang, còn chuẩn IEEE 802.16e sử dụng phương thức SOFDMA (Scalable Orthogonal Frequency Division Multiple Access) Chuẩn IEEE 802.16 hỗ trợ một phạm vi rộng các tần số hoạt động và lớp vật lý có thể thực hiện một vài phương thức điều chế và ghép kênh Phương thức điều chế tại đường xuống và đường lên có thể là BPSK, QPSK, 16-QAM hoặc 64 QAM
Chuẩn IEEE 802.16 hỗ trợ cả 2 phương thức song công là TDD và FDD.Trong cơ chế TDD, khung đường xuống và đường lên chia sẻ một tần số nhưng tách biệt về mặt thời gian Trong FDD, truyền tải các khung đường xuống
và đường lên diễn ra cùng một thời điểm, nhưng tại các tần số khác nhau
Trang 1212
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
Độ dài khung có thể là 0.5, 1, 2ms Trong TDD, phần khung được chỉ định cho đường xuống và phần khung chỉ định cho đường lên có thể có độ dài khác nhau Đường lên sử dụng phương thức đa truy nhập TDMA, ở đó băng thông được chia thành các khe thời gian Mỗi một khe thời gian được chỉ định cho một Mobile Station (trạm di động) riêng lẻ đang được Base Station (trạm gốc) phục vụ Một khung con đường xuống thường chứa 2 phần Một phần dành cho thông tin điều khiển, chứa mào đầu nhằm đồng bộ và ánh xạ khung và các
dữ liệu khác.Một ánh xạ đường xuống (DL_MAP) ấn định vị trí bắt đầu và các thuộc tính truyền dẫn của các cụm dữ liệu.Một ánh xạ đường lên (UL_MAP) chứa thông tin chỉ định băng thông dành cho trạm di động SS
Hình 1: Lớp giao thức trong IEEE 802.16
1.1.2.2 Lớp MAC
Lớp MAC bao gồm 3 lớp con: Lớp con hội tụ dịch vụ chuyên biệt (MAC
CS _ Convergence Sublayer), lớp con phần chung (MAC CPS _ CommonPart Sublayer) và lớp con bảo mật (MAC PS _ Privaci Sublayer) MAC CS có 2 loại lớp con: lớp con hội tụ ATM, và lớp con hội tụ gói dành cho các dịch vụ dữ liệu dạng gói ví dụ như Ethernet, PPP, IP và VLAN Chức năng cơ bản của lớp CS là nhận dữ liệu từ lớp cao hơn, phân loại dữ liệu dạng ATM hay dạng gói và chuyển các khung này tới lớp CPS
Trang 1313
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
Hình 2: Chi tiết phân lớp MAC trong IEEE 802.16 Phần lõi của lớp MAC IEEE 802.16 là MAC CPS, định nghĩa tất cả các quản lý kết nối, phân phối băng thông, yêu cầu và cấp phát, thủ tục truy nhập hệ thống, lập lịch đường lên, điều khiển kết nối và ARQ Truyền thông giữa CS và CPS được các điểm truy nhập dịch vụ MAC (MAC SAP) duy trì.Thiết lập, thay đổi, xóa kết nối và truyền tải dữ liệu trên các kênh là bốn chức năng cơ bản trong quá trình truyền thông tại lớp này
Lớp con bảo mật thực hiện mã hóa dữ liệu trước khi truyền đi và giải mã
dữ liệu nhận được từ lớp vật lý Nó cũng thực hiện nhận thực và trao đổi khóa bảo mật Chuẩn IEEE 802.16 ban đầu sử dụng phương pháp DES 56 bit cho mã hóa lưu lượng dữ liệu và phương pháp mã hóa 3-DES cho quá trình trao đổi khóa Trong mạng IEEE 802.16, trạm gốc chứa 48 bit ID nhận dạng trạm gốc (chú ý rằng đây không phải là một địa chỉ MAC), còn SS có 48 bit địa chỉ MAC 802.3 Có 2 giao thức chính hoạt động trong lớp con bảo mật: giao thức mã hóa
dữ liệu thông qua mạng băng rộng không dây, và giao thức quản lý khóa và bảo mật (PKM- Privacy and Key Management Protocol) đảm bảo an toàn cho quá trình phân phối khóa từ BS tới SS Nó cũng cho phép BS đặt điều kiện truy nhập cho các dịch vụ mạng Giao thức PKM sử dụng thuật toán khóa công khai RSA, chứng thực số X.509 và thuật toán mã hóa mạnh để thực hiện trao đổi khóa giữa SS và BS.Giao thức bảo mật này dựa trên giao thức PKM của DOCSIS BPI+ đã được cải tiến để cung cấp một lược đồ mã hóa mạnh hơn như chuẩn mã hóa cải tiến AES
MAC trong IEEE 802.16 là phân lớp hướng kết nối, được thiết kế cho các ứng dụng truy nhập không dây băng rộng theo cấu hình điểm đa điểm (PMP), hay dạng Mesh Có hai loại kết nối MAC được xác định bởi 16 bit nhận dạng kết nối CID là: Các kết nối quản lý và Các kết nối vận chuyển dữ liệu Các kết nối quản lý lại gồm 3 loại: cơ sở, sơ cấp và thứ cấp trong đó cơ sở sử dụng cho truyền tải, điều khiển liên kết vô tuyến , còn sơ cấp liên quan đến thiết lập nhận thực và kết nối, và kết nối quản lý thứ cấp là các bản tin quản lý dựa trên chuẩn truyền tải như DHCP, TFTP, SNMP Kết nối quản lý sơ cấp và kết nối cơ sở được tạo ra khi một MS/SS ra nhập vào một BS phục vụ của mạng.Kết nối vận chuyển dữ liệu có thể được thiết lập dựa trên nhu cầu.Chúng được sử dụng cho các luồng lưu lượng người sử dụng, các dịch vụ đơn hướng (Unicast) và đa hướng (Multicast) Các kênh bổ sung cũng được MAC dự trữ để gửi ra ngoài các thông tin lập lịch đường xuống và đường lên
Các thành phần cơ bản của mạng là trạm gốc BS và trạm thuê bao SS (Subscriber Station), trạm gốc BS giống như các điểm truy nhập (AP) trong
Trang 1414
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
mạng WiFi.BS được nối với phần hữu tuyến, nó phát quảng bá các thông tin tới
SS Khác với phương pháp CSMA/CA trong 802.11, 802.16 sử dụng các ánh xạ đường xuống và đường lên để khắc phục xung đột trong môi trường truy nhập.SS sử dụng phương thức truy nhập TDMA để chia sẻ đường lên trong khi
BS sử dụng phương thức TDM.Tất cả các chức năng này được thực hiện thông qua bản tin DL_MAP và UL_MAP
* Khuôn dạng bản tin MAC
Đơn vị giao thức dữ liệu MAC (MPDU) chứa các bản tin trao đổi giữa BS MAC và SS MAC Nó có 3 phần: Một Header MAC có độ dài cố định, header này chứa thông tin điều khiển khung, một tải có độ dài thay đổi (Frame Body)
và một giá kiểm tra tuần tự khung (FCS – Frame Check Sequence) chứa 32 bit CRC
Các loại MAC Header là: đơn vụ dữ liệu dịch vụ MSDU (MAC Service Data Unit) ở đây tải là các đoạn MAC SDU ví dụ như dữ liệu đến từ các lớp cao hơn (CS PDU), thứ 2 là Generic MAC Header (GMH), ở đây tải là các bản tin quản lý MAC hoặc các gói được đóng gói trong các MAC CS PDU, cả 2 MSPU
và GMH đều được truyền trên các kết nối quản lý, thứ 3 là một BRH (Bandwidth Request Header) không có tải
Ngoại trừ các Bandwidth Request PDU, các MAC PDU có thể chứa bản tin quản lý MAC hoặc dữ liệu lớp con hội tụ - MSDU Với GMH và MSDU, bit
HT (Header Type) luôn luôn được thiết lập là 0 (Zero) trong khi BRH luôn luôn được đặt là 1 MAC Header có chứa một cờ, chỉ ra loại tải của PDU có được mã hóa hay không
Hình 3: Khuôn dạng bản tin MAC
Trang 1515
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
Trong chuẩn IEEE 802.16-2001, MAC Header và tất cả các bản tin quản
lý MAC không được mã hóa Quy định này tạo sự đơn giản cho quá trình đăng
ký, tranh chấp và các hoạt động khác tại lớp con MAC Trong chuẩn mới nhất của tổ chức IEEE 802.16e, các tải của MAC PDU được mã hóa theo chuẩn DES theo cơ chế CBC, hoặc AES trong cơ chế CCM Phiên bản bổ xung IEEE 802.16e cũng đưa ra một kỹ thuật bảo toàn tính nguyên vẹn lưu lượng dữ liệu
- DSA
DSA (Data Security Association) có 16 bit nhận dạng SA, thông tin phương thức mã hóa (chuẩn mã hóa cải tiến DES hoạt động theo cơ chế CBC) nhằm bảo vệ dữ liệu khi truyền chúng trên kênh truyền và 2 TEK (Traffic Encrytion Key) để mã hóa dữ liệu: một khóa TEK đang hoạt động và một khóa
dự phòng Mỗi TEK sử dụng một véc tơ khởi tạo IV 64bit Thời gian sống của một TEK nằm trong khoảng từ 30 phút tới 7 ngày Có 3 loại DSA là: Primary
SA được sử dụng trong quá trình khởi tạo liên kết, Static SA đã được cấu hình trên BS và Dynamic SA được sử dụng cho các kết nối vận chuyển khi cần Primary SA được chia sẻ giữa MS và BS đang phục vụ nó.Static SA và Dynamic SA có thể được một vài MS chia sẻ trong hoạt động Multicast.Khi thực hiện kết nối, đầu tiên SA khởi tạo một DSA bằng cách sử dụng chức năng yêu cầu kết nối Một SS thông thường có 2 hoặc 3 SA, một cho kết nối quản lý thứ cấp, một cho kết nối cho cả đường lên và đường xuống, hoặc sử dụng các
SA tách biệt cho kênh đường lên và đường xuống BS đảm bảo rằng mỗi SS chỉ
có thể truy nhập bằng SA mà nó cấp riêng cho SS
- ASA (SA chứng thực)
SA chứng thực (ASA-Authentication SA) bao gồm một khóa cấp phép dài
60 bit (AK) và 4 bit nhận dạng AK Thời gian sử dụng của AK thay đổi từ 1 tới
70 ngày Khóa mã hóa khóa KEK (Key Encryption key) sử dụng thuật toán 3 DES 112bit cho các TEK phân phối (Temporal encryption key) và một danh sách các DSA cấp phép Khóa HMAC (Hash function-based message authentication code) đường xuống DL và đường lên UL được sử dụng để nhận thực dữ liệu trong các bản tin phân phối khóa từ BS tới SS và SS tới BS.Trạng
Trang 1616
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
thái của một SA chứng thực được chia sẻ giữa một BS và một SS thực tế.Các BS
sử dụng SA chứng thực để cấu hình các DSA trên SS
Hình 4: Nhận thực trong IEEE 802.16
Trong chuẩn IEEE 802.16, quá trình xác nhận chứng thực được diễn ra khi có một SS gửi đi yêu cầu nhận thực, trong yêu cầu này có thể chứa chứng chỉ của SS, khả năng bảo mật và mã SAID Khi một BS nhận được yêu cầu xác nhận, nó sẽ tiến hành xác nhận chứng chỉ SS, tạo một khóa AK có độ dài 128bit, sau đó sẽ gửi một hồi đáp tới SS Hồi đáp này bao gồm các thông tin: khóa AK (theo mã hóa RSA-1024), thời gian AK có thể được sử dụng, xác định phương thức bảo mật đã lựa chọn và chỉ số của AK AK này được mã hóa bằng khóa công khai của Mobile Station (MS) sử dụng lược đồ mã hóa công khai RSA.Quá trình nhận thực hoàn thành khi cả SS và BS đều sở hữu AK.Quá trình nhận thực được minh họa như hình 4
Chuẩn 802.16 sử dụng DES-CBC (Chuẩn mã hóa dữ liệu với khối số thay đổi) để mã hóa dữ liệu DES-CBC yêu cầu một gíá trị khởi tạo để thực hiện vấn
đề này.Tuy nhiên điều đáng ngại ở đây là chuẩn 802.16 lại sử dụng một giá trị khởi tạo có thể đoán trước được.Để giải quyết vấn đề này, một đề xuất mới là có thể tạo ra ngẫu nhiên một giá trị khởi tạo trên mỗi khung, và sau đó nó có thể được chèn vào trong phần tải trọng.Với cách làm như vậy một kẻ tấn công sẽ không thể biết được giá trị khởi tạo của chuẩn mã hóa để giải mã dữ liệu đi qua mạng
* Trao đổi khóa dữ liệu (Data Key Exchange)
Sau khi nhận thực thành công, MS và BS sẽ sử dụng AK để tạo ra các khóa mã hóa khóa KEK, hoặc để tạo ra các khóa mã nhận thực bản tin băm HMAC (Hashed Message Authentication Code).Khóa HMAC được sử dụng để phục vụ cho quá trình tạo và xác thực các bản tin quản lý MAC.Còn KEK được
Trang 1717
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
sử dụng để bảo vệ các khóa mật mã lưu lượng TEK (Traffic Encryption Key).Khóa TEK là khóa dùng để mã hóa dữ liệu, TEK được BS tạo ra
Quá trình trao đổi khóa được minh họa như hình dưới đây:
Hình 5: Quá trình trao đổi khóa Một giải pháp chống lại những tổn hại từ tấn công lặp lại là sử dụng bộ tạo giá trị ngẫu nhiên từ BS và SS tới các SA trao quyền Theo đó thì cặp khóa riêng và công khai được sử dụng để xác nhận các địa chỉ MAC giống nhau với điều kiện là phải định nghĩa một cách rõ ràng tất cả các xác nhận địa chỉ MAC
để đảm bảo địa chỉ MAC là duy nhất nhằm tránh vấn đề giả mạo
1.1.3 Ưu điểm của WIMAX
So với việc triển khai các mạng số liệu có dây và không dây khác, mạng WiMAX có những ưu điểm nổi bật sau
+ Triển khai nhanh hơn nhưng đầu tư ít hơn:
Thời gian lắp đặt và triển khai hệ thống mạng WiMAX ngắn hơn các hệ thống khác So sánh với mạng cáp, hệ thống này sẽ giúp nhà khai thác đưa dịch
vụ đến khách hàng nhanh hơn rất nhiều Nói cách khác, chi phí đầu tư sẽ thấp hơn mạng cáp hữu tuyến.Ngoài ra mạng WiMAX cho phép triển khai được ở những vùng mà mạng cáp hữu tuyến không thể triển khai được Còn các mạng di động yêu cầu quản lý mạng phức tạp do đó quá trình triển khai chậm hơn cũng như chi phí cao hơn
+ Dung lượng mạng lớn hơn:
Tốc độ dữ liệu của trạm gốc WiMAX có thể đạt được 75Mbps trong một sector và cho phép lên đến 300 Mbps trong một cell Trong trường hợp làm
Trang 1818
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
mạng đường trục (backhaul) tốc độ dữ liệu có thể lên tới vài Gbps (mạng WiMAX cố đinh,đường truyền LOS) Mạng WiMAX có thể cung cấp tốc độ dữ liệu cao nhiều hơn các hệ thống khác như Dial-up, ADSL, DSL và 3G.Mạng Wifi về lý thuyết có thể cung cấp tốc độ dữ liệu 54 Mbps nhưng tốc độ dữ liệu thực phụ thuộc kết nối giữa hotpost với đường ADSL hoặc cáp.Trạm gốc WiMAX có thể kết nối thông qua đường cáp quang hoặc qua các backhaul WiMAX, trong đó khả năng lớn nhất là sử dụng các backhaul
+ Độ bảo mật cao:
Hệ thống WiMAX có sử dụng bộ lọc địa chỉ IP/MAC, mật khẩu, trên các giao diện vô tuyến sử dụng các phương thức bảo mật tiên tiến.Toàn bộ các quá trình nhận thực, thiết lập kết nối được quản lý bởi giao thức quản lý khóa bảo mật và các liên kết bảo mật đi kèm từng kết nối Dữ liệu được mã hóa bảo mật theo chuẩn DES, AES
+ Giảm nhiễu, tăng hiệu suất sử dụng phổ:
Kỹ thuật OFDM cho phép giảm nhiễu ISI, tăng hiệu suất sử dụng phổ, giảm lỗi đường truyền cho phép đảm bảo tốt chất lượng tín hiệu thu OFDM đặc biệt hiệu quả trong truyền dẫn đa đường trong môi trường NLOS
+ Phản ứng linh hoạt với chất lượng đường truyền:
Kỹ thuật điều chế thích ứng cho phép hệ thống phản ứng linh hoạt với chất lượng đường truyền, khi tỉ số SNR giảm thì mức điều chế giảm để đảm bảo
tỉ lệ lỗi bit đạt mức tiêu chuẩn (tỉ lệ lỗi bit BER không vượt quá 10-3
Xét một ví dụ một trạm phát WiMAX sử dụng các modun kết nối số liệu, mỗi modun sử dụng băng thông 3.5 MHz Trong giai đoạn đầu tiên, số lượng thuê bao ít, dung lượng mạng yêu cầu thấp ta có thể sử dụng một modun thu phát sử dụng băng thông 3.5 MHz, mỗi modun cho phép tốc độ dữ liệu 18 Mbps Khi số thuê bao tăng lên, khi đó chỉ cần lắp thêm modun và tăng băng thông lên để tăng dung lượng mạng.Với 4 modun có thể đạt được dung lượng tối
đa 72 Mbps
+ Hiện nay công nghệ WiMAX đang được hỗ trợ bởi nhiều nhà sản xuất thiết bị viễn thông Với phiên bản thiết bị (Multiple vendors) sẽ cho phép giảm
Trang 1919
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
rủi ro cho các công ty kinh doanh dịch vụ WiMAX nhờ khả năng lựa chọn thiết
bị và sự cạnh tranh giữa các nhà cung cấp Ngoài ra hệ thống WiMAX có nhiều
cơ sở về công nghệ và kỹ thuật cho các giải pháp hiệu quả và cạnh tranh
- Chipset theo tiêu chuẩn
- Công nghệ mới giúp giảm chi phí sản xuất dẫn đến giá thành thiết bị giảm
- Khả năng tích hợp chip tương thích WiMAX bên trong laptop và PDA cũng như các thiết bị di động khác (tương tự Wifi) do đó chi phí thiết bị đầu cuối CPE sẽ giảm rất nhiều (người dùng không cần mua các anten hoặc card chuyên dụng)
+ Dịch vụ phong phú: Mạng WiMAX cho phép cung cấp nhiều loại hình dịch vụ khác nhau cho các tổ chức, doanh nghiệp, hộ gia đình và cá nhân Tất cả các dịch vụ đều được đảm bảo chất lượng dịch vụ QoS
- Dịch vụ thoại truyền thống hoặc thoại qua internet (VoIP)
- Truy cập internet tốc độ cao
- Hội nghị truyền hình
- Mạng riêng ảo
- Truyền hình di động
- Giải trí trực tuyến và nhiều dịch vụ gia tăng khác
Các dich vụ phong phú và chất lượng dịch vụ cao với mức cước không quá lớn là điểm hấp dẫn của công nghệ WiMAX
1.2 Một số các cách tấn công trong WIMAX
Vấn đề này được thực hiện trong mọi dạng cấu hình di động băng rộng, bao gồm các dạng truyền dẫn khác nhau và xử lý các nguy cơ sau đây:
- Từ chối dịch vụ: Nguy cơ này tấn công vào các thành phần mạng truyền dẫn bằng cách liên tục đưa dồn dập dữ liệu làm cho khách hàng khác không thể
Trang 2020
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
khách hàng bằng cách thao tác khỏi tạo tin nhắn hay thao tác địa chỉ vào/ra của mạng
- Truy nhập trái phép: Truy nhập vào các thực thể mạng phải được hạn chế và phủ hợp với chính sách bảo mật.Nếu kẻ tấn công truy nhập trái phép vào các thực thể mạng thì các dạng tấn công khác từ chối dịch vụ, nghe trộm hay giả dang cũng có thể xảy ra Truy nhập trái phép cũng là kết quả của nguy cơ kể trên
- Sửa đổi thông tin: Dữ liệu bị phá hỏng hay làm cho không thể sử dụng được do thao tác của hacker Một hậu quả của hành động này là khách hàng hợp pháp không truy xuất được vào tài nguyên mạng được.Trên nguyên tắc không thể ngăn chặn khách hàng thao tác trên dữ liệu hay phá hủy một cơ sở dữ liệu trong phạm vi truy nhập cho phép của họ
- Từ chối khách hàng: Một hay nhiều khách hàng trong mạng có thể bị từ chối tham gia vào một phần hay toàn bộ mạng với các khách hàng/ dịch vụ/ server khác Phương pháp tấn công có thể là tác động lên đường truyền, truy nhập dữ liệu hay sửa đổi dữ liệu Dạng tấn công này gây hậu quả là mất niềm tin
ở khách hàng dấn đến mất doanh thu
1.3 Vấn đề an toàn bảo mật trong WIMAX
WiMAX là một công nghệ không dây đang nhận được nhiều sự quan tâm hiện nay Tuy nhiên, cũng giống như các mạng không dây khác, nhược điểm lớn nhất của WiMAX là tính bảo mật do sự chia sẻ môi trường truyền dẫn và những
lỗ hổng tại cơ sở hạ tầng vật lý Mặc dù vấn đề bảo mật được coi là một trong những vấn đề chính trong quá trình xây dựng giao thức mạng của IEEE nhưng
kỹ thuật bảo mật mà IEEE qui định trong IEEE 802.16 (WiMAX) vẫn tồn tại nhiều nhược điểm
1.3.1 Nhận thực
Nhận thực để xác nhận nhận dạng của một thực thể.Một nút muốn nhận thực đến một người nào đó phải trình diện số nhận dạng của mình Quá trình này
có thể được thực hiện bằng cách chỉ ra sự hiểu biết về một bí mật mà chỉ hai nút liên quan mới biết hoặc một nút thứ ba được cả hai nút tin tưởng, để xác nhận các số nhận dạng của chúng
Nhận thực trong di động băng thông rộng được chia làm hai phần: mạng nhận thực người sử dụng và người sử dụng nhận thực mạng Cả hai thủ tục này đều xảy ra trong cùng một trao đổi bản tin giữa mạng và người sử dụng, thủ tục này gọi là ―nhận thực một lần gửi‖ để giảm các bản tin cần truyền Sau các thủ tục này, người sử dụng sẽ tin tưởng rằng mạng mà nó nối đến được tin tưởng, để
Trang 2121
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
phục vụ thay cho mạng nhà của nó Đồng thời, mạng cũng tin tưởng nhận dạng của người sử dụng là hợp lệ Mạng lõi rất cần biết số nhận dạng thực sự của người sử dụng để tin tưởng rằng người sử dụng này sẽ trả tiền cho các dịch vụ
mà nó cung cấp Mặt khác người sử dụng cũng muốn nhận thực để tin tưởng rằng các dịch vụ mà nó trả tiền sẽ được cung cấp
1.3.2 Bảo mật
Bảo mật để đảm bảo an ninh thông tin, đối phó với các cuộc tấn công của những kẻ không được phép Khi số lượng thuê bao không ngừng tăng cho cả các cuộc gọi cá nhân lẫn kinh doanh (ví dụ các dịch vụ trực tuyến như trao đổi ngân hàng) thì nhu cầu bảo mật thông tin ngày càng trở nên bức thiết
Bảo mật trong UMTS đạt được bằng cách mật mã hóa các cuộc truyền thông giữa thuê bao và mạng bằng cách sử dụng nhận dạng tạm thời (địa phương) thay cho sử dụng nhận dạng toàn cầu, IMSI.Mật mã hóa được thực hiện giữa thuê bao (USIM) và RNC và bảo mật người sử dụng được thực hiện giữa thuê bao và VLR/SGSN
Các thuộc tính cần bảo mật là:
- Nhận dạng thuê bao
- Vị trí hiện thời của thuê bao
- Số liệu người sử dụng (cả truyền thoại lẫn số liệu đều được giữ bí mật)
- Số liệu báo hiệu
1.3.3 Toàn Vẹn
Đôi khi ta cần kiểm tra bản tin gốc, mặc dù bản tin này có thể được nhận
từ một phía đã được nhận thực, xong nó vẫn có thể bị giả mạo Để khắc phục vấn đề này cần có bảo vệ toàn vẹn, không chỉ bảo mật bản tin mà cần phải đảm bảo rằng đây là bản tin chính thống
Phương pháp để bảo vệ toàn vẹn trong mạng di động băng thông rộng là tạo ra các con dấu bổ sung cho các bản tin Các con dấu này có thể được tạo ra tại các nút biết được các khóa, được rút ra từ một khóa chủ biết trước (K) Các khóa này được lưu trong USIM và AuC.Bảo vệ toàn vẹn đặc biệt cần thiết, vì mạng phục vụ thường được khai thác bởi một nhà khai thác khác với nhà khai thác của thuê bao
Thuộc tính cần được bảo vệ toàn vẹn là các bản tin báo hiệu
Cần lưu ý rằng tại lớp vật lý, các bit được kiểm tra tính toàn vẹn bằng cách kiểm tra tổng CRC _ Cyclic Redundancy Check (kiểm tra vòng dư) Xong
Trang 2222
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
các biện pháp này chỉ đƣợc thực hiện để đạt đƣợc các cuộc truyền thông số liệu không mắc lỗi trên giao diện vô tuyến, chứ không giống nhƣ toàn vẹn mức truyền tải
Trong Wimax ngay cả khi thực hiện cuộc gọi khẩn cũng cần thực hiện thủ tục nhận thực.Nhƣng nếu nhận thực bị sự cố (do không có USIM hoặc do không
có thỏa thuận chuyển mạng) kết nối vẫn sẽ đƣợc thiết lập.Cuộc gọi sẽ chỉ bị hủy nếu tính bảo mật và toàn vẹn thất bại
1.3.4 Một số giải pháp an ninh trong Wimax
Nhƣ đã đề cập, hệ thống mạng di động ngày càng phát triển kéo theo vấn
đề an toàn an ninh mạng đang là vấn đề cấp bách Việc tấn công vào hệ thống mạng ngày càng gia tăng Nó cho thấy, chúng ta vẫn chƣa thực sự mạnh trong việc bảo mật an toàn thông tin Một khi các hacker đánh vào hệ thống có thông tin, cơ sở dữ liệu sẽ gây thiệt hại nặng về kinh tế, chính trị và các lợi ích khác
hậu quả nặng nề hơn
Sau đây là các biện pháp tiêu biểu:
Trang 2323
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
CHƯƠNG II: KỸ THUẬT XÁC THỰC VÀ MÃ HÓA DỮ LIỆU TRONG CÔNG NGHỆ WIMAX
2.1 Thuật toán xác thực
2.1.1 Thuật toán mã hóa khóa công khai ( RSA)
2.1.1.1 Giới thiệu thuật toán
Thuật toán được Ron Rivest, Adi Shamir và Len Adleman mô tả lần đầu tiên vào năm 1977 tại Học viện Công nghệ Massachusetts (MIT) Tên của thuật toán lấy từ 3 chữ cái đầu của tên 3 tác giả
Trước đó, vào năm 1973, Clifford Cocks, một nhà toán học người Anh làm việc tại GCHQ, đã mô tả một thuật toán tương tự.Với khả năng tính toán tại thời điểm đó thì thuật toán này không khả thi và chưa bao giờ được thực nghiệm.Tuy nhiên, phát minh này chỉ được công bố vào năm 1997 vì được xếp vào loại tuyệt mật
Thuật toán RSA ([1],[2],[3]) được MIT đăng ký bằng sáng chế tại Hoa Kỳ vào năm 1983 (Số đăng ký 4.405.829) Bằng sáng chế này hết hạn vào ngày 21 tháng 9 năm 2000 Tuy nhiên, do thuật toán đã được công bố trước khi có đăng
ký bảo hộ nên sự bảo hộ hầu như không có giá trị bên ngoài Hoa Kỳ Ngoài ra, nếu như công trình của Clifford Cocks đã được công bố trước đó thì bằng sáng chế RSA đã không thể được đăng ký
Mô tả sơ lược:
Thuật toán RSA có hai khóa: khóa công khai (hay khóa công cộng)
và khóa bí mật (hay khóa cá nhân) Mỗi khóa là những số cố định sử dụng trong quá trình mã hóa và giải mã.Khóa công khai được công bố rộng rãi cho mọi người và được dùng để mã hóa.Những thông tin được mã hóa bằng khóa công khai chỉ có thể được giải mã bằng khóa bí mật tương ứng.Nói cách khác, mọi người đều có thể mã hóa nhưng chỉ có người biết khóa cá nhân (bí mật) mới có thể giải mã được
Ta có thể mô phỏng trực quan một hệ mật mã khoá công khai như sau: Bob muốn gửi cho Alice một thông tin mật mà Bob muốn duy nhất Alice có thể đọc được Để làm được điều này, Alice gửi cho Bob một chiếc hộp có khóa đã
mở sẵn và giữ lại chìa khóa Bob nhận chiếc hộp, cho vào đó một tờ giấy viết thư bình thường và khóa lại (như loại khoá thông thường chỉ cần sập chốt lại, sau khi sập chốt khóa ngay cả Bob cũng không thể mở lại được-không đọc lại hay sửa thông tin trong thư được nữa) Sau đó Bob gửi chiếc hộp lại cho Alice
Trang 2424
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
Alice mở hộp với chìa khóa của mình và đọc thông tin trong thư Trong ví dụ này, chiếc hộp với khóa mở đóng vai trò khóa công khai, chiếc chìa khóa chính
là khóa bí mật
2.1.1.2 Thuật toán
Giả sử Alice và Bob cần trao đổi thông tin bí mật thông qua một kênh không
an toàn (ví dụ như Internet) Với thuật toán RSA, Alice đầu tiên cần tạo ra cho mình cặp khóa gồm khóa công khai và khóa bí mật theo các bước sau:
1 Chọn 2 số nguyên tố lớn p và q với 𝑝 ≠ 𝑞, lựa chọn ngẫu nhiên và độc lập
Các số nguyên tố thường được chọn bằng phương pháp thử xác suất
Các bước 4 và 5 có thể được thực hiện bằng giải thuật Euclid mở rộng (xem thêm: số học môđun)
Bước 5 có thể viết cách khác: Tìm số tự nhiên x sao cho
𝑑 = 𝑥 𝑝−1 𝑞−1 +1𝑒 cũng là số tự nhiên Khi đó sử dụng giá trị
Trang 2525
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
d: số mũ bí mật (cũng gọi là số mũ giải mã)
Một dạng khác của khóa bí mật bao gồm:
p và q, hai số nguyên tố chọn ban đầu,
d mod (p-1) và d mod (q-1) (thường được gọi là dmp1 và dmq1),
(1/q) mod p (thường được gọi là iqmp)
Dạng này cho phép thực hiện giải mã và ký nhanh hơn với việc sử dụng định
lý số dư Trung Quốc (tiếng Anh: Chinese Remainder Theorem - CRT) Ở dạng này, tất cả thành phần của khóa bí mật phải được giữ bí mật
Alice gửi khóa công khai cho Bob, và giữ bí mật khóa cá nhân của mình.Ở đây, p và q giữ vai trò rất quan trọng.Chúng là các phân tố của n và cho phép tính d khi biết e Nếu không sử dụng dạng sau của khóa bí mật (dạng CRT) thì p
và q sẽ được xóa ngay sau khi thực hiện xong quá trình tạo khóa
Mã hóa
Giả sử Bob muốn gửi đoạn thông tin M cho Alice Đầu tiên Bob chuyển
M thành một số m < n theo một hàm có thể đảo ngược (từ m có thể xác định lại M) được thỏa thuận trước Quá trình này được mô tả ở phần #Chuyển đổi văn bản rõ
Lúc này Bob có m và biết n cũng như e do Alice gửi Bob sẽ tính c là bản
mã hóa của m theo công thức:
Trang 26Chọn e = 3 thoả điều kiện 3 và 20 là cặp số nguyên tố cùng nhau
Với e = 3, xác định đƣợc d = 7 vì ed = 3*7 = 1 mod 20 Thật ra, có nhiều giá trị d thỏa mãn yêu cầu này, nhƣng để cho đơn giản, ta chọn giá trị nhỏ nhất Khi đó, ta xác định đƣợc cặp khóa nhƣ sau:
Khóa công khai: (N, e) = (33, 3)
Khóa bí mật: (N, d) = (33, 7)
Giả sử, user B muốn gửi thông tin M = 15 cho user A, dựa trên khóa công khai của A, B thực hiện nhƣ sau:
C = Me mod N = 153 mod 33 = 3375 mod 33 = 9 mod 33
Khi đó, thông tin mật gửi cho A là C = 9
Khi nhận đƣợc thông tin này, A giải mã bằng khóa riêng (d = 7) nhƣ sau:
M = Cd mob N = 97 mod 33 = 4.782.969 mod 33 = 15 mod 33
Nhƣ vậy, thông tin giải mã đƣợc là M = 15, đúng với thông tin gốc ban đầu
Trang 27mã không cần tới khóa hay chỉ cần khóa mã hóa vẫn chưa được loại trừ An toàn của các thuật toán này đều dựa trên các ước lượng về khối lượng tính toán để giải các bài toán gắn với chúng Các ước lượng này lại luôn thay đổi tùy thuộc khả năng của máy tính và các phát hiệntoán học mới
Mặc dù vậy, độ an toàn của các thuật toán mật mã hóa khóa công khai cũng tương đối đảm bảo Nếu thời gian để phá một mã (bằng phương pháp duyệt toàn bộ) được ước lượng là 1000 năm thì thuật toán này hoàn toàn có thể dùng
để mã hóa các thông tin về thẻ tín dụng - Rõ ràng là thời gian phá mã lớn hơn nhiều lần thời gian tồn tại của thẻ (vài năm)
Nhiều điểm yếu của một số thuật toán mật mã hóa khóa bất đối xứng đã được tìm ra trong quá khứ.Thuật toán đóng gói ba lô là một ví dụ Nó chỉ được xem là không an toàn khi một dạng tấn công không lường trước bị phát hiện Gần đây, một số dạng tấn công đã đơn giản hóa việc tìm khóa giải mã dựa trên việc đo đạc chính xác thời gian mà một hệ thống phần cứng thực hiện mã hóa
Vì vậy, việc sử dụng mã hóa khóa bất đối xứng không thể đảm bảo an toàn tuyệt đối Đây là một lĩnh vực đang được tích cực nghiên cứu để tìm ra những dạng tấn công mới
Một điểm yếu tiềm tàng trong việc sử dụng khóa bất đối xứng là khả năng
bị tấn công dạng kẻ tấn công đứng giữa (man in the middle attack): kẻ tấn công lợi dụng việc phân phối khóa công khai để thay đổi khóa công khai Sau khi đã giả mạo được khóa công khai, kẻ tấn công đứng ở giữa 2 bên để nhận các gói tin, giải mã rồi lại mã hóa với khóa đúng và gửi đến nơi nhận để tránh bị phát hiện Dạng tấn công kiểu này có thể phòng ngừa bằng các phương pháp trao đổi khóa an toàn nhằm đảm bảo nhận thực người gửi và toàn vẹn thông tin
2.1.1.3.2 Ưu điểm
Phương pháp mã hóa khóa công khai (public key cryptography) đã giải quyết
Trang 2828
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
được vấn đề của phương pháp mã hóa khóa bí mật là sử dụng hai khóa public key và private key Public key được gửi công khai trên mạng, trong khi đó private key được giữ kín Public key và private key có vai trò trái ngược nhau, một khóa dùng để mã hóa và khóa kia sẽ dùng để giải mã
Phương pháp này còn được gọi là mã hóa bất đối xứng (asymmetric cryptography) vì nó sử dụng hai khóa khác nhau để mã hóa và giải mã dữ liệu Phương pháp này có rất nhiều thuật toán mã hoá khác nhau được sử dụng như hệ mật RSA (tên của ba nhà phát minh ra nó: Ron Rivest, Adi Shamir và Leonard Adleman), hệ mật RABTN, hệ mật ELGAMAL, hệ mật xếp ba lô Merkl – Hellman, hệ mật McEliece…
Mỗi kỹ thuật mật mã hóa khóa công khai có những đặc điểm riêng và có ưu điểm nhược điểm khác nhau tuỳ thuộc vào ứng dụng cụ thể Riêng RSA là một trong các giải thuật mã hóa bất đối xứng được dùng thông dụng nhất cho đến ngày hôm nay (ra đời năm 1977 tại MIT), RSA được đặt tên từ ba nhà khoa học phát minh ra nó: Ron Rivest, Adi Shamir, và Leonard Adleman Nó được dùng hàng ngày trong các giao dịch thương mại điện tử qua web browser (SSL), PGP, dùng cho chữ ký số (digital signature) đảm bảo tính toàn vẹn của các thông điệp khi lưu chuyển trên Internet, phân phối & cấp phát các secret keys…
2.1.1.4 Đặc trưng của hệ mật RSA
Hệ mật RSA có các đặc trưng sau:
Không cần phải thiết lập một kênh bảo vệ với những thể thức phức tạp, rườm
rà để truyền khoá như trong hệ mã bí mật (hệ mật mã đối xứng)
Khóa mã hoá (n; e) là công khai, vì thế bằng cách đặt khoá này vào một địa chỉ được công bố công khai (không phải dùng một kênh truyền bí mật) Ta đã biết: nếu có khoá công khai không dễ gì để tìm được khoá riêng d trong thời gian chấp nhận được vì vậy không cần phải dùng một kênh bí mật để truyền khoá
Cặp khoá công khai được tạo ra theo một phương pháp đặc biệt có quan hệ với nhau và được chọn trong nhiều khoá có thể (trong đó nếu khoá này dùng để
mã hoá thì khoá kia dùng để giải mã)
Dựa vào khoá công khai (n; e) để tính khoá riêng, khoá riêng d được tính bằng cách giải phương trình đồng dư Khoá cùng cặp (n; d) được giữ bí mật còn được gọi là khoá riêng Vậy ứng với một cặp p, q có thể chọn được nhiều bộ khoá công khai (n; e; d) theo quan hệ chỉ ra và vai trò của e và d có thể xem là tương đương Nếu (n; e) là công khai thì (n; d) là khoá riêng và ngược lại nếu (n; d) là công khai thì (n; e) là khoá riêng
Mọi người trong hệ thống nếu nhận được bản mật C thì cũng không thể biết
Trang 2929
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
đƣợc bản rõ P Với việc chỉ biết khoá mã hoá ke và căn cứ vào các thông tin về
thuật toán thì không thể tìm ra khó giải mã kd trong thời gian chấp nhận đƣợc
(kể cả dùng hệ thống hiện đại nhất để tính toán)
Với các ví dụ nêu trên, chúng dễ dàng hiểu đƣợc sơ đồ mã hoá khoá công
khai RSA nhƣ trong hình 6:
Nguồn cặp khoá của B
Khoá công khai Khoá bí mật
C = Pe b mod n P = C d b mod n Bên gửi A Mã hoá Giải mã Bên nhận B
Hình 6: Quá trình mã hóa khóa công khai RSA
Trang 3030
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
Quá trình gửi và nhận thông điệp (bản tin) được thực hiện như sau:
i) Mỗi thành viên sinh một cặp khoá (n; e; d), một khoá dùng để mã hoá và một khoá dùng để giải mã các thông điệp
ii) Mỗi thành viên công bố khoá công khai của mình (n; e) cho các thành viên khác trong hệ thống biết Khoá cùng cặp (n; d) được giữ lại làm khoá riêng (dùng để giải mã thông điệp)
iii) A gửi thông điệp cho B thì A mã hoá thông điệp bằng khoá công khai (n; eb) của B
iv) Khi B nhận được thông điệp của A gửi, B giải mã thông điệp bằng khoá riêng (n; db) của mình Không một người nào khác có thể giải mã thông điệp ngoài B, vì chỉ có B mới biết khoá riêng của mình
Dựa vào thuật toán RSA đã mô tả trên ta thấy, để sinh được cặp khoá và thực hiện được các phép lập mã, giải mã ta phải giải quyết các bài toán sau đây: i) Tìm các số nguyên lớn để lấy làm các giá trị p và q (mỗi số có độ lớn không ít hơn 100 chữ số thập phân)
ii) Thực hiện nhanh các phép toán số học trên các số rất lớn, đặc biệt là phép mũ với số mũ lớn theo modulo n
2.1.1.5 Độ an toàn của hệ mật RSA
Độ an toàn của hệ mật RSA thể hiện qua hai yếu tố:
Tính mật của hệ RSA, chủ yếu dựa vào việc bảo vệ khoá riêng d và giữ bí mật các số nguyên tố p và q
Tính an toàn của hệ RSA dựa vào độ khó của bài toán RSA và độ phức tạp của bài toán phân tích một số thành các thừa số nguyên tố
Bài toán RSA là bài toán tính căn bậc e môđun n (với n là hợp số): tìm số
m sao cho me=c mod n, trong đó (e, n) chính là khóa công khai và c là bản mã Hiện nay phương pháp triển vọng nhất giải bài toán này là phân tích n ra thừa số nguyên tố Khi thực hiện được điều này, kẻ tấn công sẽ tìm ra số mũ bí mật d từ khóa công khai và có thể giải mã theo đúng quy trình của thuật toán Nếu kẻ tấn công tìm được 2 số nguyên tố p và q sao cho: n = pq thì có thể dễ dàng tìm được giá trị (p-1)(q-1) và qua đó xác định d từ e Chưa có một phương pháp nào được tìm ra trên máy tính để giải bài toán này trong thời gian đa thức (polynomial-time) Tuy nhiên người ta cũng chưa chứng minh được điều ngược lại (sự không tồn tại của thuật toán) Xem thêm phân tích ra thừa số nguyên tố về vấn đề này Tại thời điểm năm 2005, số lớn nhất có thể được phân tích ra thừa số nguyên tố có độ dài 663 bít với phương pháp phân tán trong khi khóa của RSA
có độ dài từ 1024 tới 2048 bít Một số chuyên gia cho rằng khóa 1024 bít có thể sớm bị phá vỡ (cũng có nhiều người phản đối việc này) Với khóa 4096 bít thì
Trang 3131
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
hầu như không có khả năng bị phá vỡ trong tương lai gần Do đó, người ta thường cho rằng RSA đảm bảo an toàn với điều kiện n được chọn đủ lớn Nếu n
có độ dài 256 bít hoặc ngắn hơn, nó có thể bị phân tích trong vài giờ với máy tính cá nhân dùng các phần mềm có sẵn Nếu n có độ dài 512 bít, nó có thể bị phân tích bởi vài trăm máy tính tại thời điểm năm 1999
Hệ RSA chỉ có khả năng bảo mật khi p, q là các số nguyên tố lớn (khoảng hơn 100 chữ số thập phân) và như vậy thì n có khoảng hơn 200 chữ số thập phân Để phân tích một số nguyên cỡ lớn như thế với các thuật toán nhanh nhất hiện nay cùng với hệ thống máy tính hiện đại nhất cũng mất hàng tỷ năm
Do tính đơn giản trong thiết kế nên RSA được ứng dụng rộng rãi và dùng nhiều nhất trong số các thuật toán với khoá công khai Và cũng chính vì thế nó
đã trải qua nhiều thử thách, xem xét, kiểm chứng của cộng đồng về độ an toàn của nó Tuy nhiên, khi dùng RSA thì tốc độ mã hoá rất chậm, vì thế để mã hoá khối dữ liệu lớn là không khả thi Người ta đã tìm ra ứng dụng quan trọng độc đáo khác của RSA hơn là dùng nó để mã hoá:
Tạo vỏ bọc an toàn cho văn bản: dùng RSA để mã hoá khoá bí mật (của các
hệ mật mã có tốc độ mã hoá cao như DES, IDEA…) và dùng khoá bí mật đó để
mã hoá dữ liệu, bên gửi chỉ gửi đến cho bên nhận một bộ: khoá bí mật được mã hoá bằng RSA và dữ liệu được mã hoá bằng khóa bí mật Như vậy các hệ mã đối xứng khắc phục tốc độ mã hoá của RSA, còn RSA khắc phục khâu yếu nhất của
mã hoá đối xứng là bảo đảm chuyển giao an toàn chìa khoá mã cho người nhận Xác thực chủ thể: Ta đã biết trong hệ mật mã khoá công khai thì mọi người đều biết khoá công khai của từng cá thể trong hệ thống, như vậy liệu có thể có một cá thể này đã mạo danh một cá thể khác để gửi thông điệp đến một cá thể thứ ba trong hệ thống, điều này hoàn toàn có thể xảy ra, vậy làm thế nào để thông điệp được gửi đi có một chữ ký xác nhận của người gửi, để người nhận có thể biết đích xác rằng mình nhận của ai và người gửi cũng không thể thoái thác được trách nhiệm của văn bản mình đã gửi đi (chẳng hạn như một đơn đặt hang với số lượng lớn), đây chính là vấn đề xác thực chủ thể trong trao đổi thông tin điện tử Hai chìa khoá công khai và khoá riêng trong hệ RSA là có vai trò ―đối xứng‖ nhau theo nghĩa nếu cái này dùng để mã hoá thì cái kia được dùng để giải
mã và ngược lại Vậy nếu A dùng khoá bí mật để mã hoá văn bản gửi đi thì B dùng khóa công khai của A để giải mã văn bản, điều đó chứng tỏ A đã xác nhận
ký vào văn bản
2.1.1.6 Quản lý khoá của hệ mật mã RSA
Một trong các vai trò chính của mã khoá công khai là giải quyết vấn đề phân phối khoá Khi sử dụng mã hoá khoá công khai, chúng ta cần phân biệt hai khái niệm sau:
Trang 3232
Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/
i) Phân phối các khoá công khai
Trang 3333
ii) Sử dụng mã hoá khoá công khai để phân phối khoá bí mật
i) Phân phối khoá công khai
Trong lịch sử mật mã đã có nhiều đề xuất về phương pháp phân phối khoá công khai, những phương án này có thể chia thành các nhóm sau:
Khai báo công khai
Sử dụng thư mục khóa công khai
Trung tâm quản lý khoá công khai
Sử dụng chứng chỉ khoá công khai
a) Phương pháp khai báo công khai
Đặc điểm của mã hoá khoá công khai là khoá công khai được công bố công khai Do vậy, nếu có một thuật toán được chấp nhận rộng rãi, như RSA, bất kỳ thành viên nào cũng có thể thông báo khoá công khai của mình để cho các thành viên khác được biết
Giải pháp này là khá thích hợp, nhưng có nhược điểm là bất kỳ ai cũng có thể giả mạo một khoá công khai Có nghĩa là một người sử dụng nào đó có thể mạo danh cá thể B và gửi một khoá công khai cho các thành viên khác Các thành viên khác cứ tưởng đấy là khoá công khai của B nên đã gửi các thông điêp cho B (giả mạo), và như thế là kẻ giả mạo đàng hoàng đọc được hết các thông điệp mã hoá gửi cho B, ngoài ra còn có thể sử dụng các khoá giả xác thực cho đến khi cá thể B phát hiện ra sự giả mạo đó và thông báo cho các thành viên khác
b) Phương pháp sử dụng thư mục công khai
Việc duy trì và tổ chức một thư mục công khai thuộc về một tổ chức được tin cậy nào đó Một lược đồ như vậy bao gồm các yếu tố sau:
Tổ chức có nhiệm vụ duy trì thư mục, mỗi thành viên có một entry (định danh, khoá) trong thư mục
Mỗi thành viên đăng ký một khoá công khai với tổ chức quản lý thư mục.Mỗi thành viên có thể thay thế một khoá công khai bất cứ lúc nào khi cảm thấy khoá riêng bị lộ
Cơ quan quản lý công bố toàn bộ thư mục và có nhiệm vụ cập nhật thư mục một cách định kỳ
Mọi thành viên đều có thể truy nhập vào thư mục bất cứ lúc nào, vì thế việc truyền thông xác thực an toàn (từ cơ quan quản lý đến các thành viên) phải mang tính bắt buộc
c) Trung tâm quản lý khoá công khai
Việc phân phối khoá công khai được an toàn cao hơn nếu cung cấp các kiểm
Trang 3434
soát chặt chẽ khi phân phối khoá công khai từ thư mục
Một cơ quan trung tâm duy trì một thư mục khoá công khai Mỗi thành viên đều biết khoá công khai của trung tâm quản lý khoá công khai, nhưng chỉ có trung tâm này biết khoá riêng cùng cặp
Quá trình trao đổi thông tin bí mật diễn ra như sau:
i) A gửi một thông điệp có gán nhãn thời gian cho cơ quan quản lý khoá công khai, yêu cầu khoá công khai hiện thời của B
ii) Cơ quan quản lý trả lời bằng một thông điệp Thông điệp này được mã hoá bằng khoá riêng dauth của cơ quan quản lý bao gồm:
- Khoá công khai eb của B (A có thể dùng nó để mã hoá các thông điệp gửi cho B)
- Yêu cầu gốc (request) – A so khớp yêu cầu này với yêu cầu A đã gửi
đi trước đó, nhờ đó A có thể biết yêu cầu gốc có bị sửa đổi trước khi
cơ quan quản lý nhận được hay không
- Nhãn thời gian gốc – cho phép A xác định được rằng: đây không phải
là một thông điệp cũ mà là thông điệp có chứa khoá công khai hiện thời của B
iii) A lưu giữ khoá công khai của B và sử dụng nó để mã hoá một thông điệp gửi cho B, thông điệp này chứa tên của A (IDA) và một giá trị (được gọi
là nonce) N1 để nhận dạng giao dịch này
iv) B lấy khoá công khai của A từ cơ quan quản lý khoá (tương tự như A đã lấy khoá công khai của B)
Như thế là A và B đã chuyển giao khoá công khai một cách an toàn, và họ có thể gửi và nhận tin của nhau
Tuy nhiên hai bước sau đây được bổ sung thêm xem như là tuỳ chọn:
B gửi thông điệp cho A, thông điệp này được mã hoá bằng khoá ea và có chứa N1 của A và một nonce mới N2 do B sinh ra Do chỉ có B mới có thể giải mã thông điệp và sự có mặt của N1 trong thông điệp đảm bảo rằng B chính là người A đang liên lạc
A trả lại N2 cho B bằng khoá công khai của B, đảm bảo với B rằng A chính là người đang liên lạc với B
d) Phương pháp sử dụng chứng chỉ khoá công khai
Việc phân phối khoá công khai là khá hấp dẫn Tuy nhiên dễ bị giả mạo (do mỗi đầu vào bao gồm tên và khoá công khai trong một thư mục do cơ quan quản lý duy trì)
Trang 3535
Một giải pháp mới lựa chọn là dùng chứng chỉ Các thành viên sử dụng chứng chỉ này để trao đổi khoá mà không cần liên lạc với cơ quan quản lý khoá công khai Mỗi chứng chỉ chứa một khoá công khai và các thông tin khác Nó được một
cơ quan quản lý chứng chỉ tạo ra và phát hành cho các thành viên Mỗi thành viên thông báo khoá công khai của mình cho các thành viên khác thông qua chứng chỉ Chứng chỉ được định nghĩa là một ―tài liệu chứa một công bố được chứng thực, như là sự khẳng định đúng đắn về một điều gì đó‖ Trong lĩnh vực điện tử, chứng chỉ là một tài liệu chứa một tập hợp thông tin có chữ ký số của một người có thẩm quyền và người này được cộng đồng những người sử dụng chứng chỉ công nhận và tin cậy
Chứng chỉ số là một tệp tin điện tử được sử dụng để nhận diện một cá nhân, một máy chủ, một công ty hoặc một vài đối tượng khác và gắn định danh của đối tượng đó với một khóa công khai Giống như bằng lái xe, hộ chiếu, chứng minh thư hay những giấy tờ nhận diện cá nhân thông thường khác, chứng chỉ số cung cấp bằng chứng cho sự nhận diện của một đối tượng Hệ mã khoá công khai sử dụng chứng chỉ số để giải quyết vấn đề mạo danh
Để lấy được chứng chỉ số bạn cần phải thực hiện các công việc đăng ký họ tên, địa chỉ và những thông tin cần thiết khác với nơi được gọi là nhà cung cấp chứng chỉ số (CA), một tổ chức có thẩm quyền xác nhận định danh và cấp các chứng chỉ
số Họ có thể là một thành phần thứ ba đứng độc lập hoặc các tổ chức tự vận hành phần mềm cấp chứng chỉ số của mình Các phương pháp để xác định định danh phụ thuộc vào các chính sách mà CA đặt ra Thông thường, trước khi cấp chứng chỉ số, CA sẽ công bố các thủ tục cần phải thực hiện cho các loại chứng chỉ số
Hệ thống chứng chỉ khoá công khai (CA) làm việc như sau: CA phát hành chứng chỉ cho những người muốn trao đổi tin mật Mỗi chứng chỉ gồm có một khoá công khai và thông tin nhận dạng chủ thể của chứng chỉ Chủ thể của chứng chỉ là cá thể nắm giữ khoá riêng tương ứng gọi là thuê bao của CA Các chứng chỉ được CA ký bằng khoá riêng của CA
Đặc trưng quan trọng của chứng chỉ là: ―Các chứng chỉ có thể được phát hành
mà không cần phải bảo vệ thông qua các dịch vụ an toàn truyền thông để đảm bảo
bí mật, xác thực và tính toàn vẹn‖ Bởi vì các chứng chỉ có khả năng tự bảo vệ bằng chữ ký số của CA
Lợi ích của chứng chỉ khoá công khai là một người sử dụng có thể có được một
số lượng lớn các khoá công khai của các thành viên khác một cách tin cậy chỉ cần thông qua khoá công khai CA
Trang 3636
Giấy chứng nhận Certificate X.509:
Một trong những mẫu ký xác nhận được sử dụng phổ biến là mẫu X.509 được định nghĩa bới ISO/IFC/ITU Khuông dạng chứng chỉ X.509 gồm 3 phiên bản: phiên bản 1 ra đời năm 1988, phiên bản 2 năm 1993 và phiên bản 3 năm 1996 Ở dạng đơn giản nhất, X509 chứa các thông tin sau:
Phiên bản của bằng chứng thực
Số hiệu của bằng chứng thực
Tên thuật toán ký xác nhận
Tên người ký: tên của CA phát hành
Thời gian có hiệu lực: ngày bắt đầu và hết hạn của chứng chỉ
Định danh của người được chứng thực: chủ thể nắm giữ khoá riêng
Thông tin về khoá công khai của chủ thể được cấp giấy chứng nhận: khóa công khai và tên thuật toán sử dụng khoá công khai
Chữ ký (mã băm cho các trường dữ liệu, mã hoá chữ ký bằng khoá riêng) Chi tiết hơn về cấu trúc của X 509 có thể xem tại website:
http://www.ietf.cnri.reston.va.us/ids.by.wg/x.509.html
ii) Sử dụng mã hoá khoá công khai để phân phối khoá mật
Merkle đưa ra một lược đồ rất đơn giản: Nếu A muốn trao đổi thông tin mật với
B, thủ tục được thực hiện tuần tự theo các bước sau:
i) A tạo ra một cặp khoá (ea, da) và truyền thông điệp cho B biết khoá công khai ea và tên của A (IDA)
ii) B tạo ra một khoá bí mật Ks, gửi khoá bí mật cho A: Ee a (Ks )
iii) A tính toán để biết khoá bí mật Ks bằng việc giải mã thông điệp
D da (E ea (K ))= K S (như vậy chỉ có A và B biết được khoá Ks)
iv) A huỷ bỏ ea, da và B huỷ bỏ ea
Bây giờ A và B có thể trao đổi với nhau bằng khoá phiên Ks Sau khi trao đổi xong cả A và B cùng huỷ bỏ KS, như vậy theo cách này thì việc đảm bảo bí mật là rất tốt vì trước và sau khi liên lạc không có khoá nào tồn tại Rủi ro lộ khoá là rất nhỏ Tại thời điểm này việc liên lạc là đảm bảo an toàn Đây là một giao thức hấp dẫn
Tuy nhiên, thủ tục này có điểm yếu là dễ bị tấn công chủ động Nếu một cá thể
C chủ động muốn nghe trộm thông tin trao đổi giữa A và B, C sẽ tìm cách kiểm soát đường truyền thông giữa hai người C có thể dàn xếp cuộc truyền thông mà không bị phát hiện, theo hình thức sau đây:
i) A tạo ra một cặp khoá (ea, da) và truyền một thông điệp cho B, thông điệp
Trang 3737
là cặp (ea, IDA)
ii) C chặn lấy thông tin, tạo ra một cặp khoá (ec, dc) và truyền cho B một thông điệp là cặp (ec, IDA)
iii) B tạo ra một khoá bí mật KS, gửi khoá bí mật đó cho A: Ee c = Ks
iv) C chặn lấy thông điệp, tính K s = Ddc (Ee c (Ks )) Sau đó truyền cho A:
E e a (K s )
Cuối cùng là A và B cùng biết Ks, nhưng không biết rằng Ks đã bị C tóm lấy vì vậy mọi thông tin trao đổi giữa A và B đều bị C nghe trộm một cách đơn giản Vậy liệu có cách nào để chống lại các kiểu tấn công chủ động cũng như thụ động không Ta hãy xem xét việc phân phối khoá theo giao thức sau, nó sẽ thực hiện được điều đó
Quá trình phân phối khoá bí mật bảo đảm tính bí mật và tính xác thực: Ở đây ta xem như A và B đã trao đổi khoá công khai mà trong các lược đồ trước đã nêu Các bước tiếp theo diễn ra như sau:
i) A sử dụng khoá công khai của B để mã hoá thông điệp gửi cho B: E eb (N1,
ID A ) trong đó N1 được sử dụng để nhận diện giao dịch này, IDA là tên
C = E eb (N2 , E da (K s )) qua thông điệp
iv) B tính toán D e a (Ddb ( C )) để khôi phục khoá bí mật đồng thời xác thực
rằng A đang làm việc với B
2.1.1.7 Các ứng dụng của RSA
i) Trong chữ kí điện tử
Thuật toán RSA còn được dùng để tạo chữ ký số cho văn bản.Giả sử Alice muốn gửi cho Bob một văn bản có chữ ký của mình.Để làm việc này, Alice tạo ra một giá trị băm (hash value) của văn bản cần ký và tính giá trị mũ d mod n của nó (giống như khi Alice thực hiện giải mã).Giá trị cuối cùng chính là chữ ký điện tử của văn bản đang xét Khi Bob nhận được văn bản cùng với chữ ký điện tử, anh ta tính giá trị mũ e mod n của chữ ký đồng thời với việc tính giá trị băm của văn bản Nếu 2 giá trị này như nhau thì Bob biết rằng người tạo ra chữ ký biết khóa bí mật của Alice và văn bản đã không bị thay đổi sau khi ký
Trang 38Giả sử một người sử dụng trong hệ thống được cấp phát một Token, khi đăng nhập vào hệ thống, người sử dụng này sẽ được yêu cầu nhập tên đăng nhập (VD: JSMITH) và một dẫy số được gọi là Passcode Dẫy số này gồm có hai thành phần là số PIN và dẫy số xuất hiện trên token (Token code) của người đó vào thời điểm đăng nhập Tất cả các thông tin (Tên đăng nhập và Passcode) này được thành phần RSA ACE/Agent tiếp nhận và thành phần này sẽ lại gửi những thông tin này đến RSA ACE/Server.Server này sẽ có số PIN của người sử dụng trong cơ sở dữ liệu của nó.Ngoài ra, nó cũng có một cơ chế cho phép nó tính toán ra một dẫy số của nó ACE/Server sẽ ghép số PIN trong cơ sở dữ liệu và dẫy số của nó với nhau sau đó
Trang 3939
Hình 8: Ứng dụng của RSA trong thẻ ATM của ngân hàng
so sánh với Passcode của người sử dụng cung cấp Nếu hai dẫy số này giống nhau, người dùng được xác thực là hợp lệ và được quyền đăng nhập vào mạng.Trong trường hợp ngược lại, quyền truy cập sẽ bị từ chối.Hoặc được chấp nhận truy cập hoặc không, những thông tin này sẽ được RSA ACE/Server gửi đến người sử dụng thông qua thành phần RSA ACE/Agent
Cơ chế để RSA ACE/Server tính toán được một dẫy số của nó để so khớp với dẫy số trên token của người sử dụng là tương đối đơn giản Như được minh hoạ trên hình 4, để tạo ra được dẫy số thay đổi sau mỗi khoảng thời gian, một token sẽ có những thành phần sau:
· Một đồng hồ bên trong (Tính theo giờ UTC)
· Một số Seed có độ dài 64 hoặc 128 bits
· Thuật toán tạo số giả ngẫu nhiên
Với hai yếu tố là thời gian và số seed, sau khi áp dụng thuật toán tạo số giả ngẫu nhiên, token sẽ có một con số xuất hiện trên màn hình của nó (token code) và sau một khoảng thời gian xác định, thuật toán này lại tạo ra được một con số khác ứng với thời gian đó Thuật toán này luôn tạo được những con số thay đổi theo thời gian và không lặp lại Do vậy, việc dự đoán trước con số sẽ xuất hiện tiếp theo hoặc con số sẽ xuất hiện tại một thời điểm nào đó trong tương lai là không thể (chỉ
có thể thực hiện được khi có số seed và thuật toán)
Trang 4040
Khi gán một token cho một người sử dụng, quản trị mạng cũng sẽ phải cập nhật số seed của token đó vào cơ sở dữ liệu của RSA ACE/Server tương ứng với người dùng.Trên RSA ACE/Server cũng có một chương trình chạy thuật toán tạo
số giả ngẫu nhiên giống với trên token Khi có yêu cầu đăng nhập của người sử dụng, căn cứ vào tên đăng nhập, căn cứ vào đồng hồ hệ thống, căn cứ vào số seed được lưu trong cơ sở dữ liệu, khi chạy thuật toán tạo số giả ngẫu nhiên, RSA ACE/Server cũng sẽ có được một dẫy số giống với dẫy số trên token của người sử dụng tại cùng một thời điểm Dãy số này được ghép với số PIN của người sử dụng trong cơ sở dữ liệu, RSA ACE/Server có thể kiểm tra được người sử dụng này có hợp lệ hay không
Điều gì sẽ xảy ra khi đồng hồ trên token và đồng hồ trên RSA ACE/Server không giống nhau?Trong thực tế thì điều này luôn luôn xảy ra Tuy vậy, RSA ACE/Server luôn ghi nhận lại một sự sai lệch về thời gian giữa nó và từng token khi đăng nhập và RSA ACE/Server sẽ chấp nhận bất cứ passcode nào của người sử dụng nằm trong khoảng thời gian sai lệch đó Ví dụ, nếu RSA ACE/Server ghi nhận sự sai lệch của một token với nó là một phút thì nó sẽ chấp nhận bất cứ passcode nào của người sử dụng mà rơi vào khoảng thời gian trước thời điểm đăng nhập một phút, tại đúng thời điểm và sau thời điểm đó một phút Khoảng thời gian sai lệch tối đa cho phép có thể thay đổi được trên RSA ACE/Server
Như được mô tả trên hình 2, token của người sử dụng có rất nhiều loại khác nhau Căn cứ vào nhu cầu thực tế, một tổ chức khi triển khai giải pháp xác thực RSA SecurID có thể lựa chon thiết bị phù hợp nhất với yêu cầu của mình Thành phần RSA ACE/Agent có thể được cài lên rất nhiều điểm khác nhau trong hệ thống Nó có thể được cài lên các điểm truy cập vào mạng như gateway, RAS, VPN, cũng như cài lên các server Windows, Novell, và được tích hợp sẵn trong tất cả các sản phẩm của các hãng sản xuất lớn như Microsoft, Nokia, CheckPoint, Cisco, Nortel Thành phần RSA ACE/Server thực sự là thành phần quan trọng nhất của giải pháp Để có thể hoạt động được liên tục và thuận lợi cho quá trình xác thực người sử dụng, RSA ACE/Server có thể được cài lên trên nhiều server trong đó có một máy đóng vai trò chính (ACE/Server Primary ) và các máy còn lại đóng vai trò bản sao (ACE/Server Replica) Các máy bản sao có thể được đặt phân tán và luôn được đồng bộ với máy chính.Khi máy chính không thể hoạt động, một máy bản sao nào đó có thể được nâng cấp lên thành máy chính.Quá trình hoạt động không hề bị dán đoạn