1. Trang chủ
  2. » Công Nghệ Thông Tin

Phát triển giao thức trao đổi khóa an toàn dựa trên hai bài toán khó

8 108 1

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 8
Dung lượng 680,04 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Trong các nghiên cứu trước đây, chúng tôi đã công bố giải pháp kết hợp chữ ký số và giao thức trao đổi khóa để nâng cao khả năng bảo mật và đạt được những tính chất cần thiết của giao thức trao đổi khóa an toàn. Trong bài báo này, chúng tôi đề xuất một biến thể của lược đồ chữ ký số trước đây và xây dựng giao thức trao đổi khóa mới dựa trên biến thể này.

Trang 1

PHÁT TRIỂN GIAO THỨC TRAO ĐỔI KHÓA AN TOÀN

DỰA TRÊN HAI BÀI TOÁN KHÓ

Đỗ Việt Bình1*, Nguyễn Hiếu Minh2

Trong các nghiên cứu trước đây, chúng tôi đã công bố giải pháp kết hợp chữ ký

số và giao thức trao đổi khóa để nâng cao khả năng bảo mật và đạt được những tính chất cần thiết của giao thức trao đổi khóa an toàn Trong bài báo này, chúng tôi đề xuất một biến thể của lược đồ chữ ký số trước đây và xây dựng giao thức trao đổi khóa mới dựa trên biến thể này

Từ khóa: Xác thực; Bài toán khó; Trao đổi khóa; giao thức; Chữ ký số

1 TỔNG QUAN

Giao thức trao đổi khóa Diffie-Hellman (DH) không cung cấp khả năng xác thực giữa các bên tham gia [3] Do đó, nhiều giao thức đã được đưa ra nhằm khắc phục nhược điểm này [1] [2] [5] [8] Tuy nhiên các lược đồ này vẫn còn tồn tại những hạn chế và chỉ dựa trên một bài toán khó [5-7]

Trong công bố trước đây [4], chúng tôi đã đề xuất việc kết hợp hai lược đồ chữ

ký số RSA và Schnorr, đồng thời xây dựng giao thức trao đổi khóa an toàn DH– MM–KE1 dựa trên lược đồ mới đề xuất này nhằm nâng cao khả năng bảo mật Để nâng cao khả năng bảo mật, chúng tôi đề xuất một biến thể mới của lược đồ RSA– Schnorr, đồng thời xây dựng các giao thức trao đổi khóa an toàn dựa trên giao thức mới này

Trong bài báo này, phần 2 phân tích lược đồ chữ ký số RSA–Schnorr trong công bố trước, đề xuất lược đồ cải tiến khắc phục nhược điểm của lược đồ này Trên cơ sở đó, phần 3 đề xuất giao thức trao đổi khóa an toàn dựa trên hai bài toán khó (DH–MM–KE1) và trình bày khả năng bảo mật của giao thức này Phần 4 tóm tắt các kết quả của bài báo

2 LƯỢC ĐỒ CHỮ KÝ SỐ RSA–SCHNORR

Ở bài báo [4], chúng tôi đã đề xuất lược đồ chữ ký dựa trên hai bài toán khó dựa trên việc kết hợp hai lược đồ chữ ký số RSA và Schnorr Lược đồ này sử dụng hai

số nguyên tố mạnh , ’ và một số nguyên tố = 2 + 1 với = ’ Lược đồ

được thực hiện như Bảng 1:

Bảng 1 Lược đồ chữ ký số RSA-Schnorr

Tạo

khóa

- Tính f( ) = ( − 1)( − 1)

- Chọn ∈ ∗ sao cho là phần tử có cấp bằng trong ∗ thỏa

mãn ≡ 1

Trang 2

Nghiên cứu khoa học công nghệ

Tạp chí Nghiên cứu KH&CN quân sự, Số Đặc san CNTT, 11 - 2018 157

- Chọn số bí mật ∈ ∗, ∈ [1, − 1] và tính =

- Chọn số nguyên ∈ thỏa mãn: ,f( ) = 1

- Tính sao cho: ∗ = 1 f( )

- Khóa công khai là ( , , ), khóa bí mật là ( , )

- Chọn ngẫu nhiên số bí mật với 1 < <

- Tính =

- Tính = ( || )

- Tính = ( − )

- Chữ ký là ( , )

Xác

thực

- Tính ∗ =

- Tính ∗ = ∗

- Tính ∗ = ( || ∗)

- Nếu = ∗ chữ ký hợp lệ

- Ngược lại nếu ≠ ∗ chữ ký không hợp lệ

Trong bài báo này, chúng tôi đề xuất một biến thể của lược đồ trên nhằm nâng cao khả năng bảo mật Lược đồ này được mô tả như trong Bảng 2:

Bảng 2 Biến thể lược đồ chữ ký số RSA-Schnorr

Tạo

khóa

- Chọn hai số nguyên tố mạnh và

- Tính = ’ và = 2 + 1 thỏa mãn là số nguyên tố

- Tính f( ) = ( − 1)( − 1)

- Chọn , ∈ ∗ sao cho , là các phần tử có cấp bằng trong ∗ thỏa mãn ≡ 1 và ≡ 1

- Chọn hai số bí mật , ∈ ∗ với , ∈ [1, − 1]

- Tính =

- Chọn số nguyên ∈ thỏa mãn: ,f( ) = 1

- Tính sao cho: ∗ = 1 f( )

- Khóa công khai là ( , , ), khóa bí mật là ( , , )

- Chọn ngẫu nhiên hai số , bí mật với 1 < , <

Trang 3

- Tính = ( || )

- Tính = ( − )

- Tính = ( − )

- Chữ ký là ( , , )

Xác

thực

- Tính ∗ =

- Tính ∗ =

- Tính ∗ = ∗ ∗

- Tính ∗ = ( || ∗)

- Nếu = ∗ chữ ký hợp lệ

- Ngược lại nếu ≠ ∗ chữ ký không hợp lệ

Tính đúng đắn của giao thức:

=> ∗ = ( || ∗) = ( || ) =

Với việc sử dụng hai phần tử , , khóa bí mật ( , , ) và hai thành phần ngẫu nhiên ( , ), người tấn công không thể tìm được các thành phần bí mật bằng việc giải bài toán logarithm rời rạc

3 GIAO THỨC DH–MM–KE1 3.1 Mô tả giao thức

Dựa trên biến thể của lược đồ chữ ký số RSA–Schnorr, chúng tôi đề xuất giao thức trao đổi khóa an toàn dựa trên hai bài toán khó DH–MM–KE1 Giao thức này hoạt động như sau:

1) Chọn tham số:

Các tham số của hai bên A và B được tính như biến thể lược đồ RSA–Schnorr trình bày trong phần 2

Với người gửi A: = 2 + 1, trong đó = , và là các số nguyên tố mạnh với kích thước ít nhất là 1024 bit Các tham số khóa của người A: Khóa công khai ( , ) và khóa bí mật ( , )

Với người nhận B: = 2 + 1, trong đó = , và là các số nguyên tố mạnh với kích thước ít nhất là 1024 bit Các tham số khóa của người B: Khóa công khai ( , ) và khóa bí mật ( , )

} = {0, 1, … , − 1} và { } = {0, 1, … , − 1}

Trang 4

Nghiên cứu khoa học công nghệ

Tạp chí Nghiên cứu KH&CN quân sự, Số Đặc san CNTT, 11 - 2018 159

Tìm tập = ∩ Tính = ( , )

Tìm , là phần tử có cấp bằng trong ∗ và có cấp bằng trong ∗ thỏa

A tính = ; B tính = và đăng ký các giá trị này với nhà cung cấp dịch vụ

2) A thực hiện như sau:

- Lựa chọn , ∈ [2, − 1]

- Gửi ( , ) cho B

3) B thực hiện như sau:

- Chọn ∈ [1, − 1] và tính =

- Chọn , ∈ [2, − 1]

- Tính toán khóa bí mật được chia sẻ = ( || )

- Tính = ( || || || || || )

- Gửi lại các giá trị ( , , , , , ) cho người A

4) A sau đó tiếp tục thực hiện như sau:

- Tính =

- Tính khóa bí mật chia sẻ = ( || )

- Xác thực ( , , )

- Tính = ( || || || || || )

- Gửi ( , , ) cho B

5) B thực hiện:

- Xác thực ( , , )

Giao thức DH–MM–KE1 được mô tả như trong hình Hình 1

Trang 5

Tính đúng đ

3.2 Đ

Tính ch

trư

Ch

khóa phiên

công không th

Do đó, giao th

Tính đúng đ

Ta có:

3.2 Đ

Tính ch

trước (Perfect Forward Secrecy)

hứng minh:

khóa phiên

Khóa phiên theo hư

Còn B tính nh

Do đó, khi m

công không th

Do đó, giao th

Tính đúng đ

Ta có:

3.2 Độ an to

Tính ch

ớc (Perfect Forward Secrecy)

ứng minh:

khóa phiên

Khóa phiên theo hư

Còn B tính nh

Do đó, khi m

công không th

Do đó, giao th

Tính đúng đ

Ta có:

ộ an to

Tính chất 2.1:

ớc (Perfect Forward Secrecy)

ứng minh:

khóa phiên

Khóa phiên theo hư

Còn B tính nh

Do đó, khi m

công không th

Do đó, giao th

Tính đúng đ

=

ộ an to

ất 2.1:

ớc (Perfect Forward Secrecy)

ứng minh:

khóa phiên

Khóa phiên theo hư

Còn B tính nh

ph

Do đó, khi m

công không th

Do đó, giao th

Tính đúng đắn của giao thức:

=

ộ an toàn c

ất 2.1: Giao th

ớc (Perfect Forward Secrecy)

ứng minh: Ta c

Khóa phiên theo hư

= Còn B tính nh

= phụ thuộc v

Do đó, khi m

công không thể tính bất kỳ khóa phi

Do đó, giao thức n

ắn của giao thức:

àn của giao thức

Giao th

ớc (Perfect Forward Secrecy)

Ta c

và Khóa phiên theo hư

= Còn B tính như sau:

=

ụ thuộc v

Do đó, khi một khóa d

ể tính bất kỳ khóa phi

ức này đ

ắn của giao thức:

ủa giao thức

Giao th

ớc (Perfect Forward Secrecy)

Ta cần chứng minh nếu khóa bí mật d

và Khóa phiên theo hư

(

ư sau:

(

ụ thuộc v

ột khóa d

ể tính bất kỳ khóa phi

ày đ

ắn của giao thức:

=>

ủa giao thức

Giao thức DH

ớc (Perfect Forward Secrecy)

ần chứng minh nếu khóa bí mật d đư

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

||

ư sau:

||

ụ thuộc vào giá tr

ột khóa d

ể tính bất kỳ khóa phi

ày đảm bảo tính an to

Hình

ắn của giao thức:

=>

ủa giao thức

ức DH

ớc (Perfect Forward Secrecy)

ần chứng minh nếu khóa bí mật d được tạo ra tr

ớng từ A )

)

ào giá tr

ột khóa dài h

ể tính bất kỳ khóa phi

ảm bảo tính an to

Hình

ắn của giao thức:

=

ủa giao thức

ức DH

ớc (Perfect Forward Secrecy)

ần chứng minh nếu khóa bí mật d

ợc tạo ra tr ớng từ A ) =

) =

ào giá tr

ài h

ể tính bất kỳ khóa phi

ảm bảo tính an to

Hình 1

ắn của giao thức:

=

=

ủa giao thức

ức DH–MM

ớc (Perfect Forward Secrecy)

ần chứng minh nếu khóa bí mật d

ợc tạo ra tr

ớng từ A t

ào giá trị ngẫu nhi

ài hạn (

ể tính bất kỳ khóa phi

ảm bảo tính an to

Giao th

= (

MM

ớc (Perfect Forward Secrecy)

ần chứng minh nếu khóa bí mật d

ợc tạo ra tr tới B đ ( ||

( ||

ị ngẫu nhi

ạn (

ể tính bất kỳ khóa phi

ảm bảo tính an to

Giao th

||

MM–KE1 đ

ần chứng minh nếu khóa bí mật d

ợc tạo ra trước đó vẫn không bị ảnh h

ới B đ

|

|

ị ngẫu nhi

ể tính bất kỳ khóa phiên đ

ảm bảo tính an to

Giao thức DH

| )

KE1 đ

ần chứng minh nếu khóa bí mật d

ớc đó vẫn không bị ảnh h

ới B được A tính nh

ị ngẫu nhi ,

ên đã s

ảm bảo tính an toàn đ

ức DH

) =

KE1 đảm bảo tính chất an to

ần chứng minh nếu khóa bí mật d

ớc đó vẫn không bị ảnh h

ợc A tính nh

ị ngẫu nhiên

),

ã sử dụng

àn đ

ức DH

) =

ảm bảo tính chất an to

ần chứng minh nếu khóa bí mật d

ớc đó vẫn không bị ảnh h

ợc A tính nh

ên (

ử dụng

àn đầy đủ về phía tr

ức DH–MM

( |

ảm bảo tính chất an to

ần chứng minh nếu khóa bí mật d

ớc đó vẫn không bị ảnh h

ợc A tính nh

và ,

ử dụng

ầy đủ về phía tr

MM

||

ảm bảo tính chất an to

ần chứng minh nếu khóa bí mật d

ớc đó vẫn không bị ảnh h

ợc A tính nh

ử dụng

ầy đủ về phía tr

MM–KE1

)

ảm bảo tính chất an to

ần chứng minh nếu khóa bí mật dài h

ớc đó vẫn không bị ảnh h

ợc A tính như sau:

và ) c

ầy đủ về phía tr

KE1

= ) =

ảm bảo tính chất an to

ài hạn của A v

ớc đó vẫn không bị ảnh h

ư sau:

)

) ) của A v

ầy đủ về phía tr

KE1

= )

ảm bảo tính chất an to

ạn của A v

ớc đó vẫn không bị ảnh h

ư sau:

)

)

ủa A v

ầy đủ về phía trư

ảm bảo tính chất an to

ạn của A v

ớc đó vẫn không bị ảnh hư

ủa A và B b

ước

ảm bảo tính chất an toàn đ

ạn của A v ưởng

à B b bằng (3.1) v

ớc

àn đ

ạn của A và B b

ởng

à B bị lộ, ng ằng (3.1) v

àn đầy đủ về phía

à B b

ị lộ, ng ằng (3.1) v

ầy đủ về phía

à B bị lộ th

ị lộ, ng ằng (3.1) v

ầy đủ về phía

ị lộ th

ị lộ, ngư ằng (3.1) và (3.2)

ầy đủ về phía

ị lộ thì các

(3.1)

(3.2)

ười tấn

à (3.2)

ầy đủ về phía

ì các

(3.1)

(3.2)

ời tấn

à (3.2)

ầy đủ về phía

ì các

(3.1)

(3.2)

ời tấn

à (3.2)

Trang 6

Nghiên cứu khoa học công nghệ

Tạp chí Nghiên cứu KH&CN quân sự, Số Đặc san CNTT, 11 - 2018 161

Tính chất 2.2: Giao thức DH–MM–KE1 thỏa mãn tính chất khóa độc lập

Chứng minh: Trong giao thức DH–MM–KE1, A và B tính khóa phiên và theo công thức (3.1) và (3.2) Có thể thấy, các khóa phiên đều phụ thuộc vào khóa bí mật ( , ) và số ngẫu nhiên ( , ) Điều này có nghĩa là các khóa phiên được tính độc lập

Tính chất 2.3: Giao thức DH–MM–KE1 an toàn với tấn công SSR

Chứng minh: Ta cần chứng minh nếu người tấn công thu được các trạng thái

trung gian trong quá trình thực hiện giao thức cũng không thể tính được khóa bí mật chia sẻ

Theo công thức (3.1) và (3.2), khóa phiên và phụ thuộc vào khóa bí mật ( , ) của A và B

Do đó, khi các số ngẫu nhiên và hoặc các thành phần trung gian khác bị

lộ, người tấn công cũng không thể tính được khóa phiên vì không tính được ( )

Do đó, giao thức DH–MM–KE1 an toàn với tấn công SSR

Tính chất 2.4: Giao thức DH–MM–KE1 an toàn trước tấn công giả mạo khóa thỏa

thuận (key compromise impersonation – KCI)

Chứng minh: Giao thức này sử dụng một quá trình xác thực chung giữa A và B

Do đó, quá trình xác thực sẽ thất bại nếu người tấn công hoạt động và không đồng thời biết về và ( , ) hoặc và ( , )

Do đó, cách duy nhất của người tấn công là tính trực tiếp khóa phiên, giả sử

người tấn công biết khóa bí mật dài hạn của A ( , ) và khóa phiên tạm thời

của B ( ), vì khóa phiên là = ( || ) và người tấn công có thể tính Tuy nhiên, trong trường hợp này, người tấn công vẫn không thể

Do đó, giao thức DH–MM–KE1 an toàn trước tấn công giả mạo khóa thỏa thuận KCI

Tính chất 2.5: Giao thức DH–MM–KE1 an toàn trước tấn công không biết khóa

chia sẻ (unknown key-share)

Chứng minh: Việc xác nhận khóa có thể ngăn chặn tấn công không biết khóa chia

sẻ B xác nhận với A rằng đã nhận được khóa chia sẻ bí mật bằng việc kí khóa này cùng với ( , , , , ) Vì khóa bí mật chia sẻ là một hàm băm một chiều của các số ngẫu nhiên ( , ) của A, A tin rằng nội dung thông điệp không bị lặp và biết rằng nó thực sự là từ phía B B cũng làm những điều tương tự với giống như A

Tính chất 2.6: Giao thức DH–MM–KE1 an toàn dựa trên hai bài toán khó

Chứng minh: Ta cần chứng minh để phá giải giao thức DH–MM–KE1, người tấn

công phải giải quyết đồng thời hai bài toán khó

Trang 7

Trong giao thức DH–MM–KE1, A và B tính khóa chia sẻ và theo công thức (3.1) và (3.2)

Các giá trị này phụ thuộc vào ( , hoặc )

Để tính , người tấn công phải tính được , muốn tính được giá trị của thì lại cần tìm được f( ) mà muốn tìm được f( ) thì lại cần phải giải tiếp bài toán phân tích thành thừa số nguyên tố

Để tính (hoặc ) người tấn công phải tính được giá trị của ( , ) hoặc ( , )

Do đó, để tính được ( , ) hoặc ( , ), người tấn công phải giải bài toán logarithm rời rạc

Như vậy, giao thức DH–MM–KE1 an toàn dựa trên hai bài toán khó

3.3 Đánh giá hiệu quả thuật toán

Độ phức tạp thời gian của giao thức DH–MM–KE1 được trình bày trong Bảng 3

Bảng 3 Độ phức tạp thời gian của giao thức DH–MM–KE1

Giai đoạn Độ phức tạp thời gian

4 KẾT LUẬN

Chúng tôi vừa đề xuất cải tiến lược đồ chữ ký số trước đây và một giao thức trao đổi khóa an toàn dựa trên lược đồ cải tiến này Các giao thức này được xây dựng dựa trên hai bài toán khó, vì vậy, chúng có độ bảo mật cao hơn những giao thức trước đây

TÀI LIỆU THAM KHẢO

[1] Arazi B (1993), “Integrating a key distribution procedure into the digital

signature standard” Electronics Letters; 29: 966-967

[2] Brown D, Menezes A (2001), “A Small Subgroup Attack on Arazi's Key

Agreement Protocol” Bulletin of the ICA;37: 45-50

[3] Diffie W, Hellman M (1976), “New Directions in Cryptography.IEEE

Transactions on Information Theory”; 22: 644-654

[4] Do Viet Binh, Authenticated key exchange protocol based on two hard

Trang 8

Nghiên cứu khoa học công nghệ

Tạp chí Nghiên cứu KH&CN quân sự, Số Đặc san CNTT, 11 - 2018 163

08-2017, trang 147-152

[5] Harn L, Mehta M, Hsin WJ (2004), “Integrating Diffie-Hellman key

exchange into the digital signature algorithm (DSA)” IEEE Communications Letters; 8: 198-200

[6] Jeong IR, Kwon JO, Lee DH (2007), “Strong Diffie-Hellman DSA Key

Exchange” IEEE Communications Letters; 11: 432-433

[7] Liu J, Li J (2010), “A Better Improvement on the Integrated Diffie-Hellman

- DSA Key Agreement Protocol” IEEE Com Letters; 11: 114-117

[8] Nyberg K, Rueppel R (1994), “Weaknesses in some recent key agreement

protocols” Electronics Letters; 30: 26-27

ABSTRACT

DEVELOP A SECURE KEY EXCHANGE PROTOCOL

BASED ON TWO DIFFICULT MATH PROBLEMS

In previous researches, we have proposed a solution of combination between digital signature and key exchange protocol to increase the security and achieve the necessary properties of secure key exchange protocols In this paper, we propose a variant of previous digital signature scheme and develop a new secured key exchange protocol which is based on this variant

Keywords: Authentication; Hard problem; Key exchange; Protocol; Digital signature

Nhận bài ngày 28 tháng 06 năm 2018 Hoàn thiện ngày 09 tháng 10 năm 2018 Chấp nhận đăng ngày 05 tháng 11 năm 2018

Địa chỉ: 1Viện CNTT – Viện KH&CN quân sự;

2Học viện Kỹ thuật mật mã

*Email: binhdv@gmail.com

Ngày đăng: 30/01/2020, 12:10

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w