ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
&&&
Bài tập lớn
Mật mã và an toàn dữ liệu
Đề bài: “ Mã hóa định danh - Indetity based
encryption”
Giảng viên: PGS.TS. Trịnh Nhật Tiến
Học viên thực hiện: Nguyễn Văn Quân,
Khóa: K20-KTPM
Lớp MH: INT 6010 2
Mã HV: 13025178
Hà Nội, Năm 2014
MỤC LỤC
1 GIỚI THIỆU 2
2 KHÁI QUÁT VỀ MÃ HÓA THEO ĐỊNH DANH(INDETITY BASED ENCRYPTION - IBE) 3
3 LƯỢC ĐỒ MÃ HÓA DỰA TRÊN ĐỊNH DANH 4
4 CÁC THUẬT TOÁN SỬ DỤNG TRONG IBE 6
5 BẢO MẬT IBE 7
6 ĐỘ AN TOÀN CỦA IBE 9
7 ƯU ĐIỂM VÀ ỨNG DỤNG CỦA IBE 10
1 Giới thiệu
Công nghệ ngày một phát triển, nhu cầu trao đổi thông tin trên hệ thống điện tử
ngày một phát triên mạnh mẽ. Nhu cầu mã hóa dữ liệu, các tập tin điện tử và thông
tin liên lạc ngày càng cần thiết và khá khó khăn. Công nghệ mã hóa khóa công khai
(PKI) truyền thống đã thực hiện khá tốt việc mã hóa bảo mật thông tin, công nghệ
này đưa ra một số bảo vệ mạnh mẽ nhất cho thông tin điện tử đang sử dụng hiện
nay. Tuy nhiên công nghệ này còn có một số hạn chế như:
danh máy chủ được sử dụng trong cài đặt của các hệ thống IBE khác nhau. Khả
năng tính được các khoá như mong muốn làm cho các hệ thống IBE có các tính
chất khác với các tính chất của các hệ thống khoá công khai truyền thống, những
tính chất này tạo ra các ưu thế thực hành đáng kể trong nhiều tình huống. Bởi vậy,
có một số ít tình huống không thể giải quyết bài toán bất kỳ với các công nghệ khoá
công khai truyền thống, nhưng lại có thể giải quyết được với IBE và sử dụng IBE
có thể đơn giản hơn nhiều về cài đặt và ít tốn kém hơn về nguồn lực để hỗ trợ.
Động lực ban đầu của Shamir cho việc mã hóa dữ liệu dựa trên nhận dạng là
để đơn giản việc quản lý giấy chứng nhận trong các hệ thống e- mail. Khi A muốn
gửi thông tin, dữ liệu cho B ([email protected]) việc đơn giản là A mã hóa thông điệp
của mình bằng cách sử dụng chính chuỗi khó công khai [email protected] . Ở quá trình
nay A không cần đến yêu cầu chứng thực khóa công khai của B. B nhận được email
dã được mã hóa, B chỉ cần liên lạc với bên thứ ba gọi là bộ tạo khóa bí mật (PKG-
private key generator) để xác thực thông tin và nhận khóa riêng bí mật của mình. B
sử dụng khóa riêng này để đọc thông tin A đã gửi cho. Lưu ý rằng không giống như
các cơ sở hạ tầng an toàn e-mail hiện tại, A có thể gửi email mã hóa cho B ngay cả
khi Bob chưa thiết lập giấy chứng nhận khóa công khai của mình.
Trang 3/17
3 Lược đồ mã hóa dựa trên định danh
Một hệ thống IBE có các điểm tương tự với các hệ thống khoá công khai truyền
thống, nhưng cũng có nhiều điểm khác biệt. Trong khi các khoá công khai truyền
thống chứa tất cả các tham số cần thiết để sử dụng khoá, thì để sử dụng một hệ
thống IBE, người sử dụng thông thường cần nhận được một tập các tham số công
khai từ một bên thứ ba tin cậy. Cùng với những tham số này, người sử dụng có thể
tính khoá công khai IBE của người sử dụng bất kỳ khác và dùng nó để mã hoá
thông tin gửi tới người đó. Người nhận thông tin đã được mã hoá bởi IBE sau đó
xác thực theo một cách nào đó với bộ tạo khoá bí mật (PKG- private key
generator). Một bên thứ ba tin cậy tính được khoá bí mật IBE tương ứng với một
khoá công khai IBE cụ thể. Bộ tạo khoá bí mật thường sử dụng thông tin bí mật,
được gọi là bí mật chủ (master secret) cộng với định danh của người sử dụng để
nhận được tin nhắn mã hóa. Tất cả các thông tin liên lạc tiếp theo sẽ được giải mã
bởi khóa riêng ban đầu nhận đựơc đó. Việc giải mã này thực hiện ngay cả khi
người sử dụng đang ẩn. Ngoài ra vì khóa công khai được tạo ra từ việc sử dụng địa
chỉ email của người nhận (Bod) nên Bod không cần thao tác gì khác trước khi
nhận được tin nhắn an toàn từ Charlie
Như vậy ta thấy được sự khác nhau cơ bản của IBE với hệ thống mã hóa
truyền thống như sau:
Trang 5/17
Hình 2: Bảng so sánh về tính chất
4 Các thuật toán sử dụng trong IBE
Trong một lược đồ khoá công khai truyền thống, chúng ta có thể tổng hợp các thuật
toán tham gia vào việc sinh và sử dụng của một cặp khoá bí mật – khóa công khai
gồm thuật toán sinh khoá, thuật toán mã hoá và thuật toán giải mã. Hai thuật toán
phụ thêm, chứng thực khoá và kiểm tra tính hợp lệ của khoá, thường được sử dụng
trong một số trường hợp áp dụng các lược đồ này. Ở IBE để đáp ứng lược đồ như
đã trình bày ở trên trong mỗi lược đồ IBE cũng cần có 4 thuật toán được dùng để
tạo và sử dụng cặp khoá bí mật – khóa công khai. Theo truyền thống, chúng được
gọi là thuật toán thiết lập (setup), thuật toán trích (extraction), thuật toán mã hoá
(encryption) và thuật toán giải mã (decryption).:
Thiết lập: Tạo ra các tham biến hệ thống toàn cầu và một khóa chủ. Đây là
thuật toán để khởi tạo các tham số được cần tới cho các tính toán IBE, bao gồm
bí mật chủ mà bộ tạo khoá bí mật PKG sử dụng để tính ra các khoá bí mật IBE.
Trích: Sử dụng khóa chính để tạo ra các khóa riêng, khóa bí mật tương ứng để
một chuỗi khóa công khai bất kỳ ID € {0,1}*.” “Trích” là thuật toán để tính
một khoá bí mật IBE từ các tham số đã được tạo ra trong bước thiết lập, cùng
với định danh của người sử dụng và sử dụng bí mật chủ của bộ tạo khoá bí mật
PKG để làm việc này
Trang 6/17
Mã hóa: Các tin nhắn mã hóa sử dụng ID khóa công khai và khóa riêng tương
ứng.
Hình 5: Mô hình tấn công IND-IDCCA
Trang 8/17
Ở mô hình này tấn công có thể yêu cầu rất nhiều khóa công khai và nhiều bản giải
mã.Măc dù trong các cuộc tấn công kẻ thù cũng có một số lơi thế tuy nhiên trong
PPT không bị ảnh hưởng đáng kể bởi tham biến bảo mật k.
A(1
k
, l(k)) sẽ cho định danh muc tiêu ID* € {0,1}
l(k)
Thiết lập Setup(1
k
, l(k)) kết quả cho tập các tham số công khai (PK) và khóa
riêng FK ở đây đối thủ chính là PK
Đối thủ A có thể truy vấn rất nhiều giải mã mặc dù có thể không yêu cầu khóa
chủ để định danh một ID. Dẫn tới có thể có nhiều yêu cầu ID (ID*). Tại một
sốđiểm A có thể lấy được hai bản tin nhắn m0, m1 với |m0| = |m1|. A có thể lấy
ngẫu nhiên một bit b nào đó dẫn tới có thể làm thay đổi bản mã do
C∗ Encrypt(params,ID*,M
b
)
A vẫn yêu cầu các giải mã và có thể không yêu cầu định danh ID
Cuối cùng kết quả có thể ra dự đoán là b’
Kết quả thành công nếu b’=b và biểu thị xác suất thành công này bằng công thức
PrA,IBE[Succ] và lợi thế của A: |P
r(A,IBE)
[b=b’]- 1/2| tuy nhiên theo nghiên cứu thì
xác suất này là rất nhỏ
6 Độ an toàn của IBE
Chúng ta cũng biết trong các mục tiêu an toàn thông tin có 5 mục tiêu chính mà
một giải pháp an toàn thông tin có thể đáp ứng: cung cấp tính bí mật, tính toàn vẹn,
giải quyết vấn đề khó khăn và tốn kém nếu triển khai bằng các công nghệ trước
đây. Đặc biệt, những giải pháp này dường như trái với giả thuyết của Geer cho rằng
việc sử dụng mật mã phải có chi phí cao.
Xác nhận khoá hợp lệ, hoặc việc kiểm tra để chắc chắn rằng một khoá cụ thể
còn đang hợp lệ tại thời điểm nào đó trong thời gian sống của nó. Về vấn đề
này để tránh những khó khăn thực thi của việc xác nhận khoá hợp lệ, các hệ
thống IBE thường sử dụng các khoá có thời gian sống ngắn. Cho nên nếu khoá
IBE là hợp lệ chỉ trong 1 ngày, thì chúng ta giả thiết rằng nó là hợp lệ cho cả
ngày đó và không có dự liệu cho việc thu hồi hoặc treo khoá trong giai đoạn
này. Điều này có thể không cung cấp cùng mức chính xác như khả năng ngay
lập tức thu hồi hoặc treo một khoá, nhưng nó làm cho việc xác nhận hợp lệ của
các khoá như vậy là ít quan trọng. Nó cho phép chúng ta xây dựng các hệ thống
đơn giản hơn và chi phí thấp hơn. Khả năng dễ dàng và nhanh chóng tính toán
làm cho các khoá với thời gian sống ngắn có tính thực hành cao trong IBE,
trong khi chúng thường là không có tính thực hành, (mặc dù không phải là
không thể) khi được sử dụng trong một hệ thống dựa trên công nghệ hạ tầng cơ
sở khoá công khai truyền thống.
Khôi phục khoá, khả năng khôi phục một khoá đã bị mất hoặc không sẵn sàng
vì lý do nào đó, là một đặc tính cần thiết giúp cho công nghệ mã hoá thành
công về mặt thương mại. Trong thực tế, phần lớn việc khôi phục khoá được
thực hiện khi các mật khẩu để bảo vệ truy cập tới các khoá bị mất hoặc bị quên
thay cho kịch bản trong đó người chủ của khoá không có mặt, nhưng với IBE
việc sử dụng chính khóa của người nhận để mã hóa nên nhu cầu khôi phục
ngay lập tức là cần thiết.
Trang 10/17
Lưu giữ khóa, các hệ thống IBE chỉ tính các khoá khi cần thiết, nên không có
nhu cầu lưu giữ các khoá nói chung. Thông tin duy nhất cần phải sao lưu là “bí
mật chủ”, được bộ tạo khoá bí mật PKG sử dụng để tính các khoá bí mật IBE.
Quá trình này làm cho các hệ thống IBE đơn giản hơn và dễ dàng hơn trong
nhiều ứng dụng và làm giảm giá thành của việc hỗ trợ và duy trì hệ thống IBE
dạng hạ tầng nào đó để quản lý các định danh, thậm chí nó có thể đơn giản như
các tổ hợp username/password. Các hệ thống phức tạp để quản lý các dạng
tổng quát hơn của định danh có thể sử dụng IBE. Trong đó nhiều nguồn gốc
Trang 12/17
khác nhau của thông tin định danh có thể được kết hợp và được sử dụng để tính
các khoá IBE mà sau đó có thể bắt buộc truy cập tới thông tin nhạy cảm theo
các cách tương ứng với các thẩm quyền mà các tổ hợp khác nhau của các định
danh có thể mang lại. Giống như một thông điệp e-mail có thể được mã hoá
cho nhiều người nhận, người bất kỳ trong số họ có thể giải mã nó, chúng ta có
thể sử dụng IBE để mã hoá thông tin nhạy cảm mà có thể được giải mã bởi
người nào đó thoả mãn một trong những tổ hợp của thông tin định danh đang
tồn tại. Do các xu hướng thay đổi trong cả kinh doanh và công nghệ làm cho
việc bảo vệ dữ liệu bằng mã hoá ngày càng được quan tâm, các tính chất của
IBE làm cho nó đặc biệt hữu ích để giải quyết các bài toán an toàn dữ liệu khác
nhau.
Dường như là các đặc tính của IBE đem lại cho các hệ thống sử dụng công nghệ
này các tính chất thú vị và cho phép tạo ra các giải pháp dễ sử dụng hơn và ít tốn
kém hơn để hỗ trợ so với các giải pháp được cung cấp bởi các công nghệ khoá công
khai truyền thống. Mặt khác, IBE chỉ cung cấp khả năng để mã hoá và không cho
phép tạo ra các chữ ký số. Điều này có nghĩa rằng một giải pháp an toàn thông tin
đầy đủ cung cấp tính bí mật, tính toàn vẹn, tính sẵn sàng, xác thực và chống chối
bỏ, phải là một giải pháp hỗn hợp sử dụng cả IBE và các công nghệ khoá công khai
truyền thống để cung cấp một giải pháp có ưu thế của sức mạnh từng công nghệ.
Các giải pháp như vậy có thể làm giảm giá thành của việc sử dụng mật mã tới mức
có thể chấp nhận để được sử dụng trên một phạm vi rộng lớn, ngược lại với nguyên
lý của Geer rằng bất kỳ việc sử dụng mật mã nào cũng tốn kém. Các giải pháp như
vậy hứa hẹn thúc đẩy các ứng dụng thương mại hiện có của IBE và cũng sẽ thúc
đẩy các ứng dụng của công nghệ trong tương lai.
Trang 13/17
8. Demo chương trình