Bài báo đề xuất một giải pháp mới trong trong việc chia sẻ bảo mật thông tin, mỗi thông tin chia sẻ được xem là ảnh số, dựa trên lược đồ ngưỡng đầu tiên được đề xuất bởi Adi Shamir vào năm 1979. Mời các bạn cùng tham khảo nội dung chi tiết.
48 Khoa học Tự nhiên & Công nghệ MỘT GIẢI PHÁP MỚI CHIA SẺ BẢO MẬT THÔNG TIN A NEW SOLUTION TO CONFIDENTIAL DATA SHARING Võ Phước Hưng1 Tóm tắt Abstract Bài báo đề xuất giải pháp trong việc chia sẻ bảo mật thông tin, thông tin chia sẻ xem ảnh số, dựa lược đồ ngưỡng đề xuất Adi Shamir vào năm 1979 Tuy nhiên, để tăng cường tính bảo mật cho thông tin lưu trữ hay chia sẻ môi trường mạng, phần thông tin mã hóa dựa hệ mật mã Hill Kết tiến trình mã hóa áp dụng vào lược đồ ngưỡng-(t, n) đa thức Shamir để chia thành n mảnh nhỏ phân cho người dùng đầu cuối Chỉ tái lại thông tin có hợp tác t mẫu tin phân chia This paper proposes a solution to confidential data sharing based on the intinial threshold histogram published by Adi Shamir in 1979 However, in order to enhance the confidentiality of information to be stored or shared on network, the data need to be encrypted based on the Hill cryptography After that, the result of the cipher text will be shared with n end-user based on Shamir’s polynomial (t, n)-threshold histogram Only can the information be recovered when the collaboration of any t or more of n authorized participants Từ khóa: chia sẻ bảo mật, mã hóa, mật mã học Keywords: confidential sharing, encryption, cryptography Giới thiệu1 Tốc độ phát triển mạnh mẽ hạ tầng mạng Internet giá thành thiết bị máy tính mạng máy tính ngày giảm làm cách mạng giao thức xử lý thông tin truyền tải thông tin Việc lưu trữ, xử lý thông tin thiết bị tính toán (PC, laptop, smartphone, tablet, camera…) chia sẻ chúng qua môi trường mạng ngày trở nên phổ dụng Sự phát triển mạng Internet Việt Nam xem tảng, động lực cho phát triển thương mại điện tử, giáo dục, y tế… Tuy nhiên, biết, Internet hệ thống mạng mở, toàn cầu, môi trường truyền thông thông tin xem không an toàn Trong yêu cầu người dùng tiếp nhận truyền tin phải an toàn xác Vì vậy, việc lưu trữ truyền tải liệu phải giữ bí mật người không phép yêu cầu bắt buộc người thiết kế hệ thống thông tin Việc bảo mật thông tin đặt từ sớm, chẳng hạn (Liu C.L 1968) đưa vấn đề: Có 11 nhà khoa học làm chung dự án bí mật, họ mong muốn toàn hồ sơ dự án lưu giữ hộp Hộp mở có hợp tác đủ 6/11 nhà khoa học Vậy hỏi, số ổ khóa chìa khóa mà nhà khoa học đề cập cần phải có bao nhiêu? Không khó để có lời giải cho toán nhà khoa học phải mang theo 462 ổ khóa 252 chìa khóa Tuy nhiên, ngày nay, lời giải không thực tế, tăng theo lũy thừa số lượng nhà khoa học tham gia dự án tăng lên Năm 1979, (A Shamir) đề xuất phương pháp để giải toán nêu gọi chia sẻ bí mật (secret sharing) Secret sharing phương pháp chia sẻ thông tin bí mật thành hai hay nhiều phần (share/shadow), mà phần người nắm giữ Và thông tin bí mật khôi phục có hợp tác tối thiểu số lượng người định trước Một cách logic, phần chia phần thông tin, phần thông tin vô nghĩa chúng đứng riêng lẻ Chia sẻ bí mật giải pháp quan trọng lĩnh vực bảo mật thông tin, kỹ thuật cho phép tạo nhiều bóng tin (shadow data) hay gọi thông tin chia sẻ (shared data) thông tin gốc mà bóng tin hiển thị thông tin giá trị Tuy nhiên, tập hợp đủ số lượng thông tin chia sẻ cần thiết thông tin gốc ban đầu phục hồi Bài báo tập trung nghiên cứu giải pháp chia sẻ bí mật thông tin mà thông tin gốc xem tập tin hình ảnh (image) Ảnh thông tin bí mật (secret image) mã hóa trước phân mảnh Điều giúp tăng cường tính bảo mật cho ảnh thông tin cần giữ bí mật Thạc sĩ, Trường Đại học Trà Vinh Số 21, tháng 3/2016 48 Khoa học Tự nhiên & Công nghệ 49 Cơ sở lý thuyết 2.1 Tập số nguyên (Set of Integers) - Tập hợp số nguyên, ký hiệu Z, tập số nguyên (không chứa số phân số) có miền xác định từ -∞ đến +∞ Z = {…, -2, -1, 0, 2, …} - Tập số dư nguyên, ký hiệu Zn, kết phép toán modulo với n Khi Zn = {0, 1, …, n-1} Ví dụ: © Z2 = {0, 1}; Z6 = {0, 1, …, 5} ; 1, …, 10} Z11 = {0, 2.2 Thuật toán Euclid [William Stalling] Hai số nguyên dương a b có nhiều ước số, có số chung lớn Ví dụ: Như vậy, tìm USCLN số a b liệt kê Ví dụ: tất ước số số a b, sau tìm tập giao Nếu giá trị modulus n = 10, nghịch đảo nhân USC số rút USCLN cùa số a b Rõ Z10 7, vì: ràng với cách không thực tế số a, b lớn (3 × 7) mod 10 = Thật may mắn, cách 2000 năm, nhà toán học tên Euclid phát triển thuật toán có thể2.4 Mật mã Hill [William Stalling] giúp ta tìm USCLN số nguyên dương Thuật toán Euclid để tìm USCLN(a,b) mô tả Mật mã Hill nhà toán học người Mỹ tên Lester S Hill đề xuất năm 1929 Ý tưởng giải sau: thuật mã hóa Hill lấy m ký tự liên tiếp USCLN(a,b) rõ (Plaintext) để thay m ký tự mã hóa Tiến trình thay thể xác định m phương { r1=a; r2=b; trình tuyến tính While (r2>0) Quá trình mã hóa Hill (Encoded Hill Cipher) { q=a/b; Giả sử m=3, ta có hệ phương trình tuyến tính r=r1-q*r2; sau: r1=r2; r2=r; } return r1; (1) } 2.3 Nghịch đảo nhân (Multiplicative Inverse) Trong tập Zn, hai số a b gọi nghịch đảo nhân nếu: hay a ×b ≡ (mod n) hay C = E(P,K) = PK (mod n); E hàm Số 21, tháng 3/2016 49 50 Khoa học Tự nhiên & Công nghệ mã hóa, P ký tự rõ, K ma trận khóa, C mật mã (Hình 1) phương trình f(x) = 3+2x mod 11 Quá trình giải mã Hill (Decoded Hill Cipher) P’ = D(K, C) = CK-1 mod n = PKK-1 = PI = P, Trong đó: K-1là ma trận nghịch đảo ma trận K, I ma trận đơn vị 2.5 Lược đồ ngưỡng Shamir Khái niệm chia sẻ bí mật giới thiệu vào năm 1979 Shamir [1] gọi lược đồ ngưỡng (t, n); n số thành viên tham gia vào hệ thống, t số thành viên tối thiểu (ngưỡng) tham gia để phục hồi thông tin mật Lược đồ Shamir dựa hàm đa thức bậc t−1 định nghĩa sau: (2) để mã hóa chia sẻ bí mật s thành n mảnh/phần chia (shadow/share), ký hiệu s1, s2, …, sn, với p số nguyên tố hệ số a1, a2, …, at-1 lựa chọn ngẫu nhiên cho ai∈[0, p−1] Chọn n số nguyên x1, x2, …, xn khác đôi một, tượng trưng cho n thành phần tham gia vào hệ thống Các phần chia s1, s2, …, sn tính si = f(xi), với Khi thành phần tham gia vào hệ thống chia sẻ cặp (xi, si) s khôi phục tập hợp đủ t phần chia (share) (có t cặp (xi, si)) áp dụng vào đa thức nội suy Lagrange: (3) Ví dụ: Lược đồ ngưỡng (t, n)=(2,3) với giá trị bí mật s=3, chọn p=11, từ (2), ta có: f(x) = 3+2x mod 11 Nếu ta chọn x1=1, x2=2, x3=3, f(1)=1, f(2)=2, f(3)=3, theo phần chia tương ứng là: (1,5), (2,7), (3,9) Thật chúng điểm đồ thị Hình 1: Đồ thị f(x)=3+2x Để khôi phục lại giá trị bí mật s, ta phải tập đủ phần phần chia Chẳng hạn, ta có phần chia: (1,5) (2,7) Từ công thức (3): ta được: suy ra, s=3 Giải pháp đề xuất Một hệ mật mã bao gồm hai tiến trình: mã hóa giải mã Giải pháp chia sẻ bảo mật thông tin với phần thông tin xem ảnh số đề xuất nghiên cứu bao gồm tương ứng hai tiến trình vậy: (1) tiến trìnhmã hóa chia sẻ ảnh thông tinmật (ảnh bí mật – Secret image) (2) tiến trình khôi phục ảnh thông tin (Recovered image) 3.1 Tiến trình mã hóa chia sẻ ảnh thông tin mật Trong tiến trình này, để tăng tính bảo mật cho ảnh bí mật (SI – secret image) cần chia sẻ, ta mã hóa SI dựa phương pháp hóa Hill, với ma trận vuông khóa K cấp (2×2) lựa chọn ngẫu nhiên cho có tồn ma trận nghịch đảo K-1 theo modulo cường độ điểm ảnh Như sơ đồ mô tả Hình 2, ảnh thu sau mã hóa EI áp dụng lược đồ ngưỡng (t, n) Shamir Theo cách này, ảnh EI phân chia thành n mảnh khác ký hiệu SH1, SH2, …, SHn Hình 2: Tiến trình mã hóa chia sẻ ảnh thông tin mật Số 21, tháng 3/2016 50 Khoa học Tự nhiên & Công nghệ 51 Chi tiết tiến trình mô tả sau: a Giai đoạn mã hóa ảnh thông tin mật Bước 1: Chia ảnh đa cấp xám gồm có 256 cấp xám (ảnh xám) SI với kích thước (m×n) thành khối (blocks) gồm điểm ảnh (pixel) theo nguyên tắc trái-phải-trên-dưới Nếu SI ảnh màu true-color, ta tách lớp ảnh SI thành lớp (layer) SIR, SIG, SIB thực lớp ảnh đa cấp ảnh xám Bước 2: Lấy khối điểm ảnh (p1, p2) áp dụng vào công thức (1) với modulo 256 (giá trị điểm ảnh xám bits), tạo thành công thức mã hóa ảnh sau: Bảng 1: Ma trận ảnh SI 42 60 93 103 83 84 41 51 91 108 84 83 43 51 86 106 79 74 41 54 85 98 70 68 38 49 82 95 71 73 39 51 82 93 73 74 Khóa chọn là: , - Khối ảnh để mã hóa (p1, p2) = (42,60) (4) Với điểm ảnh bị mã hóa (encoded pixel); k11, k12, k21, k22, khóa dùng để mã hóa theo phương pháp Hill Ví dụ: Giả sử ta có ma trận điểm ảnh SI sau: Áp dụng vào (4): Ta có: Tiếp tục lấy khối ảnh để mã hóa, cuối ta nhận ảnh mã hóa EI hình (SI) Hình 3: Ảnh mã hóa EI từ SI b Giai đoạn chia sẻ Như mô tả Hình 2, sau mã hóa ảnh SI, ta thu ảnh mã hóa EI Tiếp theo tiến trình chia sẻ ảnh mã hóa EI thành phần chia (shares) dựa lược đồ ngưỡng (t, n) (EI) Shamir Trong giai đoạn này, xem giá trị pixels hệ số {s, a1, a2, …, at-1} đa thức (2) Hình số nguyên tố p = 251 số nguyên tố lớn nhỏ 255 (giá trị lớn điểm ảnh xám) [Hung P Vo] Hình 4: Bố trí giá trị điểm ảnh hệ số (2) Số 21, tháng 3/2016 51 52 Khoa học Tự nhiên & Công nghệ Theo đó, ảnh EI kích thước (m×n) bị chia thành (m×n)/t khối, khối có t điểm ảnh tương ứng với hệ số {s, a1, a2, …, at-1} công thức (2) Và kết đa thức ta thu n giá trị s1=f(x1), s2=f(x2), …, sn=f(xn), x1, x2, …, xn định ngẫu nhiên (xem mã số thành phần tham gia vào hệ thống) khác đôi Các giá trị s1, s2, sn phân bố cách tương ứng vào n ảnh chia sẻ (shadow image) ký hiệu là: SH1, SH2, …, SHn Và kích thước ảnh chia sẻ 1/t kích thước ảnh EI Để mô tả giai đoạn chia sẻ ảnh, ta tiếp ví dụ phần (Hình 3), với ngưỡng (2, 4), có nghĩa t=2, n=4 Như hàm đa thức thiết lập sau cặp điểm ảnh (178, 126): (5) Chọn ngẫu nhiên giá tri x khác nhau, tượng trưng mã số bốn (n=4) thành viên tham gia vào hệ thống thay vào (5), chẳng hạn x={1, 2, 3, 4} Kết ta nhận điểm chia sẻ (1, 53); (2, 179); (3, 54); (4, 180) Bốn điểm chia sẻ trở thành điểm ảnh ảnh chia sẻ SH1, SH2, SH3, SH4 Điểm ảnh thứ ảnh chia sẻ SHi (i=1 4) tính tương tự Hình mô tả chi tiết tiến trình chia sẻ ảnh dựa lược đồ ngưỡng Shamir Hình 5: Giai đoạn chia sẻ ảnh Mỗi ảnh chia SHi có kích thước 1/2 kích thước ảnh EI, không ảnh SHi hiển thị thông tin ảnh gốc 3.2 Tiến trình khôi phục ảnh thông tin Tiến trình khôi phục liệu thực phía người nhận, có nghĩa liệu sau mã hóa, chia sẻ gửi cho n người nhận qua phương tiện truyền thông Tiến trình bao gồm hai giai đoạn: khôi phục giải mã liệu, tiến trình tóm tắt Hình Giai đoạn thứ kết nối t ảnh chia sẻ dựa đa thức nội suy Lagrance, giai đoạn giải mã theo phương pháp Hill Chi tiết tiến trình trình bày sau: Hình 6: Tiến trình khôi phục liệu Số 21, tháng 3/2016 52 Khoa học Tự nhiên & Công nghệ 53 a Giai đoạn khôi phục ảnh Đối với lược đồ (t,n)-ngưỡng Shamir, thông tin phục hồi hợp tác t thành phần tham gia vào hệ thống; hay nói cách khác, phải tập hợp đủ t ảnh chia sẻ n mẫu chia Khi ảnh mã hóa EI’ khôi phục 100% xác đa thức nội suy Lagrance, công thức (3) Từng bước giai đoạn mô tả sau: Bước 1: Lấy điểm ảnh chưa sử dụng t ảnh chia sẻ Bước 2: Áp dụng t điểm ảnh vào đa thức (3) để tìm hệ số a0, a1, …, at-1 Khi hệ số a0, …, at-1 tương ứng với điểm ảnh ảnh mã hóa EI’ Bước 3: Lặp lại bước bước tất điểm ảnh t ảnh chia sẻ thực b Giai đoạn giải mã ảnh Dùng phương pháp giải mã Hill ảnh mã hóa EI’ để giải mã ảnh bí mật theo bước mô tả sau: Bước 1: Chia ảnh mã hóa EI’ thành khối điểm ảnh theo quy tắc trái-phải-trên-dưới ( Bước 2: Lấy cặp điểm ảnh ) Bước 3: Áp dụng hàm giải mã Hill vừa lấy bước K-1 ma trận nghịch đảo K Bước 4: Lặp lại từ bước đến tất khối điểm ảnh giải mã Để diễn giải cho tiến trình khôi phục giải mã ảnh thông tin gốc, ta sử dụng ví dụ bên trên, Hình Giả sử ảnh chia sẻ chọn SH1 SH2 để hợp tác khôi phục ảnh theo lược đồ ngưỡng (2, 4) Shamir Hình mô tả giai đoạn khôi phục ảnh Hình 7: Kết hợp ảnh ảnh chia sẻ - Lấy điểm ảnh chia sẻ (SH1, SH2), kết hợp để khôi phục lại ảnh mã hóa EI’ Như cặp điểm ảnh ảnh mã hóa EI’ phục hồi qua cặp điểm ảnh (1,53) (2,179) đa thức nội suy Lagrance (3): = 178 + 126x cặp điểm ảnh thứ EI’ ( ) =(178, 126) Số 21, tháng 3/2016 53 54 Khoa học Tự nhiên & Công nghệ Tiến trình khôi phục ảnh EI’ tiếp tục tất điểm ảnh ảnh chia sẻ SH1 va SH2 thực - Sau nhận ảnh mã hóa EI’, ta phải giải mã để có ảnh thông tin mật ban đầu Hình trình bày sơ đồ giải mã ảnh thông tin dựa hệ mật mã Hill Hình 8: Giai đoạn giả mã ảnh thông tin gốc Kết thực nghiệm Để chạy thực nghiệm chương trình, xây dựng sưu tập với 100 ảnh với kích thước 512×512 với hai thể loại ảnh ảnh xám (gray-scale image) ảnh màu RGB (truecolor image) Tuy nhiên, báo này, ghi nhận lại số kết để chứng minh cho giải pháp đề xuất phần (a) Ảnh gốc (a1) ảnh chia sẻ Trong phần thực nghiệm này, ghi nhận kết số ảnh xám sử dụng để mã hóa phương pháp Hill với tập khóa (k11, k12, k21, k22) tương ứng theo thứ tự (5, 8, 17, 3), chia sẻ theo lược đồ ngưỡng (2, 4) Shamir Các kết thể Hình 9, 10 11 (a2) ảnh chia sẻ (a3) ảnh chia sẻ (a4) ảnh chia sẻ (a1) (a3) (a’) Ảnh phục hồi Hình 9: (a) Ảnh thông tin gốc Lenna với kích thước 512×512, (a1) ->(a4) bốn ảnh chia sẻ với kích thước (512×256), (a’) ảnh phục hồi từ ảnh (a1) (a3) Số 21, tháng 3/2016 54 Khoa học Tự nhiên & Công nghệ 55 (b) Ảnh gốc (b1) ảnh chia sẻ (b2) ảnh chia sẻ (b3) ảnh chia sẻ (b4) ảnh chia sẻ (b2) (b3) (b’) Ảnh phục hồi Hình 10: (b) Ảnh gốc Baboon với kích thước 512×512, (b1) ->(b4) bốn ảnh chia sẻ với kích thước (512×256), (b’) ảnh phục hồi từ ảnh (b2) (b3) (c) Ảnh gốc (c1) ảnh chia sẻ (c2) ảnh chia sẻ (c3) ảnh chia sẻ (c4) ảnh chia sẻ (c2) (c4) (c’) Ảnh phục hồi Hình 11: (c) Ảnh gốc Medicine với kích thước 512×512, (c1) ->(c4) bốn ảnh chia sẻ với kích thước (512×256), (c’) ảnh phục hồi từ ảnh (c2) (c4) Số 21, tháng 3/2016 55 56 Khoa học Tự nhiên & Công nghệ Tiếp theo, phần hai thực nhiệm, báo cáo lược ghi vài kết tập ảnh màu RGB Các kết thể qua Hình 12, 13 14 (d) Ảnh gốc (d1) ảnh chia sẻ (d2) ảnh chia sẻ (d3) ảnh chia sẻ (d4) ảnh chia sẻ (d1) (d2) (d’) Ảnh phục hồi Hình 12: (d) Ảnh gốc Pepper với kích thước 512×512, (d1) ->(d4) bốn ảnh chia sẻ với kích thước (512×256), (d’) ảnh phục hồi từ ảnh (d1) (d2) (e) Ảnh gốc (e1) ảnh chia sẻ (e2) ảnh chia sẻ (e3) ảnh chia sẻ (e4) ảnh chia sẻ (e2) (e4) (e’) Ảnh phục hồi Hình 13: (e) Ảnh gốc Text với kích thước 512×512, (e1) ->(e4) bốn ảnh chia sẻ với kích thước (512×256), (e’) ảnh phục hồi từ ảnh (e2) (e4) Số 21, tháng 3/2016 56 Khoa học Tự nhiên & Công nghệ 57 (f) Ảnh gốc (f1) ảnh chia sẻ (f2) ảnh chia sẻ (f3) ảnh chia sẻ (f4) ảnh chia sẻ (f3) (f4) (f’) Ảnh phục hồi Hình 14: (f) Ảnh gốc TVUmap với kích thước 512×512, (f1) ->(f4) bốn ảnh chia sẻ với kích thước (512×256), (f’) ảnh phục hồi từ ảnh (f3) (f4) Kết luận Chúng áp dụng phương pháp mã hóa Hill vào ảnh bí mật trước áp dụng lược đồ ngưỡng Shamir vào việc chia sẻ ảnh Ma trận khóa phương pháp Hill ghép vào chương trình truyền tải riêng kênh bí mật nhằm tăng độ phức tạp việc thám mã Đối với thuật toán chia sẻ ảnh theo ngưỡng (t, n), muốn khôi phục ảnh bí mật, ta phải xây dựng đa thức theo dạng: cho ảnh có kích thước (m×n) Mỗi đa thức có t biến số Như việc lựa chọn ngưỡng t tùy thuộc hệ thống cần có hợp tác người để khôi phục lại ảnh gốc tổng số n ngưởi tham gia hệ thống Tuy nhiên, với việc lựa t lớn không vượt n số lượng đa thức bậc t−1 giảm độ phức tạp tính toán đa thức tăng theo Giải pháp đề xuất chia sẻ ảnh thông tin mật thành nhiều ảnh nhỏ với ngưỡng (2, 4), theo kết thực nghiệm, ảnh chia sẻ ½ ảnh thông tin gốc ban đầu, điều giúp tăng tốc độ truyền tải liệu qua môi trường Internet Hơn nữa, trình lưu trữ hay truyền thông có xảy ảnh chia sẻ nào, ta phục hồi ảnh gốc thông qua hai ảnh chia sẻ Tài liệu tham khảo A Shamir 1979 “How to share a secret”.Communications of the ACM, Vol 22, no.11, pp 612–613 Hung P Vo 2013 “A user-friendly image sharing scheme using JPEG-LS prediction and LSB matching function”, International journal of Modern Engineering research (IJMER), Vol.3, Issue.1, pp 139-148 Liu C.L 1968 “Introduction to Combinatorial Mathematics” McGraw-Hill, New York William Stalling “Cryptography and Network Security Principles and Practice”, 5th Edition Số 21, tháng 3/2016 57 ... công thức (3): ta được: suy ra, s=3 Giải pháp đề xuất Một hệ mật mã bao gồm hai tiến trình: mã hóa giải mã Giải pháp chia sẻ bảo mật thông tin với phần thông tin xem ảnh số đề xuất nghiên cứu bao... (1) tiến trìnhmã hóa chia sẻ ảnh thông tinmật (ảnh bí mật – Secret image) (2) tiến trình khôi phục ảnh thông tin (Recovered image) 3.1 Tiến trình mã hóa chia sẻ ảnh thông tin mật Trong tiến trình... chia sẻ SH1 va SH2 thực - Sau nhận ảnh mã hóa EI’, ta phải giải mã để có ảnh thông tin mật ban đầu Hình trình bày sơ đồ giải mã ảnh thông tin dựa hệ mật mã Hill Hình 8: Giai đoạn giả mã ảnh thông