Bluetooth cho phộp nhận thực thiết bị cũng như đảm bảo độ tin cậy của bản tin. Để đạt được điều này, cần định nghĩa 2 loại khoỏ:
Khoỏ liờn kết: gồm 128 bit, cũn gọi là khoỏ nhận thực, dựng để nhận thực thiết bị và tạo ra khoỏ mật mó. Cú 4 loại khoỏ liờn kết:
- Khoỏ đơn vị (unit key): là khoỏ bỏn cố định, được tạo ra trong thiết bị Bluetooth
(BD – Bluetooth device) mà khụng cần tương tỏc với cỏc BD khỏc. Khoỏ đơn vị cú thể dựng làm khoỏ liờn kết giữa cỏc cặp BD nếu bộ nhớ khả dụng trong BD khụng cho phộp tạo/lưu trữ một khoỏ kết hợp.
- Khoỏ khởi tạo: là khoỏ tạm thời chỉ cú ý nghĩa với một cặp thiết bị BD. Khoỏ khởi
tạo sẽ bị xoỏ sau khi tạo ra khoỏ kết hợp.
- Khoỏ kết hợp: là khoỏ bỏn cố định được tạo ra cho mọi cặp BD tương tỏc với nhaụ - Khoỏ chủ (master key): là khoỏ dựng chung giữa vài BD trong một mạng nhỏ
(piconet), và được dựng để cấu hỡnh phỏt đa hướng.
Khoỏ mật mó: Khoỏ này được dẫn xuất từ khoỏ liờn kết hiện tại, được dựng để mật mó hoỏ bản tin và cú thể dài n x 8 bit (n = 1 đến 16).
Khoỏ bỏn cố định là khoỏ được lưu trong bộ nhớ khụng bay hơi và cú giỏ trị ngay cả sau khi kết cuối phiờn trao đổị Một phiờn được định nghĩa là khoảng thời gian mà một BD được kết nối đến một piconet. Một piconet là một tập hợp cỏc BD sử dụng cựng một kờnh. Mặt khỏc, một khoỏ tạm thời chỉ cú giỏ trị trong phiờn hoạt động đú. Khoỏ đơn vị và khoỏ kết hợp là bỏn cố định, trong khi khoỏ khởi tạo và khoỏ chủ là khoỏ tạm thờị
Nhận thực và mật mó hoỏ
Nhận thực thiết bị trong Bluetooth dựa trờn cơ chế “tớn hiệu kiểm tra – trả lời” như minh hoạ trong hỡnh 6.8. Bờn thẩm tra BDA tạo ra một số ngẫu nhiờn RANDA và gửi nú đến bờn yờu cầu kiểm tra BDB. Bờn thẩm tra và bờn yờu cầu kiểm tra tạo ra số nhận thực SRES dựng thuật toỏn E1. Bờn yờu cầu kiểm tra truyền số nhận thực SRES cho bờn thẩm trạ Nếu số này trựng với số nhận thực được tạo ra ở bờn thẩm tra thỡ phớa bờn yờu cầu kiểm tra sẽ được nhận thực. Hỡnh 6.8 mụ tả quỏ trỡnh nhận thực và mật mó hoỏ trong Bluetooth. Hỡnh 6.9 mụ tả quỏ trỡnh mó hoỏ và giải mật mó trong Bluetooth.
Hình 6.8 Nhận thực trong Bluetooth
Hình 6.9 Mật mó hoỏ và giải mật mó trong Bluetooth 6.10.3.2 IEEE 802.11 WLAN
Cơ chế bảo mật trong IEEE 802.11 WLAN được gọi là bảo mật tương đương hữu tuyến WEP (Wired Equivalent Privacy). WEP khụng dựng một kỹ thuật tạo khoỏ cụ thể nào và nú cũng khụng thực hiện nhận thực bản tin. Dịch vụ bảo mật cơ bản của WEP là kiểm tra độ tin cậy bản tin dựa trờn khoỏ 40 bit, vector khởi tạo IV 24-bit và thuật toỏn RC4. Tuy nhiờn, 2 khoỏ này quỏ ngắn và khụng đủ để đỏp ứng yờu cầu bảo mật hiện naỵ
Hiện nay cú 3 dịch vụ bảo mật mới được dựng trong WEP: (1) quản lý và phõn phối khoỏ, (2) nhận thực dữ liệu, và (3) chống tấn cụng ngược lạị Ngoài thuật toỏn bắt buộc là RC4, ta cũng cú thể dựng 2 thuật toỏn tuỳ chọn là tiờu chuẩn mật mó tiờn tiến (AES) và một thuật toỏn khỏc gọi là WEP2. Ngoài việc nhận thực dữ liệu
lớp liờn kết, ta cũng cú thể dựng cơ chế nhận thực ở lớp cao hơn. Những cải tiến này đó giải quyết triệt để cỏc vấn đề của WEP.
6.10.4 Giao thức bảo mật TCP/IPsec
Cỏc giao thức bảo mật được đề cập dưới đõy gồm IPsec, TLS và IKẸ IPsec là giao thức dựng để thực hiện cỏc dịch vụ bảo mật như nhận thực và mật mó hoỏ ở lớp IP cũng như ở lớp vận chuyển. TLS cũng cú một giao thức bắt tay để thiết lập phiờn bảo mật giữa cỏc bờn tham gia truyền thụng. IKE là một giao thức dựng để trao đổi khoỏ bảo mật. Ngoài mục đớch chớnh là giao thức trao đổi khoỏ, nú cũng cú khả năng thiết lập phiờn bảo mật giữa cỏc đầu cuối IPsec.
6.10.4.1 IPsec
IPsec là một giao thức bảo mật đó được IETF tiờu chuẩn hoỏ, cung cấp cỏc dịch vụ bảo mật ở lớp mạng (lớp IP) cho truyền thụng trờn nền IP. IPsec gồm 2 giao thức bảo mật: tiờu đề nhận thực (AH) và tải bảo mật đúng gúi (ESP), mỗi thành phần cung cấp một số dịch vụ bảo mật nhất định. AH cung cấp cỏc dịch vụ bảo mật như hoàn toàn phi kết nối (connectionless integrity), nhận thực nguyờn bản dữ liệu, dịch vụ điều khiển truy cập. ESP cung cấp cỏc dịch vụ bảo mật như kiểm tra độ tin cậy bản tin, hoàn toàn phi kết nối tuỳ chọn, nhận thực nguyờn bản dữ liệu, dịch vụ chống quay ngược và điều khiển truy cập. AH và ESP định nghĩa 2 tiờu đề riờng biệt để gửi đi trong Gúi tin IP .
AH
IPsec AH cung cấp dịch vụ hoàn toàn phi kết nối, nhận thực nguyờn bản dữ liệu, cỏc dịch vụ tuỳ chọn như điều khiển truy cập và chống quay ngược. Với IPsec AH, ta chốn một tiờu đề nhận thực vào giữa tiờu đề IP và tiờu đề UDP hoặc TCP. Khuụn dạng của tiờu đề này như trong hỡnh 6.10ạ Bộ nhận thực thực tế, như MAC hoặc chữ ký số, được gửi trong trường cuối cựng, gọi là “dữ liệu nhận thực” . Trường số thứ tự dựng để chống việc quay ngược lạị Chỉ số cỏc tham số bảo mật (SPI), là một số 32 bit tuỳ ý do phớa đớch gỏn cho, kết hợp với địa chỉ IP của đớch và giao thức bảo mật (AH) để tạo ra duy nhất một sự kết hợp bảo mật (SA).
Tiờu đề kế
tiếp Độ dài tải Dự trữ SPI
Số thứ tự
Dữ liệu nhận thực (số biến đổi của cỏc từ 32 bit)
(a) Tiờu đề IP AH Tiờu đề UDP/TCP Tải UDP/TCP Dữ liệu nhận thực (b) Tiờu đề IP AH Tiờu đề UDP/TCP Tải UDP/TCP (c)
Hình 6.10 (a) AH (b) AH trong chế độ vận chuyển (c) AH trong chế độ xuyờn hầm
IPsec AH cú thể tồn tại ở 2 chế độ: chế độ vận chuyển và chế độ đường hầm, như minh hoạ trong hỡnh 6.10 b,c. Chế độ vận chuyển được dựng khi SA tồn tại giữa 2 EP truyền thụng với nhaụ Chế độ đường hầm, dựng IP trong bỏ bọc IP, được dựng khi cú ớt nhất 1 trong cỏc điểm đầu cuối của SA là cổng bảo mật chứ khụng phải là EP giao tiếp thụng thường. Trong cả 2 trường hợp, toàn bộ gúi tin IP đều được nhận thực.
ESP
IPsec ESP cung cấp dịch vụ kiểm tra độ tin cậy bản tin, và cỏc dịch vụ tuỳ chọn như hoàn toàn phi kết nối, nhận thực nguyờn bản dữ liệu, dịch vụ chống quay ngược và điều khiển truy cập. Với IPsec ESP, một tiờu đề ESP được chốn vào giữa tiờu đề IP và tiờu đề UDP/TCP. Ngoài ra cũn gắn thờm một đuụi ESP phớa sau tải UDP/TCP. Khuụn dạng của tiờu để và đuụi ESP như trong hỡnh 6.11ạ Giống như AH, bộ 3 số (địa chỉ IP của đớch, ESP, SPI) được dựng để nhận dạng ESP SA, và trường số thứ tự được dựng để chống quay ngược. Do cú một số thuật toỏn mật mó hoỏ, gọi là cỏc thuật toỏn mó húa khối (chỳng hoạt động trờn cỏc khối cú kớch thước cố định), tải UDP/TCP cú thể phải được đệm thờm để đạt kớch thước là số nguyờn lần kớch thước của khối đơn vị. Giống như trong trường hợp AH, ESP cú thể hoạt động ở cả chế độ vận chuyển và chế độ đường hầm. ESP cũng cú nhận thực tuỳ chọn, và số nhận thực (MAC hoặc chữ ký số) được gửi đi trong trường “dữ liệu nhận thực”. Tuy nhiờn, so sỏnh giữa hỡnh 6.10 và 6.11 ta sẽ thấy, trong khi IPsec AH nhận thực toàn bộ gúi tin IP thỡ IPsec ESP khụng nhận thực tiờu đề IP
Hình 6.11 (a) ESP và (b) ESP trong chế độ vận chuyển (c) ESP trong chế độ thụng hầm.
6.10.4.2 TLS
Giao thức bảo mật phổ biến nhất được dựng trong cỏc mạng IP (cụ thể là Internet) là giao thức SSL (Secure Socket Layer). SSL chưa được tổ chức tiờu chuẩn hoỏ nhưng đó gần như là tiờu chuẩn trong cụng nghiệp. Giao thức TLS dựa trờn SSL và được IETF tiờu chuẩn hoỏ. TLS cú 2 lớp chớnh:
- Lớp bắt tay để thoả thuận kết nối bảo mật
- Lớp bản ghi để cung cấp cỏc dịch vụ bảo mật dựng cỏc liờn kết bảo mật do lớp bắt tay tạo rạ
Việc nhận thực một chiều hoặc hai chiều dựng cơ chế khoỏ cụng cộng diễn ra trong lớp bắt taỵ Cỏc dịch vụ bảo mật cơ bản do lớp bản ghi cung cấp là (1) kiểm tra độ tin cậy dựng mật mó khoỏ đối xứng (DES, RC4 ...) và (2) kiểm tra tớnh toàn vẹn bản tin sử dụng cơ chế MAC đó khoỏ, như tập san bản tin 5 (MD5). Giao thức bản ghi TLS cần một lớp vận chuyển tin cậy như TCP để hoạt động. Khi dựng UDP để vận chuyển, ta khụng thể dựng TLS do nú là luũng phương tiện thời gian thực.
Cú 2 chế độ bắt tay:
Bắt tay hoàn toàn (hỡnh 6.12). Dựng bản tin ClientHello và ServerHello để trao đổi cỏc khả năng bảo mật của TLS client và server, và cuối phiờn trao đổi sẽ thiết lập cỏc thuộc tớnh sau: phiờn giao thức, ID phiờn, hệ mật mó, phương phỏp nộn
và cỏc số ngẫu nhiờn. Cỏc bản tin sau đú được gửi đi để trao đổi khoỏ. Một bản tin ChangeCipherSpec và một bản tin kết thỳc sẽ được gửi đi để chỉ thị cỏc thuộc tớnh đó được thiết lập trong phiờn bắt tay sẽ được dựng để bảo mật cho việc trao đổi bản tin. Dấu * trong lưu đồ thể hiện bản tin đú là tuỳ chọn.
ClientHello ServerHello Xác nhận Trao đổi khoá server
Yêu cầu xác nhận ServerHelloDone
Xác nhận Trao đổi khoá client Xác minh chứng nhận ChangeCipherSpec Hoàn thành ChangeCipherSpec Hoàn thành Dữ liệu ứng dụng B Server A Client
Hình 6.12 TLS bắt tay hoàn toàn
Bắt tay rỳt gọn cú thể dựng khi client muốn khụi phục lại hoặc tăng gấp đụi phiờn làm việc hiện tại – phiờn này được xỏc định nhờ ID phiờn.
6.10.5 Cỏc thuật toỏn bảo mật 6.10.5.1 Cỏc thuật toỏn mật mó
Cỏc mật mó được dựng trong cỏc giao thức như IPsec hoặc TLS để cung cấp cỏc dịch vụ tin cậỵ Cú 2 loại thuật toỏn: mật mó khối và mật mó dũng. Mật mó khối gồm DES, 3-DES, Blowfish, Rijndael, RC2 và RC5 hoạt động ở cỏc khối đầu vào cú kớch thước xỏc định để tạo ra cỏc đoạn mó (văn bản đó được mó hoỏ) cú cựng kớch thước như nhaụ Kớch thước của khối phụ thuộc vào thuật toỏn mật mó đang dựng. Thụng thường, kớch thước khối là 64, 128, 196, 256 bit. Bộ mật mó theo luồng, gồm RC4, hoạt động với từng bit đơn hoặc từng byte đơn lẻ.
Cỏc chế độ hoạt động
Do bộ mật mó khối mỗi thời điểm xử lý một khối nờn nú cú thể xõu chuỗi cỏc thụng tin đầu vào trong một chu kỳ hoạt động của bộ mật mó khối thành cỏc khối thụng tin mật mó liờn tiếp nhaụ Cú 4 chế độ thực hiện quỏ trỡnh này: quy tắc mó điện tử (ECB), xõu chuỗi khối mó hoỏ (CBC), phản hồi mật mó (CFB) và phản hồi đầu ra (OFB).
DES
DES là thuật toỏn mật mó phổ biến nhất hiện nay, đó được Viện tiờu chuẩn và cụng nghệ quốc gia (NIST) của Mỹ chuẩn hoỏ năm 1977. DES là bộ mật mó khối đối xứng, tức là mật mó và giải mó dựng cựng một khoỏ. Núi chung, mật mó hoỏ đối xứng nhanh hơn khỏ nhiều so với cỏc cỏch mật mó hoỏ khụng đối xứng (mật mó và giả mó dựng cỏc khoỏ khỏc nhau), do đú, được sử dụng rộng rói cho việc mật mó hoỏ luồng phương tiện và cỏc mật mó khối khỏc. Với DES, một khối dài 64 bit được dựng làm đầu vào, dựng khoỏ 56 bit để tạo ra một khối đầu ra 64 bit. Chiều dài khoỏ chuẩn là 64 bit nhưng cỏc bit thứ 8 dựng để kiểm tra chẵn lẻ nờn chiều dài thức tế của khoỏ là 56 bit. DES bộ 3 (làm tăng tớnh bảo mật DES) hiện được sử dụng ngày càng nhiềụ DES bộ 3 khoỏ kộp dựng 2 khoỏ 56 bit khỏc nhau, trong khi DES bộ 3 ba khoỏ dựng 3 khoỏ 56 bit khỏc nhau[5].
AES
Để thay thế DES bằng thuật toỏn mạnh hơn, NIST chọn bộ mật mó hoỏ Rijndael là AES. AES là bộ mật mó hoỏ khối đối xứng hoạt động với khối cú kớch thước 128, 195 hoặc 256 bit. Khoỏ cũng cú thể dai 128, 195 hoắc 256 bit, khụng phụ thuộc vào chiều dài khốị
Thuật toỏn RSA
Thuật toỏn RSA (Rivest, Shamir, Adleman) là bộ mật mó khối khụng đối xứng phổ biến nhất, cũn được gọi là thuật toỏn khoỏ cụng cộng, dựng một khoỏ cụng cộng của phớa thu để mật mó và phớa thu dựng một khoỏ riờng để giải mật mó. Do RSA là thuật toỏn khoỏ cụng cộng, nú chậm hơn so với cỏc thuật toỏn đối xứng như DES, 3-DES…Do đú, nú khụng được dựng để mật mó hoỏ cho cỏc luồng hỡnh ảnh, nhưng thường được dựng cho cỏc hoạt động như trao đổi khoỏ. Thuật toỏn này như sau:
C = Pe mod n là thuật toỏn mật mó P = Cd mod n là thuật toỏn giải mật mó
Trong đú P là biểu diễn nhị phõn của dữ liệu gốc, C là dữ liệu đó mật mó hoỏ. Khoỏ cỏ nhõn (d,n) và khoỏ cụng cộng là (e,n).
6.10.5.2 Thuật toỏn phõn nhỏ và chữ ký
Cỏc hàm phõn nhỏ (hash function) là lừi của cỏc dịch vụ nhận thực và kiểm tra tớnh nguyờn vẹn. Một hàm phõn nhỏ lấy đầu vào là 2 số độ dài tuỳ ý để tạo ra cỏc khối đầu ra cú kớch thước cố định, gọi là cỏc tập bản tin. Cỏc đầu ra kớch thước nhỏ này dựng làm dấu nhận dạng cho đầu vàọ Núi cỏch khỏc, nếu 2 đầu vào khỏc nhau cựng đưa qua một thuật toỏn phõn nhỏ, ta sẽ thu được cựng một đầu ra cú kớch thước nhỏ như nhaụ Tớnh năng này của hàm phõn nhỏ được gọi là cỏch trỏnh xung đột.
Bản chất một chiều của hàm phõn nhỏ cú nghĩa là với một đầu ra cho trước, việc xỏc định được đầu vào là cực kỳ khú.
Hàm phõn nhỏ cú thể dựng theo cỏc cỏch khỏc nhau để tạo ra cỏc dịch vụ nhận thực/kiểm tra độ nguyờn vẹn. Vớ dụ, hàm phõn nhỏ kết hợp với một khoỏ bớ mật để tạo ra cỏc MAC. Hai cơ chế phổ biến là MAC mó khoỏ (keyed MAC) và hash MAC (HMAC). Khi kết hợp với một khoỏ cỏ nhõn, chỳng được dựng để tạo ra cỏc chữ ký số. Hai loại thuật toỏn chữ ký số phổ biến là thuật toỏn RSA và thuật toỏn chữ ký số (DSA).
Nếu đầu ra của hàm phõn nhỏ và khoỏ cỏ nhõn của người dựng là đầu vào phự hợp với thuật toỏn tạo chữ ký, ta sẽ thu được một chữ ký số. Chữ ký số này cú thể dựng để nhận thực, kiểm tra tớnh nguyờn vẹn của dữ liệu và từ chối chấp nhận. Ta cú thể nhận thực được vỡ chỉ người giữ khoỏ cỏ nhõn mới cú thể tạo ra được chữ ký số. Việc từ chối chấp nhận cũng tương tự, vỡ người nhận khụng giữ khoỏ cỏ nhõn. Ta kiểm tra được tớnh nguyờn vẹn của bản tin vỡ mọi sự thay đổi bản tin trong khi vận chuyển sẽ dẫn đến mất mối liờn hệ giữa tập bản tin đó được lưu và tập bản tin tớnh được ở phớa thụ
MD5
MD5 là hàm phõn nhỏ phổ biến nhất. MD5 lấy đầu vào là một số kớch thước tuỳ ý và tạo ra một tập bản tin 128 bit. Thuật toỏn MD5 hoạt động nội bộ với cỏc đầu vào là 512 bit, nhưng bản thõn thuật toỏn cũng cú chức năng ngắt đầu vào tuỳ ý thành cỏc khối 512 bit. Trong thuật toỏn chuẩn cũng cú chức năng chốn đệm và chức năng chỉ thị độ dàị Hiện nay, thuật toỏn MD5 đó cú thể khắc phục được cỏc tấn cụng bảo mật nhất định (như cỏc lực tỏc động mạnh hoặc cỏc dạng giải mó khỏc), nhờ đú nú được ỏp dụng trong cỏc ứng dụng cụ thể, thay cho hàm phõn nhỏ SHA-1.
Thuật toỏn phõn nhỏ bảo mật
SHA-1 được NIST chuẩn hoỏ năm 1995. Nú lấy đầu vào là cỏc chuỗi cú độ dài bất kỳ và tạo ra cỏc tập bản tin dài 160 bit. Như với MD5, SHA-1 hoạt động nội bộ, lấy cỏc đầu vào là cỏc khối 512 bit. SHA-1 cũng cú chức năng ngắt dóy đầu vào chiều dài tuỳ ý thành cỏc khối 512 bit để vừa với trường đệm và trường chiều dàị So với MD5, SHA-1 cú thể chịu được lực tỏc động mạnh và cỏc dạng giả mật mó khỏc