CHƢƠNG TRèNH Kí SỐ TRấN ẢNH SỐ

Một phần của tài liệu Nghiên cứu một số phương pháp bảo mật và xác thực bản quyền ảnh số (Trang 91)

3.2.1. Chƣơng trỡnh ký số RSA

Đõy là chƣơng trỡnh dựng để xỏc thực bức ảnh số. Ngƣời gửi sẽ dựng chữ ký cụng khai của ngƣời nhận để ký lờn bức ảnh số. Sau đú truyền cả bức ảnh số và chữ ký trờn kờnh truyền để ngƣời nhận cú thể xỏc thực bức ảnh đỳng là của ngƣời gửi nhờ sử dụng khúa cụng bớ mật của mỡnh để kiểm tra.

Thuật toỏn sử dụng đƣợc trỡnh bày ở mục 2.4.2 (trang 63).

1./ Cấu hỡnh hệ thống

 Yờu cầu phần mềm:

- Hệ thống đƣợc cài đặt trờn cụng cụ MATLAB (phiờn bản R2011A).

- Hệ thống cú thể chạy trờn cỏc hệ điều hành nhƣ: Windows (2000 / XP / Vista / 7 / 8 / …), Linux, Mac.

 Yờu cầu phần cứng:

- Chip: Intel hoặc AMD hỗ trợ SSE2. - Ram: 1024 MB.

- Ổ đĩa cứng cũn trống: 3-4GB.  Dữ liệu thử nghiệm:

- Ảnh thử nghiệm để ký lờn đú:

Dữ liệu ảnh gốc:\Lena.BMP

- Dữ liệu khúa bớ mật và cụng khai đƣợc tạo ra tự động khi CLICK vào mục Tạo khúa.

92

2./ Cỏc thành phần của chƣơng trỡnh

 Giao diện chƣơng trỡnh

 Chƣơng trỡnh gồm cỏc chức năng chính

- Tạo File Khúa Bớ Mật & Cụng Khai: ngƣời nhận sẽ tạo cặp khúa bớ mật, cụng khai của mỡnh để cú thể giỳp ký và kiểm tra bức ảnh.

- Tạo Chữ Ký, Lƣu Chữ Ký: căn cứ vào thụng tin bức ảnh, khúa cụng khai của ngƣời nhận. Ngƣời gửi thụng qua hệ thống sẽ ký lờn bức ảnh; đồng thời lƣu lại chữ ký đú. Bức ảnh và chữ ký sẽ đƣợc gửi cho ngƣời nhận để giỳp ngƣời nhận cú thể xỏc định chớnh xỏc bức ảnh đú là của ngƣời gửi.

- Nạp Ảnh, Nạp Chữ Ký, Nạp File Khúa Bớ Mật: ngƣời nhận sẽ tiến hành nạp ảnh, nạp chữ ký của ngƣời gửi và khúa Bớ mật của mỡnh để kiểm tra xem bức ảnh đú cú phải do ngƣời gửi truyền đi, cú bị thay đổi gỡ trờn đƣờng truyền hay khụng?

93

3./ Hƣớng dẫn sử dụng chƣơng trỡnh

 Bƣớc 1: Tạo File Khúa Bớ Mật & Cụng Khai

- Click vào mục “Tạo File Khúa Bớ Mật & Cụng Khai”. Việc tớnh khúa là hoàn toàn do hệ thống tự động lấy ngẫu nhiờn.

- Hệ thống sẽ lần lƣợt yờu cầu bạn chọn nơi sẽ lƣu, rồi đặt tờn cho File Khúa Cụng Khai, File Khúa Bớ Mật và chọn Save.

94  Bƣớc 2: Tạo Chữ Ký

- Click vào mục “Tạo Chữ Ký”. Hệ thống sẽ yờu cầu chọn File Ảnh cần ký.

- Sau khi nạp xong. Hệ thống sẽ tiếp tục đề nghị nạp File Khúa Cụng Khai của ngƣời nhận.

95

- Nạp xong thụng tin trờn, bức ảnh cần ký sẽ đƣợc tạo đại điện nhờ hàm băm MD5; đồng thời đại diện đú sẽ đƣợc ký bằng thuật toỏn RSA. Đại diện và chữ ký của đại diện ta cú thể theo dừi ở hỡnh dƣới đõy

- Ngƣời dựng cú thờm tựy chọn lƣu lại chữ ký vừa tạo ra bằng cỏch click vào mục “Lưu Chữ Ký”. Khi đú bạn sẽ đƣợc lựa chọn nơi lƣu, đặt tờn File chữ ký. Click vào Save, bạn sẽ đƣợc thụng bỏo “đó lưu CHỮ Kí thành cụng”. (adsbygoogle = window.adsbygoogle || []).push({});

96  Bƣớc 3: Kiểm tra chữ ký

- Ngƣời nhận cú thể kiểm tra chữ ký bằng cỏch Click lần lƣợt vào cỏc mục “Nạp Ảnh”, “Nạp Chữ Ký” nhận đƣợc từ ngƣời gửi. Và cuối cựng là click “Nạp File Khúa Bớ Mật” của mỡnh để kiểm tra xem liệu chữ ký tƣơng ứng với bức ảnh trờn là Đỳng hay Sai. Từ đú biết đƣợc liệu bức ảnh cú bị thay đổi gỡ trờn đƣờng truyền hay khụng.

4./ Kết quả thực nghiệm

 Hệ thống đã đƣợc cài đặt thành cụng trờn cụng cụ lập trỡnh Matlab.

 Khi thử nghiệm nếu bức ảnh cú thay đổi dự là nhỏ thỡ đại diện diện cũng thay đổi  kiểm chứng với chữ ký kốm theo sẽ cho kết quả SAI  ta cú thể ứng dụng loại chữ ký này nhằm mục đích xỏc thực xem liệu bức ảnh cú bị thay đổi trờn đƣờng truyền hay khụng.

97

3.2.2. Chƣơng trỡnh ký số Elgamal

Đõy là chƣơng trỡnh dựng để xỏc thực bức ảnh số. Ngƣời gửi sẽ ký lờn bức ảnh số, sau đú truyền cả bức ảnh số và chữ ký trờn kờnh truyền để ngƣời nhận cú thể xỏc thực bức ảnh đỳng là của ngƣời gửi nhờ sử dụng khúa cụng khai của ngƣời gửi để kiểm tra.

Thuật toỏn sử dụng đƣợc trỡnh bày ở mục 2.4.2 (trang 65).

1./ Cấu hỡnh hệ thống

 Yờu cầu phần mềm:

- Hệ thống đƣợc cài đặt trờn cụng cụ MATLAB (phiờn bản R2011A).

- Hệ thống cú thể chạy trờn cỏc hệ điều hành nhƣ: Windows (2000 / XP / Vista / 7 / 8 / …), Linux, Mac.

 Yờu cầu phần cứng:

- Chip: Intel hoặc AMD hỗ trợ SSE2. - Ram: 1024 MB.

- Ổ đĩa cứng cũn trống: 3-4GB.  Dữ liệu thử nghiệm:

- Ảnh thử nghiệm để ký lờn đú:

Dữ liệu ảnh gốc:\Lena.BMP

- Dữ liệu khúa bớ mật và cụng khai đƣợc tạo ra tự động khi CLICK vào mục Tạo khúa.

98

2./ Cỏc thành phần của chƣơng trỡnh

 Giao diện chƣơng trỡnh

 Chƣơng trỡnh gồm cỏc chức năng chính

- Tạo File Khúa Bớ Mật & Cụng Khai: ngƣời nhận sẽ tạo cặp khúa bớ mật, cụng khai của mỡnh để cú thể giỳp ký và kiểm tra bức ảnh.

- Tạo Chữ Ký, Lƣu Chữ Ký: căn cứ vào thụng tin bức ảnh, khúa của mỡnh. Ngƣời gửi thụng qua hệ thống sẽ ký lờn bức ảnh; và lƣu lại chữ ký đú. Bức ảnh và chữ ký sẽ đƣợc gửi cho ngƣời nhận để giỳp ngƣời nhận cú thể xỏc định chớnh xỏc bức ảnh đú cú phải là của ngƣời gửi hay khụng.

- Nạp Ảnh, Nạp Chữ Ký, Nạp File Khúa Bớ Mật: ngƣời nhận sẽ tiến hành nạp ảnh, nạp chữ ký, khúa cụng khai của ngƣời gửi để kiểm tra xem bức ảnh đú cú phải do ngƣời gửi truyền đi hay khụng, ảnh cú bị thay đổi gỡ hay khụng?

99

3./ Hƣớng dẫn sử dụng chƣơng trỡnh

 Bƣớc 1: Tạo File Khúa Bớ Mật & Cụng Khai

- Click vào mục “Tạo File Khúa Bớ Mật & Cụng Khai”. Việc tớnh khúa là hoàn toàn do hệ thống tự động lấy ngẫu nhiờn. (adsbygoogle = window.adsbygoogle || []).push({});

- Hệ thống sẽ lần lƣợt yờu cầu bạn chọn nơi sẽ lƣu, rồi đặt tờn cho File Khúa Cụng Khai, File Khúa Bớ Mật và chọn Save.

100  Bƣớc 2: Tạo Chữ Ký

- Click vào mục “Tạo Chữ Ký”. Hệ thống sẽ yờu cầu chọn File Ảnh cần ký.

- Sau khi nạp xong. Hệ thống sẽ tiếp tục đề nghị nạp File Khúa Cụng Khai, File Khúa Bớ Mật của ngƣời ký.

101

- Nạp xong thụng tin trờn, bức ảnh cần ký sẽ đƣợc tạo đại điện nhờ hàm băm MD5; đồng thời đại diện đú sẽ đƣợc ký bằng thuật toỏn Elgamal. Đại diện và chữ ký của đại diện ta cú thể theo dừi ở hỡnh dƣới đõy

- Ngƣời dựng cú thờm tựy chọn lƣu lại chữ ký vừa tạo ra bằng cỏch click vào mục “Lưu Chữ Ký”. Khi đú bạn sẽ đƣợc lựa chọn nơi lƣu, đặt tờn File chữ ký. Click vào Save, bạn sẽ đƣợc thụng bỏo “đó lưu CHỮ Kí thành cụng”.

102  Bƣớc 3: Kiểm tra chữ ký

- Ngƣời nhận cú thể kiểm tra chữ ký bằng cỏch Click lần lƣợt vào cỏc mục “Nạp Ảnh”, “Nạp Chữ Ký” nhận đƣợc từ ngƣời gửi. Và cuối cựng là click “Nạp File Khúa Cụng Khai” của ngƣời gửi để kiểm tra xem liệu chữ ký tƣơng ứng với bức ảnh trờn là Đỳng hay Sai. Từ đú biết đƣợc liệu bức ảnh cú bị thay đổi gỡ trờn đƣờng truyền hay khụng.

4./ Kết quả thực nghiệm

 Hệ thống đã đƣợc cài đặt thành cụng trờn cụng cụ lập trỡnh Matlab.

 Khi thử nghiệm nếu bức ảnh cú thay đổi dự là nhỏ thỡ đại diện diện cũng thay đổi  kiểm chứng với chữ ký kốm theo sẽ cho kết quả SAI  ta cú thể ứng dụng loại chữ ký này nhằm mục đích xỏc thực xem liệu bức ảnh cú bị thay đổi trờn đƣờng truyền hay khụng.

103

3.3. CHƢƠNG TRèNH ỨNG DỤNG HÀM BĂM TRấN ẢNH SỐ

3.3.1. Chƣơng trỡnh ứng dụng hàm băm MD5

Đõy là chƣơng trỡnh dựng để xỏc thực bức ảnh số. Ngƣời gửi sẽ băm trờn bức ảnh số để tạo đại diện, sau đú truyền cả bức ảnh số và đại diện trờn kờnh truyền để ngƣời nhận cú thể xỏc thực bức ảnh đỳng là của ngƣời gửi. Để làm việc đú, ngƣời nhận sẽ băm lại bức ảnh để so sỏnh đại diện hiện tại của bức ảnh nhận đƣợc với đại diện gửi kốm bức ảnh nhận đƣợc.

1./ Cấu hỡnh hệ thống

 Yờu cầu phần mềm:

- Hệ thống đƣợc cài đặt trờn cụng cụ MATLAB (phiờn bản R2011A).

- Hệ thống cú thể chạy trờn cỏc hệ điều hành nhƣ: Windows (2000 / XP / Vista / 7 / 8 / …), Linux, Mac.

 Yờu cầu phần cứng:

- Chip: Intel hoặc AMD hỗ trợ SSE2. - Ram: 1024 MB.

- Ổ đĩa cứng cũn trống: 3-4GB.  Dữ liệu thử nghiệm:

- Ảnh thử nghiệm để băm trờn đú:

104

2./ Cỏc thành phần của chƣơng trỡnh

 Giao diện chƣơng trỡnh

 Chƣơng trỡnh gồm cỏc chức năng chính

- Tạo đại diện: ngƣời gửi sẽ nạp bức ảnh vào hệ thống. Hệ thống tự động tạo đại diện cho bức ảnh bằng cỏch sử dụng hàm băm MD5. Sau đú hệ thống sẽ hiển thị đại diện bức ảnh trờn ụ Đại Diện để ngƣời gửi cú thể xem trƣớc.

- Lƣu đại diện: lƣu nội dung của Đại Diện vào file TEXT để ngƣời gửi cú thể truyền kốm cựng bức ảnh tới ngƣời nhận. Ngƣời nhận căn cứ vào đú để xỏc thực xem liệu bức ảnh cú bị thay đổi gỡ trờn đƣờng truyền hay khụng. (adsbygoogle = window.adsbygoogle || []).push({});

- Xỏc thực ảnh: căn cứ vào thụng tin bức ảnh, đại diện và hàm băm để tạo ra đại diện. Hệ thống sẽ băm bức ảnh thu đƣợc từ ngƣời gửi nhờ hàm băm ngƣời gửi cung cấp; sau đú sẽ so sỏnh với đại diện đi kốm bức ảnh. Nếu 2 đại diện này trựng nhau thỡ ta cú thể khẳng định bức ảnh gửi qua kờnh truyền khụng bị thay đổi trờn ụ Kết Quả.

105

3./ Hƣớng dẫn sử dụng chƣơng trỡnh

 Bƣớc 1: Tạo đại diện

- Click vào mục “Tạo Đại Diện”.

- Chọn ảnh muốn tạo đại diện rồi click vào Open.

- Ảnh đƣợc nạp xong, hệ thống sẽ thụng bỏo “đó NẠP xong ẢNH & tạo ĐẠI DIỆN thành cụng”. Ta sẽ nhỡn thấy thụng bỏo và đại diện của ảnh đƣợc tạo ra.

- Muốn lƣu lại đại diện đƣợc tạo ra ở trờn, ta click vào mục “Lƣu Đại Diện”, chọn nơi sẽ lƣu, đặt tờn file chứa đại diện và chọn Save. Nhƣ vậy lỳc này ta đã cú

106

file text chứa đại diện của bức ảnh. Sau này ta sẽ chuyển cả bức ảnh và file text này để ngƣời nhận cú thể xỏc thực bức ảnh đã bị thay đổi trờn đƣờng truyền hay chƣa.

 Bƣớc 2: Xỏc thực ảnh

- Click vào mục “Nạp Ảnh”, chọn ảnh cần xỏc thực, rồi click vào Open.

- Click vào mục “Nạp Đại Diện”, chọn file đại diện của ảnh cần kiểm tra, rồi click vào Open.

- Sau khi thực hiện cụng việc trờn, hệ thống sẽ xỏc thực đƣợc bức ảnh thu đƣợc cú đỳng nhƣ ban đầu hay khụng nhờ việc băm ảnh đem kiểm tra và so sỏnh với đại diện đƣợc gửi kốm bức ảnh kiểm tra.

- Nếu khụng cú thay đổi sẽ thụng bỏo “Bức Ảnh KHễNG Bị Thay Đổi !!!”, ngƣợc lại sẽ thụng bỏo “Bức Ảnh BỊ Thay Đổi !!!”.

4./ Kết quả thực nghiệm

 Hệ thống đã đƣợc cài đặt thành cụng trờn cụng cụ lập trỡnh Matlab.

 Khi thử nghiệm nếu bức ảnh cú thay đổi dự là nhỏ thỡ đại diện diện cũng thay đổi  kiểm chứng với đại diện kốm theo sẽ cho kết quả SAI  ta cú thể ứng dụng loại hàm băm này nhằm mục đích xỏc thực xem liệu bức ảnh cú bị thay đổi trờn đƣờng truyền hay khụng?

107

KẾT LUẬN

Kết quả chớnh: Luận văn cú 3 kết quả chớnh

1./ Nghiờn cứu lý thuyết và thực tế để hệ thống lại cỏc vấn đề sau:

- Tổng quan về bảo vệ thụng tin số.

- Một số tỡnh huống xuất hiện trong bảo vệ bản quyền ảnh số. - Một số phƣơng phỏp bảo vệ bản quyền ảnh số.

2./ Thử nghiệm chƣơng trỡnh bảo vệ bản quyền ảnh số:

- Chƣơng trỡnh thủy võn trờn ảnh số. - Chƣơng trỡnh ký số trờn ảnh số.

- Chƣơng trỡnh ứng dụng hàm băm trờn ảnh số.

3./ Đề xuất một số phƣơng phỏp bảo vệ bản quyền ảnh số:

- Kết quả đã đƣợc trỡnh bày trong 02 bỏo cỏo tại Hội thảo khoa học cấp trƣờng năm 2010, 2011.

Hƣớng phỏt triển của đề tài: (adsbygoogle = window.adsbygoogle || []).push({});

1./ Tiếp tục nghiờn cứu, hoàn thiện đề tài để cú thể đƣa ra cỏc đề xuất tốt phục vụ cụng tỏc nghiờn cứu.

2./ Hoàn thiện chƣơng trỡnh cài đặt thử nghiệm, tiến đến phỏt hành miễn phớ cho cỏc đối tƣợng cú nhu cầu bảo vệ bản quyền sản phẩm ảnh số. Cụ thể là: xõy dựng phần mềm nhỳng bản quyền vào ngay bức ảnh số chụp trờn cỏc thiết bị di động chạy hệ điều hành iOS, Android,…

108

DANH MỤC CễNG TRèNH CỦA TÁC GIẢ

[01]. Chu Văn Huy, Đặng Quang Thanh, Nguyễn Kim Anh (2010), “Nghiờn cứu kỹ thuật thủy võn trờn LSB của ảnh số hỗ trợ xỏc thực”, Bỏo Cỏo Tại Hội Thảo Khoa Học Cụng Nghệ Hàng Hải Năm 2010.

[02]. Chu Văn Huy, Đặng Quang Thanh, Nguyễn Kim Anh (2011), “Ứng dụng kỹ thuật thủy võn sử dụng phộp biến đổi DCT trong việc bảo vệ bản quyền ảnh số”,

Bỏo Cỏo Tại Hội Thảo Khoa Học Cụng Nghệ Hàng Hải Năm 2011.

[03]. Nguyễn Kim Anh, Chu Văn Huy, Vừ Văn Thƣởng (2010), “Ứng dụng kỹ thuật Data Mining vào dự đoỏn kết quả học tập của sinh viờn khoa CNTT - Trƣờng Đại học Hàng hải”, Đề Tài Nghiờn Cứu Khoa Học Cấp Trường Năm 2009 - 2010. [04]. Nguyễn Kim Anh, Chu Văn Huy, Trần Đỡnh Vƣơng (2011), “Nghiờn cứu phỏt triển hệ thống kiểm tra việc sao chộp luận văn tốt nghiệp trong sinh viờn trƣờng Đại Học Hàng Hải”, Đề Tài Nghiờn Cứu Khoa Học Cấp Trường Năm 2010 - 2011.

109

TÀI LIỆU THAM KHẢO

Tiếng Việt

[01] - Nguyễn Xuõn Huy (2003), Trần Quốc Dũng, Giỏo trỡnh giấu tin và thủy võn ảnh, NXB Hà Nội.

[02] - Trịnh Nhật Tiến (2008), Giỏo trỡnh an toàn dữ liệu.

Tiếng Anh

[03] - Fabien A.P.Petitcolas (1999), “Introduction to Information Hiding in Information techniques for Steganography and Digital Watermarking”, Artec House.

[04] - J.Fridrich, Goljan, R.Du (2001), “Detecting LSB Steganography in Color and Gray Scale Images”, Magazine of IEEE Multimedia.

[05] - Swason, Kobayashi, Tewfik (1998), “Mutimedia Data Embedding and Watermarking Technologies”, Proceedings of IEEE.

[06] - http://en.wikipedia.org/wiki/Discrete_cosine_transform [07] - http://en.wikipedia.org/wiki/Modulo [08] - http://sports.tmcnet.com/news/2011/01/17/5247713.htm [09] - http://vi.wikipedia.org/wiki/Mó_Hamming [10] - http://www.watermarkingworld.com [11] - http:// www.mathworks.com

Một phần của tài liệu Nghiên cứu một số phương pháp bảo mật và xác thực bản quyền ảnh số (Trang 91)