1. Trang chủ
  2. » Khoa Học Tự Nhiên

Giải pháp nâng cao tỷ lệ mã hóa của sơ đồ mật mã dựa trên mã

5 4 0

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

THÔNG TIN TÀI LIỆU

Nội dung

Thông qua việc sử dụng mã nối tiếp thay thế mã Goppa trong đề xuất gốc, khả năng sửa lỗi của hệ thống được cải thiện một cách đáng kể so với khi sử dụng các mã đơn, điều này thể hiện [r]

(1)

GIẢI PHÁP NÂNG CAO TỶ LỆ MÃ HÓA CỦA SƠ ĐỒ MẬT MÃ

DỰA TRÊN MÃ

PROPOSED SOLUTIONS TO IMPROVE THE CODE RATE OF CODE-BASED CRYPTOGRAPHY

Lê Văn Thái

TÓM TẮT

Bài báo đề xuất hai giải pháp cải tiến hệ mật McEliece, giải pháp sử dụng vector lỗi mang tin giải pháp sử dụng mã nối tiếp thay mã Goppa Các giải pháp đề xuất cho phép tăng tỷ lệ mã hoá đến ~0,8, đạt độ lợi mã hóa 1,7dB, tăng khả sửa lỗi, khả chống nhiễu hệ thống độ bảo mật so với thuật toán đề xuất gốc

Từ khóa: Hệ mật McEliece, sơ đồ mật dựa mã, mã hóa cơng khai, mã Goppa

ABSTRACT

This paper is mainly to analyse the feature of the McEliece cryptosystem, in which it gives a variety of solutions in order to enhace the effect of the algorithm such as using error vector and replace Goppa code which use in the traditional by succeed concatenated coding The algorithm improves the coding rate about ~0.8, gain encoding 1.7dB and the security ability of McEliece algorithm improves more greatly than the traditional

Keywords: McEliece cryptosystem, Code based cryptosystem, Public-key cryptography, Goppa codes

Trường Đai học Công nghiệp Hà Nội Email: thailv@haui.edu.vn Ngày nhận bài: 28/5/2018

Ngày nhận sửa sau phản biện: 30/6/2018 Ngày chấp nhận đăng: 25/10/2018

1 ĐẶT VẤN ĐỀ

Hệ mật McEliece hệ mật mã khóa cơng khai dựa lý thuyết mã hóa đại số, giới thiệu năm 1978 [1] An ninh hệ mật dựa độ khó tốn giải mã theo syndrome chứng minh toán NP đầy đủ [2] Sơ đồ gốc ban đầu đề xuất sử dụng mã Goppa nhị phân thuật toán giải mã Patterson Ưu điểm bật hệ mật tính bảo mật cao, thời gian thực mã hoá giải mã nhanh, yêu cầu thiết bị thực đơn giản [3] Trải qua 40 năm với mã Goppa chưa có thuật tốn hiệu phá vỡ sơ đồ hệ mật McEliece với tham số lựa chọn phù hợp Vì vậy, hệ mật xếp vào nhóm mật mã sau lượng tử năm gần cộng đồng nhà mật mã học nghiên cứu rộng rãi Tuy nhiên, hệ mật chưa đưa vào ứng dụng thực tế xuất phát từ nhược điểm tỷ

lệ mã hóa thấp (~1/2), kích thước khóa lớn (1024

524 bit hệ mật đề xuất ban đầu) địi hỏi dung lượng nhớ lớn

Nội dung báo này, đề xuất hai cải tiến áp dụng sơ đồ hệ mật McEliece nhằm khắc phục điểm yếu hệ mật gốc Các thuật toán đề xuất cho phép tăng tỷ lệ mã hóa lên đến 0,8 mà đảm bảo độ an toàn hệ mật Phần lại báo tổ chức sau: Trong phần 2, báo giới thiệu đặc điểm hệ mật mã khóa cơng khai McEliece, phần trình bày thuật tốn cải tiến sử dụng vector lỗi mang phần thơng tin, phần trình bày thuật toán cải tiến sử dụng mã nối tiếp thay Goppa sơ đồ hệ mật gốc, cuối phần kết luận trình bày phần

2 HỆ MẬT KHĨA CƠNG KHAI MCELIECE

Hệ mật McEliece giới thiệu R.McEliece vào năm 1978 [1] Đây sơ đồ hệ mật sử dụng tính ngẫu nhiên mã hóa Thuật tốn dựa độ khó giải mã mã khối tuyến tính Thuật tốn ban đầu sử dụng mã nhị phân Goppa, dễ dàng việc giải mã nhờ thuật toán Patterson [4] Khóa cơng khai thu từ khóa mật cách che dấu từ mã chọn giống từ mã tuyến tính Để thực hiện, ma trận sinh G mã nhị phân xáo trộn với hai ma trận khả nghịch ngẫu nhiên Q P

Hình Sơ đồ khối thuật tốn McEliece

(2)

mã hóa xác suất, sử dụng tính chất ngẫu nhiên thuật tốn mã hóa thuật toán giải mã Hệ mật McEliece gốc sử dụng mã Goppa nhị phân, mã Goppa lớp mã sửa lỗi tuyến tính dùng để sửa lỗi ngẫu nhiên xảy truyền qua kênh có nhiễu Sơ đồ khối hệ mật biểu diễn hình [5]

Trong đó: Bản tin nguồn biểu diễn dạng chuỗi thông tin số nhị phân chia thành khối ký hiệu mcó độ dài k bit Các thuật tốn hệ mật thực sau [1]:

Tạo khóa:

• Chọn mã tuyến tính nhị phân C có khả sửa

được t lỗi Mã Goppa đặc trưng ma trận sinh G kích thước k×n và có khả sửa vector lỗi ngẫu nhiên dài n bit có trọng số nhỏ t

• Chọn ma trận nhị phân khả nghịch Q kích thước

kìk cú nghch o l Q-1

ã Chn ma trận hoán vị nhị phân ngẫu nhiên P kích thước n×n (chỉ có phần tử “1” hàng cột).

• Tính tốn ma trận Gp = Q.G.P kích thước k×n

Gp = Q.G.P (1)

• Khóa cơng khai (Gp, t), khóa mật (Q, G, P) Mã hóa:

Q trình mã hố giải mã tin hệ mật McEliece thực sau: Ở bên nhận muốn nhận tin mật hoá thuật toán McEliece, thực tính chìa khố cơng khai Gp dựa chìa

khố mật ma trận Q, G P, sau gửi cặp khóa cơng khai (Gp, t) qua kênh truyền đến bên gửi

• Khi muốn gửi tin m tới bên nhận thông qua khóa cơng khai (Gp,t)

• Biểu diễn tin m dạng chuỗi nhị phân có độ dài k bit

• Tạo vector e ngẫu nhiên có độ dài n có trọng số (số phần tử “1”) w(e) ≤ t

• Tính tốn mã c sau gửi cho bên nhận

c = mGp + e (2)

Giải mã:

Sau nhận từ mã c, bên nhận thực giải mã tin:

• Tính phép toán cP-1

1 1 1  1

cP m QGP P eP mQG eP (3)

• Sử dụng thuật tốn giải mã sửa lỗi CP-1 để tìm

được mQ

m’ = mQ (4)

• Xác định tin m

 

 1

m m Q mQ Q (5)

Ta có cP-1 = mQG + eP-1 P ma trận hốn vị nên eP-1

có trọng số lớn là t Mã Goppa Gp sửa t lỗi

và từ mã mQG sửa t lỗi nhờ thuật toán Patterson sử dụng thuật tốn khác Do ta tính từ mã m’ = mQ Để lấy tin gốc ta nhân m’ với ma trận nghịch đảo Q ta có m’Q-1 = m,

tin gốc ban đầu

Từ chất thuật toán thực hệ mật McEliece ta đưa số nhận xét thuật toán sau:

- Hệ mật có độ bảo mật cao khơng phải thực truyền khóa mật (các khóa dùng để giải mã tin) qua kênh, khóa bên thực giải mã biết

- Thiết kế thiết bị mã hố giải mã đơn giản việc tính tốn thực q trình phép tính nhị phân, ta thiết kế thiết bị linh kiện số phổ biến

- Thời gian mã hoá giải mã nhanh thực tính tốn phép tốn nhị phân, đáp ứng thơng tin yêu cầu thời gian thực

- Nhược điểm hệ mật tỷ lệ mã hoá thấp (~1/2) sử dụng mã kênh mã khối tuyến tính, thuật tốn McEliece gốc sử dụng mã Goppa (1024, 524) với tỷ lệ mã hoá r k / n 1/ 2. 

- Thông thường để đảm bảo độ mật cao, thuật tốn McEliece u cầu kích thước khóa lên tới 1024 bit (tương đương với 210), nữa, để khắc phục phương án công

theo kiểu vét cạn (tính tất trường hợp có vector tín hiệu đầu vào), thuật tốn McEliece u cầu kích thước tin đầu vào lớn (k ≥ 524) Những vấn đề dẫn đến việc địi hỏi thiết bị mã hố giải mã phải có dung lượng nhớ lớn, làm chậm thời gian q trình xử lý tín hiệu

Nội dung bào báo trình bày hai đề xuất cải tiến thuật tốn McEliece nhằm tăng tỷ lệ mã hóa tăng khả chống nhiễu độ bảo mật so với thuật toán gốc

3 ĐỀ XUẤT TĂNG TỶ LỆ MÃ HÓA CỦA HỆ MẬT McELIECE SỬ DỤNG VECTOR LỖI MANG TIN

(3)

Điểm hạn chế hệ mật McEliece tỷ lệ mã hóa thấp (khoảng 0,5 với sơ đồ gốc) Để khắc phục điểm hạn chế tác giả đề xuất giải pháp đưa phần thơng tin cần truyền vào vector lỗi Thuật tốn đề xuất nhằm tăng tỷ lệ mã hóa thuật toán McEliece đồng thời nâng cao độ bảo mật hệ mật McEliece Sơ đồ khối hệ mật McEliece cải tiến đề xuất thể hình

Giải pháp thực lấy số bit thông tin cần truyền ánh xạ sang vector lỗi trước thêm vào từ mã Bên nhận sau xác định vector lỗi, khơi phục lại phần thông tin bổ sung Bằng cách sử dụng phương pháp này, tỷ lệ mã hóa cho hệ mật McEliece tăng lên đến 0,8 cao Giải pháp thuật toán tạo vector lỗi e có độ dài n trọng lượng t từ bit thơng tin có độ dài l Như tổng số bít tin gửi trường hợp (k+l), đó, tỷ lệ mã hoá tăng lên, (k + l)/n > k/n (l ≠ 0) Vấn đề đặt lựa chọn độ dài chuỗi tin bổ sung l làm để tạo vector lỗi thỏa mãn yêu cầu

Để thực ý tưởng này, ta dựa thuật tốn biến đổi nhị phân, nội dung thuật tốn biến đổi chuỗi bít nhị phân có nội dung với độ dài l (vector tin bổ sung) thành chuỗi bít có độ dài n trọng lượng t (vector lỗi e) với điều kiện ràng buộc phải thoả mãn theo công thức (6) [6,7]:

 

  tn

l log C (6) Trong đó,

C

tn tổ hợp t n Lưu đồ thuật toán biến đổi từ vector tin bổ sung ma sang vector lỗi e

tả hình

( )

2

0 ,

i ai i j m w        t w n j C

 

 

1

t w n

j j C

 

  

1,

e ww

'

'

0

e  for 

eo

1

n t w

   

'

'

1

e  for 

1

 

 

Hình Lưu đồ thuật toán biến đổi từ vector tin bổ sung sang vector lỗi

Giả thiết tin cần truyền M(m ma), gồm hai tin m ma Các thuật toán hệ mật McEliece cải

tiến thực sau:

Tạo khóa:

Q trình tạo khóa thực tương tự thuật tốn gốc (được trình bày phần 1), với khóa cơng khai (Gp, t)

và khóa bí mật ba ma trận Q, G, P Thuật tốn mã hóa giải mã sơ đồ đề xuất thực sau:

Mã hóa:

Khi muốn gửi tin nguồn tới bên nhận thơng qua khóa cơng khai GP Bên gửi thực chia tin thành hai

thành phần bàn tin m (nguồn tin 1) tin bổ sung ma (nguồn tin 2) thực mã hóa sau:

+ Đối với tin m (nguồn tin 1) nhân với khóa cơng khai GP (trong GP ma trận tích ba ma

trận Q, G, P) ta từ mã c1

+ Đối với phần tin bổ sung ma(nguồn tin 2), bên

gửi thực biến đổi tin với độ dài l sang vector lỗi e có độ dài n trọng lượng t, thực theo thuật tốn trình bày hình 3; tham số l, n, t phải thoả mãn cơng thức (6)

+ Tính từ mã c = c1 + e = mGp + e

Giải mã:

Sau nhận mã c, bên nhận thực giải mã tin sau:

+ Xác định tin m Thực tính m1 = c.P-1

(P-1 ma trận nghịch đảo P), giải mã sửa sai tương ứng

với ma trận sinh G ta xác định vector m2 thực

tính m = m2Q-1 ( ) ( ) ( )            1 P 1

m c P

mG e P

mQGP e P mQ G eP

2 

m mQ

Từ ta xác định tin

2 

m m Q + Xác nhận tin bổ sung ma, bên nhận tiến hành thực

khôi phục tin theo bước sau:

Bước 1: Thực mã hố lại, cách tính:

1  p

c mG (7)

Bước 2: Tính vector lỗi bên nhận theo công thức (8):

1

 

e c c (8)

(4)

Đúng

t n t

j j C

t t

 

  n t

1

 

 

Hình Thuật tốn biến đổi vector lỗi thành chuỗi tín hiệu bổ sung ma

Nhận xét đặc điểm thuật toán McEliece cải tiến sử dụng vector lỗi mang tin:

+ Hệ mật đề xuất sử dụng vector lỗi mang phần thông tin tăng tỷ lệ mã hóa so với đề xuất hệ mật gốc (tỷ lệ mã hố đạt tới ~0,8 thuật toán gốc đạt tỷ lệ mã hoá ~0,5) Mặt khác thông qua việc bổ sung lượng thông tin vào vector lỗi làm tăng độ bảo mật hệ mật, bên thứ ba thường quan tâm đến phần thơng tin (m) nằm thuật toán gốc

+ Hệ mật McEliece cải tiến hạn chế yêu cầu thống thuật tốn biến đổi phần thơng tin bổ sung thành vector lỗi e, điều dẫn đến phức tạp sử dụng hệ mật cải tiến

+ Với phương pháp cải tiến sử dụng vector lỗi mang tin, tỷ lệ mã hóa cải thiện từ 0,51 lên 0,79 chọn tham số theo đề xuất gốc k = 524, n = 1024 t = 50 l = 284 tính theo công thức (6) (mang 284 bit thông tin bổ sung) từ 0,63 lên 0,87 chọn k = 654, n = 1024, t = 37 l = 225

4 ĐỀ XUẤT NÂNG CAO ĐỘ BẢO MẬT CỦA HỆ MẬT McELIECE SỬ DỤNG MÃ NỐI TIẾP THAY THẾ MÃ GOPPA TRONG SƠ ĐỒ GỐC

Hình Sơ đồ khối mã nối tiếp

Giải pháp đề xuất sử dụng mã kênh nối tiếp thay cho mã Goppa thuật tốn truyền thống nhằm tăng khơng gian chìa cho hệ mật McEliece, mà

vẫn đảm bảo độ bảo mật tốc độ mã Sơ đồ khối mã nối tiếp thể hình [8]

Cấu trúc mã nối tiếp bao gồm mã ngồi, mã xáo trộn bít nằm hai mã có nhiệm vụ phá vỡ lỗi cụm (lỗi dài) thành lỗi đơn nhằm mục đích để tăng khả sửa lỗi mã, kể trường hợp điều kiện kênh truyền xấu

Để áp dụng mã nối tiếp vào hệ mật McEliece, ta cần phải chọn mã thành phần mã khối tuyến tính có đa thức sinh tương ứng G1 G2 với khoảng cách

Hamming cực tiểu tương ứng d1min d2min Khi đó, mã nối

tiếp sửa lỗi cụm có độ dài max(n1t2,n2t1),

trong ni độ dài từ mã thành phần ti khả

sửa lỗi mã thành phần, tính theo cơng thức (9) [8]

min

 

  

 

i i

d

t

2 với i = 1, (9)

Hoặc mã nối tiếp sửa t lỗi vị trí từ mã với:

min

 

  

 

1

d d

t

2 (10)

Sơ đồ khối hệ mật McEliece sử dụng mã nối tiếp thể hình

Hình Sơ đồ khối hệ mật McEliece cải tiến sử dụng mã nối tiếp

Các thuật toán hệ mật McEliece cải tiến sử dụng mã nối tiếp thay mã Goppa sơ đồ gốc thực sau:

Tạo khóa:

- Khóa bí mật bao gồm ma trận Q, G1, П, G2 P (ở

đây ta sử dụng xáo trộn khối)

- Khóa cơng khai gồm cặp (Gp, t) Trong đó: t xác

định theo công thức (10) Gp xác định theo công

thức (11)

1

Π p

G QG G P (11)

Mã hóa giải mã:

(5)

gốc Tuy nhiên, giải mã kênh ta phải thực qua hai lần giải mã mã thành phần (mã mã ngoài), với ma trận kiểm tra xác định G Hi Ti 0, đó, i = ÷ Đồng thời, sau giải mã ta phải thực giải xáo trộn để xếp lại vị trí bit từ mã trước đưa vào giải mã cho với thứ tự bên gửi

Nhận xét đặc điểm thuật toán McEliece cải tiến sử dụng mã nối tiếp:

Thông qua việc sử dụng mã nối tiếp thay mã Goppa đề xuất gốc, khả sửa lỗi hệ thống cải thiện cách đáng kể so với sử dụng mã đơn, điều thể qua kết hình

Hình Khả sửa lỗi mã nối tiếp so với mã đơn

Từ kết hình ta thấy, để đạt xác suất lỗi bit Pe = 10-5 trường hợp sử dụng mã nối tiếp với mã

thành phần mã Hamming(31, 26) mã BCH(63, 51) cần tỷ lệ Eb/N0 ≈ 5,8dB, trường hợp sử dụng mã đơn BCH

(31, 21) cần Eb/N0≈ 7,5dB Tỷ lệ mã hóa hai trường

hợp r = k/n ≈ 0,67 Như độ lợi mã hoá đạt 1,7 dB Tương tự vậy, sử dụng mã nối tiếp với mã thành phần mã Hamming (15,11) mã BCH(127, 92) độ lợi mã hoá hệ thống cao so với trường hợp sử dụng mã đơn Đây sở để cải thiện độ mật hệ thống sử dụng thuật toán McEliece, điều chứng minh qua phương pháp tính độ bền vững hệ mật cải tiến theo thuật tốn cơng tìm vector lỗi e thể qua công thức (12) [6]

 t

c n

k C (12)

Kết thuật toán McEliece cải tiến sử dụng mã nối tiếp thay cho mã Goppa so với thuật toán đề xuất gốc thể qua bảng

Bảng So sánh thuật toán McEliece cải tiến thuật toán gốc

Sơ đồ hệ mật Tỷ lệ mã hố

Số lỗi có thể sửa

Độ bền mật mã

Hệ mật McEliece

sử dụng mã

Goppa(1024,524)

~0,5 50 C5010243 10, 88

Hệ mật McEliece sử dụng mã nối tiếp H(15,11)BCH(127,92)

~0,8 91 91 , 160

1905

C 4 46 10

Chi phí thuật tốn cải tiến sử dụng mã nối tiếp thay mã Goppa thường yêu cầu từ mã có độ dài lớn so với thuật tốn gốc Do yêu cầu dung lượng nhớ thiết bị giải mã lớn hơn, vấn đề khơng cịn vấn đề khó khăn khoa học công nghệ

5 KẾT LUẬN

Phương pháp đề xuất cải tiến hệ mật McEliece sử dụng vector lỗi mang phần thông tin tăng tỷ lệ mã hoá từ 0,5 lên đến 0,8 so với thuật toán đề xuất gốc, đồng thời làm tăng độ phức tạp công giải mã hệ mật

Hệ mật McEliece cải tiến sử dụng mã nối tiếp thay cho mã Goppa đề xuất gốc làm tăng khả sửa lỗi tăng khả chống nhiễu hệ thống Tỷ lệ mã hóa sử dụng mã nối tiếp thay thay mã Goppa tăng 0,17 độ lợi mã hóa đạt 1,7dB Hai giải pháp cải tiến tác giả đề xuất kết hợp với ưu điểm hệ mật McEliece, giúp cho hệ mật tăng thêm tính khả dụng cho hệ thống truyền tin số

TÀI LIỆU THAM KHẢO

[1] McEliece R J (1978) A Public-Key Cryptosystem Based on Algebraic Coding Theory, The Deep Space Network Progress Report, pp: 114-116

[2] Berlekamp E., McEliece R., and Tilborg H v (1978), "On the Inherent Intractability of Certain Coding Problems", IEEE Transactions on Information Theory, 24(3), pp: 384-386

[3] Bernstein D J., Buchmann J., and Dahmen E (2009), Post-quantum cryptography, Springer-Verlag Berlin Heidelberg, pp: 95-145

[4] Patterson N J (1975), "The Algebraic Decoding of Goppa Codes", IEEE Transactions on Information Theory, IT-21(2), pp: 203-207

[5] Алферов А.П Основы криптографии М.: Гелиос АРВ, 2001 С 321-323

[6] Hung sun Enhancing the security of the McEliece Public key Cryptosystem.Journal of inffomation science and engineering 16.2000 C 799-812

[7] C S Park Improving code rate of McEliece’s public key cryptosystem Electronics letters, Vol 25, No 21, 1989, pp 1466-1467

Ngày đăng: 01/04/2021, 12:53

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

TÀI LIỆU LIÊN QUAN

w