Tải bản đầy đủ (.pdf) (29 trang)

Học phần: Các kỹ thuật giấu tin Bài tập lớn: Demo Ứng dụng của giấu tin trong xác thực nội dung

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (7.75 MB, 29 trang )

HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG
KHOA CƠNG NGHỆ THÔNG TIN

Học phần: Các kỹ thuật giấu tin
Bài tập lớn:
Demo Ứng dụng của giấu tin trong xác thực nội dung

Sinh viên thực hiện:

Nhóm

Trần Quốc Hồn-B18DCAT094
Lê Đình Huy-B18DCAT109
Hán Nam Long-B18DCAT138
Đỗ Thiện Bính-B18DCAT022
Trần Thái Hùng-B18DCAT104
13

Hà Nội 2022


Đỗ Thiện Bính
Lý thuyết:
Giống với hệ thống mã hóa đối xứng. Ở đây ta xác thực ảnh dựa trên thông
điệp(plain text) mà cả bên A ( bên gửi) và cả bên B (bên nhận) đều biết được.
Thơng điệp mã hóa được nhúng vào bên trong bức ảnh. Ta sử dụng một thơng
điệp giống như là khóa bí mật. Đầu tiện mã hóa thơng điệp bằng thuật tốn
sha256 sau đó nhúng vào bên trong bức ảnh. Đối với bên xác thực ta trích xuất
từ bức ảnh ra một thơng điệp đã được mã hóa và mã hóa thơng điệp (plain text)
bằng sha256 sau đó so sánh 2 thơng điệp này với nhau nếu như chúng giống
nhau thì có thể khẳng định bức ảnh là của bên gửi hay bên mã hóa A.


Ưu điểm:
Thuật tốn đơn giản.
Nhược điểm
Để có thể xác thực được thì cả bên gửi và nhận đều phải biết được thơng
điệp(plain text) nếu có nhiều bên cùng tham gia sẽ khó khăn trong việc quản lý
khóa(ở đây là thơng điệp- plain text)
Thủy vân bên trong ảnh vẫn được giữ nguyên sau khi copy và vẫn có thể xác
thực nếu biết được thông điệp nhúng bên trong ảnh.
Nhúng


Xác Thực


Demo:
Cấu trúc thư mục:

Image_watermark.py: file dùng để thực hiện công việc nhúng như ảnh phần lý
thuyết cụ thể:
·

Mã hóa thơng điệp đầu vào bằng sha256

·

Nhúng thông điệp vào ảnh

·

Ghi ảnh được nhúng ra một file output


Hiện lên thông báo gồm ảnh đã được nhúng và thông báo nhúng thành
·
công
Image_watermark_extract.py: file thực hiện các công việc trong phần xác thực.
Cụ thể
·

Mã hóa thơng điệp được đầu vào bằng sha256


·

Trích xuất ra thơng điệp được nhúng trong ảnh

·

So sánh 2 thông điệp

Hiện thông báo bao gồm 2 thông điệp mã hóa và kết quả “successfully”
·
nếu 2 thơng điệp mã hóa giống nhau và “unsuccessfully” nếu ngược lại
Input.png: file ảnh được sử dụng trong demo.

Thực hiện

Thực hiện câu lệnh: py image_watermark.py input.png Binh.At022 output.png
Với py image_watermark.py dùng để chạy file
Input.png là ảnh đầu và sẽ được nhúng
Binh.At022 là thông điệp giống với khóa bí mật và sẽ được dùng ở cả 2 bên để

nhúng vào ảnh hoặc dùng để xác thực
Output.png là tên file ảnh đầu ra - ảnh đã được nhúng thông điệp.


Bên trên là kết quả
·

Một ảnh output.png

·

Một thông báo đã nhúng thành công

ảnh output.png cũng được lưu vào trong thư mục.

** Xác thực
Chạy lệnh: py image_watermark_extract.py output.png Binh.At022
image_watermark_extract.py: file thực hiện các công việc để xác thực
output.png: file ảnh được nhúng thông điệp và dùng để xác thực.


Binh.At022: thông điệp được dùng ở bên xác thực giống như khóa bí mật

Kết quả:

Nhận được một thơng báo gồm;
·

Sha extract là thơng điệp mã hóa được extract từ ảnh output.png


·

Sha input: là thơng điệp mã hóa từ input đầu vào (Binh.At022)

Copyright verified successfully: thơng báo hình được xác thực đúng là
·
ảnh mà bên gửi gửi.


Ngoại lệ:
Tiến hành nhập sai thông điệp đầu vào bên xác thực:
Chạy lệnh: py image_watermark_extract.py output.png Binh.At000
Nhập sai Binh.At022 -> Binh.At00

Kết quả:

Nhận được thơng báo:
·

Sha extract: thơng điệp mã hóa được trích xuất từ ảnh output.png

·

Sha input: thơng điệp mã hóa từ input đầu vào (Binh.At00)


Copyright verified unsuccessfully: thông ảnh xác thực không thành công
·
nhing vào Sha extract và Sha input ta cũng thấy được nó khơng giống nhau.


Vấn đề cịn tồn tại:
ảnh khi copy thủy vân được nhúng vẫn tồn tại vẫn có thể sử dụng được
·
trong xác thực.
·

xác thực phục thuộc vào thông điệp bí mật.

ảnh hợp lệ nhưng xác thực có thể sai do bên xác thực nhầm lẫn thơng điệp
·
bí mật dùng để xác thực

Demo 2: Trần Thái Hùng
Giới thiệu:
Deepfakes và các file phương tiện bị chỉnh sửa đang trở thành mối đe
dọa nổi bật do những tiến bộ gần đây trong kỹ thuật tổng hợp hình ảnh
và video. Để giải quyết những thách thức này, kỹ thuật nhúng thủy vân
số nửa dễ vỡ cho phép xác thực phương tiện bằng cách xác minh một
thơng điệp bí mật vơ hình được nhúng trong pixel hình ảnh. Thay vì xác
định và phát hiện phương tiện giả mạo bằng tạo tác trực quan, ta chủ
động nhúng thủy vân nửa dễ vỡ vào hình ảnh thật để có thể chứng minh
tính xác thực của nó. Thủy vân được thiết kế dễ bị vỡ khi có thay đổi
hoặc giả mạo trong khi vẫn tồn tại đối với các hoạt động xử lý hình ảnh
lành tính như nén hình ảnh, chia tỷ lệ, độ bão hịa, điều chỉnh độ tương
phản, v.v. Điều này cho phép hình ảnh được chia sẻ qua internet có thể
xác minh bằng thủy vân nhưng khơng được đối với các kiểu hốn đổi
khuôn mặt hoặc bất kỳ kỹ thuật sửa đổi Deepfake nào khác. FaceSigns
có thể nhúng 128 bit bí mật như một thủy vân vơ hình có thể được khơi



phục với độ chính xác khơi phục bit cao ở một số cấp độ nén, trong khi
không thể khôi phục khi các thao tác Deepfake được áp dụng.
Mơ hình xác thực hình ảnh với thủy vân nửa dễ vỡ:

Ví dụ:
Có 3 mẫu hình ảnh:



Hình 1 gốc, hình 1 sau khi được thêm thủy vân và hình 1 sau khi qua bộ
lọc của instagram.



HÌnh 2 gốc, hình 2 sau khi được thêm thủy vân và hình 2 khi bị thay đổi
khn mặt.



Hình 3 gốc, hình 3 sau khi được thêm thủy vân và hình 3 khi bị chỉnh
sửa khn mặt.

Khi thêm thủy vân nửa dễ vỡ vào ảnh, có thể thấy ảnh bị thay đổi bằng
trực quan. Và Nếu bằng trực quan khơng rõ ràng thì FaceSigns vẫn đưa
ra thơng báo ảnh đã bị sửa đổi độc hại.

Le Huy


- Kịch bản xác thực được rút gọn dựa theo mơ hình trên:

+ Q trình nhúng: Message là 1 file ảnh (watermark) dùng để nhúng
vào Original Work (hình ảnh sử dụng nhúng) sử dụng thuật toán DCT
(tuy nhiên được nhúng trực tiếp mà không qua các bước xử lý mã hố
để tạo Signature)
+ Q trình trích xuất: Work (File đã được nhúng) trích xuất ra Message
(tạo ra 1 file ảnh mới giống với kỳ vọng sẽ giống với file watermark ban
đầu).
+ Quá trình xác thực: So sánh 2 file (1 file được trích xuất và 1 file được
nhúng) để xét xem Work có được xác thực khơng.



File watermark dùng để nhúng

Thực hiện nhúng file sử dụng DCT


File ảnh gốc

File ảnh sau khi nhúng




Thực hiện trích xuất file đã nhúng

Hình ảnh được trích xuất từ file đã nhúng trước đó


Xác thực file watermark được trích xuất với file watermark ban đầu



Trần Quốc Hoàn - B18DCAT094
-

-

Ứng dụng phương pháp nhúng 1 ảnh được sử dụng như 1 "Thủy vân dễ vỡ"
(Fragile-Watermark), được mã hóa bằng cách XOR với "Chaotic image" vào
ảnh trên miền không gian theo phương pháp LSB
Thủy vân sẽ bao phủ toàn bộ bức ảnh cần xác thực



Chạy lệnh:
Cài đặt file:

Chuyển đến folder :
cd fragile-watermarking


-

Nhập lệnh: Để nhúng thủy vân anh1.jpg vào ảnh Hoan094.png -> Sinh ra ảnh :
Hoan094_watermaked.png
+ Nhập key để trích xuất thủy vân : Ở đây ta dùng key là : abcd

python3 watermark-fragile.py Hoan094.png anh1.jpg Hoan094_watermaked.png



×