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

Giấu tin trong video 3D kết hợp mật mã

8 50 0

Đ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 4,86 MB

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

Nội dung

Bài báo này trình bày một hệ thống truyền tin mật an toàn, kết hợp các thuật toán mã hóa mạnh mẽ nhất (AES, RSA và SHA3) với kỹ thuật giấu tin trong video 3D. Sự kết hợp này tạo nên một hệ thống truyền tin mật mạnh mẽ trước nhiều loại tấn công thám mã và giả mạo. Dữ liệu mật sẽ được mã hóa bởi các thuật toán đủ mạnh trước khi nhúng vào video 3D bằng kỹ thuật Steganography.

Trang 1

Giấu tin trong video 3D kết hợp mật mã

Nguyễn Lương Nhật

Học Viện Công Nghệ Bưu Chính Viễn Thông

Tp Hồ Chí Minh, Việt Nam

Email: nhatnl@ptithcm.edu.vn

Đào Duy Liêm, Nguyễn Thị Minh Thy

Đại Học Công Nghệ Sài Gòn

Tp Hồ Chí Minh, Việt Nam Email: liem.daoduy@stu.edu.vn, thy.nguyenthiminh@stu.edu.vn

Tóm tắt—Bài báo này trình bày một hệ thống truyền

tin mật an toàn, kết hợp các thuật toán mã hóa mạnh mẽ

nhất (AES, RSA và SHA3) với kỹ thuật giấu tin trong

video 3D Sự kết hợp này tạo nên một hệ thống truyền tin

mật mạnh mẽ trước nhiều loại tấn công thám mã và giả

mạo Dữ liệu mật sẽ được mã hóa bởi các thuật toán đủ

mạnh trước khi nhúng vào video 3D bằng kỹ thuật

Steganography Trong khi các tầng mã hóa đảm bảo tính

an toàn, xác thực cho thông tin mật và đối tượng chứa thì

kỹ thuật Steganography sẽ tạo thêm một mức bảo mật

nữa: sự che giấu

Từ khóa— AES; RSA; SHA3; Steganography; Video 3D

I GIỚITHIỆU Truyền thông tin an toàn trên các kênh không an

toàn, ví dụ như internet, đã trở thành vấn đề nóng trong

các nghiên cứu từ nhiều năm nay Với sự phát triển

không ngừng của mật mã khóa đối xứng và bất đối xứng,

truyền thông qua internet ngày càng an toàn và bảo mật

Cũng với mục đích bảo mật thông tin, một hướng

tiếp cận khác thực hiện ghi thông tin ẩn vào các đối

tượng chứa số khác, đó là kỹ thuật giấu tin

(Steganography) Không giống với mật mã, kỹ thuật

giấu tin sẽ làm cho thông tin mật “vô hình” trên đối

tượng chứa, vì vậy đối tượng chứa được chọn phải là

loại phương tiện phổ biến trên đường truyền Cùng với

nhu cầu ngày càng cao của con người, công nghệ 3D

ngày càng phát triển Một khi mọi người đã dần quen với

việc sử dụng công nghệ 3D thì giấu tin trong các đối

tượng chứa 2D sẽ không còn đảm bảo tính ngụy trang

nữa [1], [2] Khi đó cần có các hướng nghiên cứu tiếp

theo về kỹ thuật giấu tin với phương tiện chứa là các đối

tượng 3D

Sự kết hợp của mật mã và giấu tin sẽ làm tăng độ tin

cậy của một kênh thông tin mật, vì ngoài quá trình mã

hóa và giải mã, chúng được bổ sung thêm hai quá trình

là giấu tin và tách tin Hệ thống kết hợp này sẽ làm cho

các thám mã khó khăn hơn khi phải cố gắng nhận ra đối

tượng có ẩn dữ liệu trước khi bóc tách và giải mã chúng

Ngay cả trong các hệ thống sử dụng mật mã yếu hơn

cũng rất khó để nhận ra việc truyền tin có ẩn dữ liệu mật

bởi tính ngụy trang cao của các kỹ thuật giấu tin tiên

tiến

II CÁCNGHIÊNCỨULIÊNQUAN Trong [3], [4], tác giả đã trình bày phương pháp giấu tin trong miền không gian chủ yếu dùng kỹ thuật LSB (Least Significant Bit) Phương pháp này dễ thực hiện và cũng dễ dàng bị tấn công để bóc tách thông tin Trong [5] [6] các tác giả đã thực hiện giấu thông tin trong video nhưng thực tế thông tin chỉ được nhúng trong các khung ảnh của video còn phần âm thanh đi kèm thi chưa được khai thác

Phương pháp kết hợp kỹ thuật mật mã và giấu tin cũng đã được thực hiện trong [7] [8] [9] và kết quả đạt được rất đáng ghi nhận vì đã tăng tính bảo mật cho hệ thống truyền tin Tuy nhiên, vẫn còn tồn tại một số vấn đề: trong [7] việc truyền các khóa mật trên các kênh an toàn gây không ít tốn kém cho hệ thống, trong [8] thuật toán RSA (Rivest, Shamir & Adelman) được sử dụng để

mã hóa thông tin mật, khi dung lượng thông tin mật lớn thì phương pháp này không hiệu quả, còn trong [9] khóa công khai được lựa chọn để mã hóa truyền các khóa mật nhưng hệ thống này chỉ dùng thuật toán RSA 512 bit thực tế là không an toàn theo NIST (National Institute of Standards and Technology) và vẫn chưa đảm bảo tính chứng thực của thông tin mật

Trong hệ thống của chúng tôi sử dụng sử dụng thuật toán giấu tin parity, cùng với việc tăng tính ngẫu nhiên của các bit nhúng vào đối tượng chứa Điều này giúp hệ thống chống lại các phương pháp tấn công nhằm bóc tách thông tin Thông tin sẽ được nhúng vào cả phần âm thanh và hình ảnh của video 3D chứa Thiết kế sử dụng đồng thời hai thuật toán mã hóa AES và RSA nên sẽ làm tăng độ bảo mật và tăng tốc độ thực hiện của hệ thống III CHUẨNMẬTMÃTIÊNTIẾNAES Chuẩn mã hóa dữ liệu tiên tiến AES (Advanced Encryption Standard) là một hệ mã khóa bí mật có tên là Rijndael cho phép xử lý các khối dữ liệu đầu vào có kích thước 128 bit sử dụng các khóa có độ dài 128, 192 hoặc

256 bit [10] Ban đầu hệ mã Rijndael được thiết kế để có thể làm việc với các khóa và các khối dữ liệu có độ dài lớn hơn Tuy nhiên khi được NIST chọn là một chuẩn vào năm 2001, nó được qui định chỉ làm việc với các khối dữ liệu 128 bit và các khóa có độ dài 128, 192 hoặc

256 bit (do đó còn gọi là AES-128, AES-192, AES-256)

Trang 2

Hình 1 Lưu đồ thực hiện thuật toán AES

Độ dài của ngõ vào, ngõ ra và các trạng thái (state)

của chuẩn mã hóa AES là 128 bit tương ứng với giá trị

của Nb = 4 (là số lượng các word 32-bit và cũng là số

cột của mỗi trạng thái) Khóa của AES có độ dài là 128,

192 hoặc 256 bit tương ứng với các giá trị của Nk là 4, 6,

hoặc 8 và cũng là số cột của khóa mã hóa Tương ứng

với độ dài của khóa sử dụng số vòng lặp của thuật toán

(Nr) nhận các giá trị 10 (Nk = 4), 12 (Nk = 6) hoặc 14

(Nk = 8)

Toàn bộ thuật toán AES được mô tả trong hình 1 với

ba quá trình: mã hóa, giải mã và mở rộng khóa Các

khóa con sử dụng trong quá trình mã hóa và giải mã

được tạo ra từ quá trình mở rộng khóa với đầu vào là

khóa mật 128, 192 hoặc 256 bit

IV HỆMẬTMÃKHÓACÔNGKHAIRSA

Hệ mật mã khóa công khai RSA được xây dựng bởi

các tác giả Ron Rivest, Adi Shamir và Len Adleman tại

học viện MIT vào năm 1977, nó đánh dấu một sự tiến bộ

vượt bậc của lĩnh vực mật mã học trong việc sử dụng

khóa công cộng RSA đang được sử dụng phổ biến

trong thương mại điện tử và được cho là đảm bảo an

toàn với điều kiện độ dài khóa đủ lớn [11]

Thuật toán RSA có hai khóa: khóa công khai (hay

khóa công cộng) và khóa bí mật (hay khóa cá nhân) Mỗi

khóa là những số cố định sử dụng trong quá trình mã hóa

và giải mã Khóa công khai được công bố rộng rãi cho mọi người và được dùng để mã hóa Những thông tin được mã hóa bằng khóa công khai chỉ có thể được giải

mã bằng khóa bí mật tương ứng Nói cách khác, mọi người đều có thể mã hóa nhưng chỉ có người biết khóa

cá nhân (bí mật) mới có thể giải mã được

Hoạt động của RSA dựa trên ba quá trình: tạo khóa,

mã hóa và giải mã

A Tạo khóa

Chọn 2 số nguyên tố lớn p và q với p≠q là lựa chọn ngẫu nhiên và độc lập Sau đó tính n=p.q

 Tính giá trị hàm số Euler:

Chọn một số tự nhiên e sao cho 1<e<Φ(n) và

là số nguyên tố cùng nhau với Φ(n)

Tìm d sao cho:

Lúc này khóa công khai là modulus n và số mũ công khai e Khóa bí mật là modulus n và số mũ bí mật d

B Mã hóa

Với c là bản mã và m là bản rõ

C Giải mã

V HÀMBĂMMẬTMÃ Hàm băm là các thuật toán không sử dụng khóa để

mã hóa, nó có nhiệm vụ “lọc” thông điệp được đưa vào

theo một thuật toán h một chiều nào đó, rồi đưa ra một

bản băm có kích thước cố định Giá trị của hàm băm là duy nhất, và không thể suy ngược lại được nội dung thông điệp từ giá trị băm này

Hiện nay hàm băm được ứng dụng rất mạnh trong vấn đề an toàn thông tin trên đường truyền Các ứng dụng có sử dụng hàm băm không chỉ đảm bảo về mặt an toàn thông tin, mà còn tạo được lòng tin của người dùng

vì họ có thể dễ dàng phát hiện được thông tin của mình

có còn toàn vẹn hay không, họ biết rằng thông tin của mình chắc chắn được bí mật với phía các nhà cung cấp

A Hàm băm MD5

MD5 viết tắt từ chữ “Message Digest algorithm 5” là chuẩn hàm băm được sử dụng phổ biến nhất hiện nay, được phát minh bởi Ron Rivest, người cũng đã tham gia xây dựng RSA Hàm băm MD5 cho kích thước giá trị băm ngõ ra là 128 bit, được dùng để tính giá trị băm của thông điệp có kích thước tối đa là 264 bit

KeyExpansion Algorithm

ShiftRows

AddRoundKey

MixColumns

SubBytes

AddRoundKey

ShiftRows

AddRoundKey

MixColumns

SubBytes

ShiftRows

AddRoundKey

SubBytes

InvShiftRows InvSubBytes

AddRoundKey

AddRoundKey

InvMixColumns

InvSubBytes InvShiftRows R

AddRoundKey

InvMixColumns

InvSubBytes InvShiftRows

AddRoundKey

w[(Nb(Nr +1)-4),

(Nb(Nr+1)-1)]

w[(Nb(Nr+1)-8),

(Nb(Nr+1)-5)]

w[4, 7]

w[0, 3]

Plaintext

Ciphertext

Secret key Plaintext

Ciphertext

Encryption KeyExpansion Decryption

Trang 3

Hình 2 Sơ đồ tổng thể MD5

Mẩu tin đầu vào được chia thành từng đoạn 512 bit,

mẩu tin sau đó được đệm sao cho chiều dài của nó chia

chẵn cho 512 Công việc đệm vào như sau: đầu tiên một

bit đơn (bit 1) được gắn vào cuối mẩu tin Tiếp theo là

một dãy các bit 0 sao cho chiều dài của mẩu tin lên tới

64 bit ít hơn so với bội số của 512 Những bit còn lại

được lấp đầy bằng một số nguyên 64 bit đại diện cho

chiều dài của mẩu tin gốc

Quá trình tính giá trị băm của thông điệp là quá trình

lũy tiến Trước tiên block M1 kết hợp với giá trị khởi tạo

H0 thông qua hàm F để tính giá trị H1 Sau đó block M2

được kết hợp với H1 để cho ra giá trị là H2 Block M3

kết hợp với H2 cho ra giá trị H3 Cứ như vậy cho đến

block MN thì ta có giá trị băm của toàn bộ thông điệp là

HN

B Hàm băm SHA3

Hàm băm SHA3 (Secure Hash Algorithm-3) dựa trên

giải thuật Keccak (do nhóm các nhà mật mã người Bỉ

thiết kế, đứng đầu là Daemen – đồng tác giả của AES),

giải thuật đã được NIST lựa chọn thắng cuộc trong cuộc

thi về các giải thuật hàm băm mật mã vào tháng 10 năm

2012 Họ hàm SHA3 bao gồm 4 hàm băm mật mã

(SHA3-224, SHA3-256, SHA3-384, SHA3-512) và 2

hàm mở rộng (SHAKE-128, SHAKE-256) Sáu hàm này

sử dụng cấu trúc Sponge [12] là một cấu trúc dùng để

biểu diễn các hàm dưới dạng dữ liệu nhị phân với chiều

dài ngõ ra bất kỳ được mô tả như hình 3

Hàm f sắp xếp các chuỗi có chiều dài cố định, ký

hiệu là b thành các chuỗi có cùng chiều dài, b gọi là độ

rộng của f và b=r+c Với tốc độ r là một số nguyên

dương và phải nhỏ hơn độ rộng b Dung lượng ký hiệu là

c, là một số nguyên dương c=b-r (đối với SHA3 thì

r+c=1600)

Hình 3 Cấu trúc Sponge sử dụng trong SHA3

VI STEGANOGRAPHY Giấu thông tin là một kỹ thuật nhúng thông tin vào trong một nguồn đa phương tiện gọi là các phương tiện chứa mà không gây ra sự nhận biết về sự tồn tại của thông tin giấu (invisible) Phương pháp giấu tin là làm cho người ta khó có thể biết được có thông tin giấu bên trong đó do tính chất ẩn của thông tin được giấu

Sự khác biệt giữa mã hoá thông tin và giấu thông tin

là mức độ biểu thị của đối tượng mang tin mật Nếu ta phối hợp hai phương pháp trên thì độ an toàn dữ liệu mật

sẽ được nâng cao Chẳng hạn, ta có thể mã hoá bản tin mật R thành R’ sau đó mới giấu R’ vào đối tượng chứa F

để thu được F’ Tóm lại, giấu thông tin và hệ mật mã có quan hệ mật thiết với nhau, cùng xây dựng nên một hệ thống an toàn và bảo mật cho thông tin

Hệ thống của chúng tôi sử dụng kỹ thuật Steganography dựa trên phương pháp kiểm tra tính chẵn

lẻ (Parity) của khối bit Ý tưởng của thuật toán này là chia đối tượng chứa đầu vào thành các khối nhỏ, mỗi khối sẽ giấu một bit thông tin Dựa vào tính chẵn lẻ của tống số bit 1 trong khối để quy định bit giấu là bit 1 hay bit 0 Cụ thể sau khi giấu thì tổng số bit 1 trong khối và bit cần giấu sẽ có cùng tính chẵn lẻ

Giả sử một bit thông tin thứ i (Si = 1) sẽ được giấu vào một khối hai pixel liên tiếp của ảnh chứa biểu diễn dưới dạng 24 bit như hình 4

Tổng số bit 1 trong hai pixel là Pi = 24, bit cần giấu

Si = 1 nên cần thay đổi sao cho (Pi + Si) mod 2 = 0 Một bit có trọng số thấp nhất (LSB) được lựa chọn ngẫu nhiên trong khối (6 byte) sẽ được đảo bit  sau khi nhúng P’i = 23 Vì vậy khi tách S’i= (23 mod 2) = 1

Vị trí bit sẽ thực hiện đảo bit được thay đổi ngẫu nhiên sau mỗi lần nhúng để chống lại các phương pháp

dò tìm thống kê

Hình 4 Mô tả kỹ thuật giấu tin Parity

VII PHƯƠNGPHÁPĐỀXUẤT Trong bài báo này chúng tôi đề xuất một hệ thống truyền tin mật sử dụng các thuật toán mã hóa mạnh mẽ AES-256, RSA-15360 và hàm băm SHA3 kết hợp với

2 Pixel ảnh gốc

2 Pixel sau khi ẩn dữ liệu

1 1 1 0 0 0 0 1

1 1 0 1 1 0 0 1 1 0 0 1 1 0 1 0

1 0 0 1 0 1 0 1

0 1 0 1 0 0 1 1 0 1 0 1 0 0 1 0

1 1 1 0 0 0 0 1

1 1 0 1 1 0 0 1 1 0 0 1 1 0 1 0

1 0 0 1 0 1 0 0

0 1 0 1 0 0 1 1 0 1 0 1 0 0 1 0

Trang 4

Steganography để đảm bảo độ an toàn và tính chứng

thực cho thông tin mật Thuật toán AES sử dụng để cung

cấp tốc độ mã hóa cao khi khối lượng thông tin lớn RSA

sử dụng cho việc truyền tin một chiều và cũng làm tăng

độ bảo mật cho hệ thống bằng cách mã hóa chuỗi khóa

dùng trong AES Các hàm băm dùng để chứng thực cho

thông tin mật và cho một phần của đối tượng chứa

Steganography dùng để ngụy trang cho thông tin mật,

đảm bảo rằng chúng hoàn toàn “vô hình” trên đối tượng

chứa trước những tấn công thống kê và dò tìm tiên tiến

Quá trình truyền thông tin trong hệ thống này được

mô tả như trong hình 5 với ba cấp độ bảo mật cho dữ

liệu

Ngụy trang là lớp bảo mật ngoài cùng có chức năng

che giấu thông tin để truyền trên kênh truyền Thuật toán

giấu tin sử dụng trong lớp này phải đảm bảo tính vô hình

và tính toàn vẹn cho dữ liệu mật Tính bền vững không

cần xét đến trong mô hình này vì nếu đối tượng chứa tin

nhận được là không nguyên vẹn, hay bất kỳ kẻ tấn công

nào cố tình thay đổi đối tượng chứa cũng sẽ làm thông

tin mật bị hủy với sự bảo vệ của lớp chứng thực

Lớp bảo mật thứ hai là mã hóa Dữ liệu mật trước khi

nhúng vào video 3D phải qua bước mã hóa để đảm bảo

độ an toàn Hai thuật toán mã hóa mạnh nhất hiện nay

(AES-256 và RSA-15360) được sử dụng Thuật toán

AES dùng để mã hóa dữ liệu mật vì có khả năng mã hóa

khối dữ liệu lớn với thời gian nhanh Thuật toán RSA

dùng để mã hóa khóa của AES và một phần của lớp

chứng thực Khóa dùng cho RSA là khóa một chiều,

người gởi dùng khóa công khai và chỉ có người nhận

mới có khóa giải mã Khóa sử dụng cho AES được tạo

mới mỗi lần mã hóa bao gồm 2 phần: phần ngẫu nhiên

128 bit đầu (in đậm) được tạo ra từ bộ phát chuỗi giả

ngẫu nhiên, phần được tính toán 128 bit sau tạo ra từ

hàm băm MD5 trong lớp chứng thực Phần khóa ngẫu

nhiên sẽ được mã hóa bởi RSA và nhúng vào video 3D

rồi truyền đến phía thu Chỉ người có khóa riêng chính

xác mới có thể giải mã được thông tin

Hình 5 Mô hình hệ thống truyền tin mật

Khóa AES đầy đủ:

AF A7 06 A8 A7 2D 64 94 59 E7 5A 3C 89 2B 95 8C

B5 72 ED 5D 7E 38 9D 5F 8A 3C 52 53 41 AF 46 EB Lớp bảo mật sau cùng là chứng thực, trong phương pháp này sử dụng hai thuật toán MD5 và SHA3 cho mục đích chứng thực Thuật toán MD5 dùng để chứng thực cho đối tượng chứa, đảm bảo tính nguyên vẹn của đối tượng khi đến phía thu Giá trị băm 128 bit của MD5 được sử dụng làm nửa khóa AES Thuật toán hàm băm tốt nhất hiện nay SHA3 được sử dụng để chứng thực cho thông tin mật Giá trị băm 256 bit của thông tin mật được mã hóa bởi RSA và truyền đến phía thu phục vụ cho quá trình chứng thực thông điệp mật tại phía thu Hình thức chứng thực này được sử dụng với mục đích chống lại các tấn công xuyên tạc hay cố tình làm sai lệch thông tin mật Đảm bảo rằng thông tin đến được người nhận thật sự chính xác

Để hiểu rõ hơn về quá trình hoạt động của hệ thống

từ khi bắt đầu đến khi kết thúc, chúng tôi xin trình bày giải thuật chi tiết của mô hình với sự kết hợp của hàm băm, mật mã và giấu tin như hình 6

A Đầu phát

Video 3D chứa (Cover 3D Video) ở ngõ vào được tách làm 3 phần: âm thanh (Audio) dùng để chứa

Header, các khung ảnh trái (Left Images) dùng để chứa

dữ liệu mật và các khung ảnh phải (Right Images) là

phần không thay đổi trong quá trình nhúng sẽ được tạo chứng thực bởi thuật toán MD5

Dữ liệu mật (Secret Data) trước tiên sẽ được tạo

chứng thực bởi thuật toán SHA3-256, đồng thời sẽ được

mã hóa bởi thuật toán AES-256 (AES Encryption) với

khóa dùng để mã hóa gồm: ½ khóa là 128 bit ngõ ra của

hàm băm MD5, ½ khóa còn lại (Secret Key) được tạo từ

bộ tạo chuỗi giả ngẫu nhiên (PRPG – Pseudo Random Pattern Generator) Ngoài 128 bit dùng làm khóa mật

cho AES, bộ tạo chuỗi giả ngẫu nhiên còn tạo ra các địa

chỉ ngẫu nhiên (Address), đây là địa chỉ các khung ảnh

dùng để nhúng dữ liệu mật

Giá trị băm (Hash value) 256 bit tại ngõ ra của khối SHA3 cùng với địa chỉ nhúng tạo ra từ khối PRPG sẽ được sẽ được mã hóa bởi thuật toán RSA (RSA

Encryption) với khóa công khai lấy từ ngõ vào (Public key) Thông tin trước khi mã hóa RSA có thể thêm vào

các bit đệm để tăng tính bảo mật Ngõ ra của khối RSA

Encryption được gọi là header có chiều dài tương đương

với khóa công khai và sẽ được nhúng vào phần âm thanh

của video 3D bởi khối Header Embedding

Dữ liệu mật sau khi được mã hóa AES gọi là Cipher

data sẽ được nhúng vào các khung ảnh trái bởi khối Cipher data Embedding với thứ tự các khung nhúng cho

bởi Address Quá trình nhúng thông tin được thực hiện

bằng phương pháp Parity với trình tự các bước như sau: Internet

Public

key

Cover 3D

Video

Encryption key generation

AES key encryption

Data encryption

Steganographic Extraction Decryption key recovery Data decryption

Secret Data

Private key

Steganographic Embedding

Secret Data

Configuring Authentication

Authentication

Trang 5

 Chia đối tượng chứa thành các khối nhỏ N x M

byte, mỗi bit thông tin Si sẽ được nhúng vào một

khối

 Tính tổng số bit 1 trong khối – Pi

 Nếu Pi mod 2 = Si thì giữ nguyên dữ liệu của

khối, ngược lại thì đảo một bit LSB bất kỳ trong

khối

Sau đó, các khung ảnh và âm thanh sau khi nhúng sẽ

được ghép lại theo đúng thứ tự để tạo thành video 3D đã

nhúng dữ liệu mật (Stegano 3D Video) rồi truyền đến

phía thu

Hình 6 Giải thuật thực hiện

B Truyền tin

Video 3D chứa tin mật được truyền đi một cách an toàn trên kênh truyền với nhiều giao thức truyền thông khác nhau Nội dung ẩn chứa rất khó bị phát hiện vì video là một dạng media phổ biến trên internet

Trong trường hợp dữ liệu bị chặn trên đường truyền, rất khó để phát hiện video có chứa tin mật hay không vì khả năng ngụy trang cao của thuật toán giấu tin Parity Nói cách khác, phương pháp giấu tin này không làm tăng sự nghi ngờ vì thông tin ẩn giấu gần như “vô hình” trên đối tượng chứa

C Đầu thu

Tương tự như đầu phát, tại đầu thu video 3D có chứa

dữ liệu cũng sẽ được tách làm 3 phần: âm thanh, các khung ảnh trái và các khung ảnh phải Phần âm thanh sẽ

được đưa qua khối Header Extraction để bóc tách ra các byte header, các byte này sẽ được giải mã RSA (RSA

Decryption) với khóa riêng (Private Key) của người

nhận Header sau khi được giải mã sẽ bao gồm:

 Các bit đệm vào tại phía phát (nếu có) sẽ được loại bỏ

Address: địa chỉ các khung ảnh trái sẽ thực hiện

tách thông tin

Secret key: ½ khóa mật dùng để giải mã AES

Hash value: 256 bit giá trị băm của thuật toán

SHA3 từ đầu phát gởi đến để phục vụ cho bước chứng thực thông tin mật

Các khung ảnh phải sẽ được chứng thực bởi hàm băm MD5 Nếu trong quá trình truyền video 3D không

có bất kỳ sự thay đổi gì thì tại ngõ ra hàm băm MD5 sẽ cho 128 bit giống với phía phát, 128 bit này là ½ khóa dùng để giải mã dữ liệu mật Đây là bước chứng thực thứ nhất, nếu có sự thay đổi không mong muốn trên đối tượng chứa thì dữ liệu mật sẽ không được khôi phục Các khung ảnh trái sau khi chọn được một số khung

theo địa chỉ (Address) sẽ được bóc tách dữ liệu bởi khối

Cipher data Extraction và ngõ ra sẽ là dữ liệu mật đã

được mã hóa Dữ liệu này sẽ được giải mã bởi AES

Decryption với khóa giải mã cho bởi: 128 bit Secret key

và 128 bit ngõ ra của MD5 cho ra dữ liệu mật ban đầu

Quá trình bóc tách dữ liệu ở khối Header Extraction

và khối Cipher data Extraction được thực hiện theo

phương pháp parity với trình tự các bước như sau:

 Chia đối tượng chứa tin mật thành các khối nhỏ

N x M byte, mỗi bit thông tin S’i sẽ được tách từ một khối

 Tính tổng số bit 1 trong khối – P’i

 S’i = P’i mod 2

Secret Data

Cover 3D

Video

Public Key

AES Encryption

RSA Encryption MD5

Left Images Right Images

Cipher data

Embedding

PRPG

+

-Stegano

3D Video

Header

Embedding

Header

Extraction

Audio Left Images Right Images

-RSA

Decryption

Cipher data

Extraction

MD5

AES Decryption

Authentication

SENDER

Secret key Hash value

Secret Data

Private

Key

RECEIVER

Address

Trang 6

Authentication là bước chứng thực cuối cùng, bước

này thực hiện băm dữ liệu mật và so sánh với 256 bit giá

trị băm nhận được tại header Hàm băm SHA3 được sử

dụng để chắc chắn rằng đây là dữ liệu chính xác từ đầu

phát muốn gởi đến, dữ liệu này sẽ xuất hiện tại ngõ ra

của đầu thu kết thúc một quá trình truyền tin thành công

VIII KẾTQUẢTHỰCNGHIỆM

Các kết quả sau đây được thực hiện trên trên Matlab

2014a với video 3D chứa có kích thước mỗi khung ảnh

720 x 1280 pixel, thông tin mật thử nghiệm lần lượt là:

một ảnh xám 128 x 192 pixel, một ảnh màu 256 x 256

pixel, một file âm thanh (wav) 1.5 giây và một file âm

thanh (mp3) 2 giây Để đánh giá kết quả chúng tôi sử

dụng các tham số: MSE (Mean Squared Error), SNR

(Signal-to-Noise Ratio) và PSNR (Peak Signal-to-Noise

Ratio)

MSE là sai số bình phương trung bình, dùng để so

sánh dữ liệu mật trước khi nhúng và sau khi tách và

được cho bởi (5) Giá trị này càng thấp thì sai số càng ít

và ngược lại MSE = 0 khi hai khối dữ liệu giống nhau

hoàn toàn

, ,

1 1

1

( )

i j i j

i j

Với: M,N là kích thước khối dữ liệu I i,j và I’ i,j là giá

trị của các khối dữ liệu tại điểm i,j

PSNR là tỉ lệ tín hiệu đỉnh trên nhiễu, thường dùng

để so sánh sự khác nhau của hai bức ảnh và được cho

bởi (6) PSNR càng cao thì hai ảnh càng giống nhau

2

10

10.log Ipeak ( )

MSE

Với Ipeak là giá trị đỉnh (max) của tín hiệu ngõ vào,

với ảnh 8 bit thì Ipeak=255

Một thông số khác cũng dùng để đánh giá chất lượng

của một hệ thống truyền tin là giá trị tín hiệu trên nhiễu

SNR Giống như PSNR, giá trị SNR càng cao càng tốt

và thường sử dụng để đánh giá chất lượng của âm thanh

2 ,

1 1 10

2 '

, ,

1 1

10.log ( )

i j

i j

i j i j

i j

I

 

 

 

Hình 7, 8, 9 và 10 cho thấy kết quả của các quá trình

mã hóa, nhúng, tách và giải mã của của hệ thống

Hình 7 Kết quả thực hiện với dữ liệu mật là ảnh xám 128 x 192 và đối tượng chứa là video 3D Over Under

Hình 8 Kết quả thực hiện với dữ liệu mật là bức ảnh màu 256 x 256

và đối tượng chứa là video 3D Side by Side

Hình 9 Kết quả thực hiện với dữ liệu mật là file wav 1.5 giây và đối tượng chứa là video 3D Over Under

Trang 7

Hình 10 Kết quả thực hiện với dữ liệu mật là file mp3 2 giây với đối

tượng chứa là video 3D Side by Side

Kết quả mô phỏng cho thấy kỹ thuật giấu tin đã làm

cho thông tin mật gần như biến mất trên đối tượng chứa

Hoàn toàn không thể nhận ra bằng mắt thường sự khác

biệt của đối tượng chứa trước và sau khi nhúng Nhưng

tham số SNR và PSNR cho thấy sự khác biệt này Bảng

1 cho thấy các giá trị SNR, PSNR của âm thanh và các

khung ảnh trái trước và sau khi nhúng

So với các nghiên cứu liên quan, thuật toán giấu tin

của chúng tôi cho tính vô hình cao hơn rất nhiều Cụ thể

SNR = 88.7 dB >> 54.7 dB trong [13] và PSNR = 57.5

dB >> 38.7 dB trong [6]

Để đánh giá tính hiệu quả của hệ thống, bảng 2 sẽ

cho thấy thời gian thực hiện của đầu phát và đầu thu với

các quá trình mã hóa, nhúng, tách và giải mã

BẢNG 1 KẾT QUẢ GIẤU TIN VỚI THUẬT TOÁN PARITY

Dữ liệu mật Tham số

Video 3D chứa Over Under Side by Side

Ảnh xám

SNR (dB) 88.75716 96.85605

PSNR (dB) 59.60560 59.61165

Ảnh màu

SNR (dB) 88.75207 96.87903

PSNR (dB) 57.57225 57.56982

1.5s.wav

SNR (dB) 88.73344 96.89987

PSNR (dB) 58.32555 58.33469

2s.mp3

SNR (dB) 88.71097 96.87847

PSNR (dB) 57.58762 57.58505

BẢNG 2 THỜI GIAN THỰC HIỆN TẠI ĐẦU PHÁT VÀ ĐẦU THU

Dữ liệu mật

Mã hóa / giải

mã AES (giây)

Mã hóa / giải

mã RSA (giây)

Nhúng / tách (giây)

Ảnh xám

Đầu phát 0.86346 0.068945 0.327090 Đầu thu 1.11169 0.776509 0.086750

Ảnh màu

Đầu phát 6.79380 0.018027 1.674700 Đầu thu 7.90651 0.769565 0.672842

1.5s.wav

Đầu phát 1.17140 0.018662 0.387620 Đầu thu 1.35613 0.758561 0.119912

2s.mp3

Đầu phát 12.0312 0.017678 2.914800 Đầu thu 14.2855 0.761344 1.365858

IX TỔNGKẾT Trong bài báo này chúng tôi giới thiệu một hệ thống truyền tin an toàn chống lại được các kỹ thuật tấn công

và dò tìm tiên tiến Hệ thống hoàn chỉnh bao gồm 3 lớp bảo mật:

 Steganography là lớp bảo mật ngoài cùng, dùng video 3D che phủ toàn bộ thông tin mật Thông tin mật được phân bố một cách ngẫu nhiên, hợp lý vào đối tượng chứa và không thể nhận ra được bằng mắt thường hoặc bằng máy tính

 AES_RSA là sự kết hợp hoàn hảo của hệ mật khóa công khai và hệ mật khóa bí mật Hệ thống mật mã này bao gồm 3 loại khóa: khóa mật dùng trong AES, khóa công khai dùng để mã hóa RSA và khóa riêng dùng để giải mã RSA Chỉ duy nhất người nhận có khóa riêng đúng thì mới

có thể trích xuất được thông tin mật

 Authentication có khả năng chứng thực cả đối tượng chứa và thông tin mật để loại trừ những thay đổi không mong muốn lên đối tượng chứa Giải thuật hàm băm hiện đại nhất là SHA3 được

sử dụng để đảm bảo tính chứng thực cao nhất cho thông tin mật

Sự kết hợp này tạo nên một hệ thống truyền tin gần như hoàn hảo, có độ tin cậy cao với thời gian thực hiện hợp lý Vì vậy có thể sử dụng để truyền các thông điệp nhạy cảm hay các dữ liệu tuyệt mật

Hướng nghiên cứu tiếp theo của chúng tôi là xây dựng một lược đồ chữ ký số mới với sự kết hợp của SHA3 và RSA, đồng thời nghiên cứu các thuật toán nhằm tăng tốc độ thực hiện RSA khi dung lượng dữ liệu lớn

Trang 8

TÀILIỆUTHAMKHẢO [1] Woods, A.J, and Sehic, A “The compatibility of LCD TVs with

time-sequential stereoscopic 3D visualization” in Stereoscopic

Displays and Applications XX, Proceedings of Electronic

Imaging, Proc SPIE Vol 7237

[2] Z Shahid, W Puech, “Synchronization of Texture and depth

Map by Data Hiding For 3D H.264 Video”, 2011 IEEE

International Conference on Image Processing, pp.2773-2776

[3] R Shreelekshmi, M Wilscy, C.E Madhavan, “Cover Image

Preprocessing for More Reliable LSB Replacement

Steganography“, IEEE 2010 International Conference on Signal

Acquisition and Processing, pp 153-156, February 2010

[4] RigDas, Themrichon Tuithung, “A Novel Steganography

Method for Image Based on Huffman Encoding”, 2012 IEEE,

Emerging Trends and Applications in Computer Science

(NCETACS), pp 14-18

[5] R Balaji, G Naveen, “Secure Data Transmission Using Video

Steganography”, 2011 IEEE International Conference on

Electro/Information Technology (EIT), pp 1-5

[6] B Suneetha, Ch Hima Bindu, S Sarath Chandra, “Secured Data

Transmission Base Video Steganograhy”, International Journal

of Mechanical and Production Engineering (IJMPE) ISSN No.:

2315-4489, Vol-2, Iss-1, 2013, pp 78-81

[7] Parag Kadam, Mangesh Nawale, Akash Kandhare, Mukesh

Patil, “Separable Reversible Encrypted Data Hiding in

Encrypted Image Using AES algorithm and Lossy Technique”,

IEEE Proceedings of the 2013 International Conference on

Pattern Recognition, Informatics and Mobile Engineering

(PRIME), pp 312-316, 21-22 Feb 2013

[8] Nadiya, P.V.; Imran, B.M., "Image steganography in DWT

domain using double-stegging with RSA encryption," 2013

International Conference on Signal Processing Image Processing

& Pattern Recognition (ICSIPR), pp.283,287, 7-8 Feb 2013

[9] Septimiu Fabian Mare, Mircea Vladutiu and Lucian Prodan,

“Secret data communication system using Steganography, AES and RSA”, 2011 IEEE 17th International Symposium for Design and Technology in Electronic Packaging (SIITME), pp

339-344, 20-23 Oct 2011

[10] J Daemen, V Rijmen, „The Design of Rijndael: AES – The Advanced Encryption Standard.“, Springer, 2002

[11] Chandra M Kota and Cherif Aissi1 , "Implementation of the RSA algorithm and its cryptanalysis", ASEE Gulf­ Southwest Annual Conference on 2002, Houston, USA

[12] Charles H Romine, “SHA-3 Standard: Permutation-Based Hash and Extendable-Output Functions”, Information Technology Laboratory Gaithersburg, MD 20899-8900, 2014

[13] R.F Olanrewaju, Othman Khalifa and Husna (2013),

“Increasing the Hiding Capacity of Low-Bit Encoding Audio Steganography Using a Novel Embedding Technique”, World Applied Sciences Journal 2, pp 79-83

[14] Philipp Merkle, Karsten Müller, Thomas Wiegand, “3D Video: Acquisition, Coding, and Display”, 2010 IEEE Transactions on Consumer Electronics, Vol 56, No 2, May 2010, pp 946-950 [15] Elaine Barker, Allen Roginsky, “Transitions: Recommendation for Transitioning the Use of Cryptographic Algorithms and Key Lengths”, NIST Special Publication 800-131A, 2011

[16] Junko Takahashi, Toshinori Fukunaga (2010), “Differential Fault Analysis on AES with 192 and 256-Bit Keys”, NTT Information Sharing Platform Laboratories Nippon Telegraph and Telephone Corporation 3-9-1 Midori-cho, Musashino-shi, Tokyo, 180-8585, Japan

Ngày đăng: 31/10/2020, 10:14

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