Tổng quan về giấu tin, một số phương pháp giấu tin trong ảnh nhị phân, xây dựng ứng dụng giấu tin trên ảnh nhị phân
Trang 1LỜI MỞ ĐẦU
Sự phát triển nhanh chóng của khoa học kỹ thuật trên nhiều lĩnh vực đặc biệt là trong lĩnh vực đa phương tiện giúp cho các hệ thống sản xuất, quản lý và phân phối các sản phẩm: hình ảnh, âm thanh, tài liệu văn bản… là rất dễ dàng Cùng với sự phổ biến rộng rãi các mạng internet tốc độ cao làm cho quá trình phân phối chúng trở nên nhanh chóng và thuận tiện, đem lại những thuận lợi to lớn thông qua các hệ thống thương mại điện tử
Tình trạng vi phạm bản quyền số đang xảy ra hàng ngày, hàng giờ một cách liên tục Nhằm bảo vệ các sản phẩm số không bị sử dụng trái phép, song song với việc kêu gọi ý thức tự giác thực thi luật bản quyền, các công ty công nghệ lớn trên thế giới đã và đang thực hiện các giải pháp kỹ thuật kiểm soát bản quyền số Một trong những vấn đề được đặt ra là làm sao bảo vệ quyền sở hữu đối với các sản phẩm đa phương tiện này
Đứng trước tình hình đó vấn đề về bảo mật thông tin hiện nay luôn nhận được sự quan tâm đặc biệt trong nhiều lĩnh vực Đã có nhiều phương pháp để bảo mật thông tin, một trong những phương pháp được sử dụng phổ biến để bảo
vệ quyền sở hữu đối với nội dung của các sản phẩm đa phương tiện là mã hoá Nội dung của sản phẩm đó được mã hoá và gửi cho người sử dụng Người sử dụng chỉ đọc được các thông tin này khi nhận được khoá giải mã đi kèm Phương pháp mã hoá trên chỉ hiệu quả trong việc truyền thông tin nhưng không hiệu quả trong việc bảo vệ quyền sở hữu Sau khi sản phẩm được giải mã, người dùng ngoài việc lưu trữ còn có thể nhân bản và phân phối lại
Giấu tin là phương pháp đã và đang tiếp tục được nghiên cứu và ứng dụng rất mạnh mẽ Đây là phương pháp mới và phức tạp nó đang được xem như một công nghệ cốt lõi cho vấn đề bảo vệ bản quyền, chống nhân bản bất hợp pháp, chống lại truy cập trái phép, chống xuyên tạc, chống giả mạo thông tin, xác thực thông tin và điều khiển truy cập ứng dụng trong an toàn và bảo mật thông tin
Sự khác biệt chủ yếu giữa mã hoá thông tin và giấu tin là phương pháp
mã hoá làm cho các thông tin hiện rõ là nó có được mã hoá hay không còn đối với phương pháp giấu tin thì người ta sẽ khó biết được là có thông tin giấu bên trong do tính chất ẩn hình (invisible) của thông tin được giấu Các phương pháp
mã hóa thường thu hút sự chú ý, một khi những thông tin mã hoá bị phát hiện
Trang 2thì những tên tin tặc sẽ tìm mọi cách để triệt phá Và cuộc chạy đua giữa những người bảo vệ thông tin và bọn tin tặc vẫn chưa kết thúc tuyệt đối về bên nào Trong hoàn cảnh đó thì giấu tin trở thành một phương pháp hữu hiệu để che giấu tin làm cho tin tặc không thể phát hiện.
Từ thực trạng đó, bài báo cáo trình bày tổng quan về giấu tin, một số phương pháp giấu tin trong ảnh nhị phân, xây dựng ứng dụng giấu tin trên ảnh nhị phân dựa trên các phương pháp được trình bày
Báo cáo bao gồm các nội dung sau:
Phần 1 Mở đầu
Sơ lược về bối cảnh mạng máy tính hiện nay, mức độ an toàn dữ liệu Phương hướng, phạm vi nghiên cứu và giải pháp tiếp cận, từ đó đặt ra nhiệm vụ của bài báo cáo
Phần 2 Nội dung chính, bao gồm có 3 chương
Chương 1: Tổng quan giấu tin và cơ sở toán học
Giới thiệu tổng quan về giấu tin, một số khái niệm cơ bản Phân loại và trình bày một số kỹ thuật giấu tin cơ bản, các yêu cầu đối với bài toán giấu tin
và một số ứng dụng của giấu tin Đồng thời trình bày các khái niệm cơ bản lý thuyết đồng dư modulo và lý thuyết module làm cơ sở để trình bày các thuật toán giấu tin
Chương 2: Giấu tin trong ảnh nhị phân
Trình bày một số phương pháp, kĩ thuật giấu tin trên ảnh nhị phân định dạng ảnh Bitmap
Chương 3: Xây dựng chương trình ứng dụng
Thiết kế và xây dựng giải pháp ứng dụng giấu tin vào trong ảnh nhị phân
Phần 3 Kết luận
Phần 4 Tài liệu tham khảo
Trang 3CHƯƠNG 1
TỔNG QUAN GIẤU TIN VÀ CƠ SỞ TOÁN HỌC
1.1 Bài toán giấu tin và vai trò
1.1.1 Bài toán giấu tin
Giấu 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à đối tượng chứa như: tập tin ảnh, tập tin âm thanh, tập tin văn bản…
mà không gây ra sự nhận biết về sự tồn tại của thông tin đã được giấu
Phương pháp giấu tin được tiến hành theo nhiều cách khác nhau tùy theo từng phương pháp và mục đích Bài toán giấu tin thông thường gồm hai quá trình:
Nhúng tin (mã hóa)
Trích rút tin (giải mã)
Ví dụ 1: Thông điệp cần gửi được mã hóa và nhúng các bit thông tin của vào trong ảnh
Hình 1 Ảnh đã được nhúng thông tin mật
Ví dụ 2: Thông điệp cần gửi được chứa trong một đoạn văn bản, ở đây đối tượng chứa là một đoạn văn bản có nội dung sau:
Trang 4“Apparently neutral’s protect is thoroughly discounted and ignored Isman hard hit Blockade issue affects for pretext embargo on by-products, ejecting suets and vegetable oils”
Có thể thấy được nội dung truyền tải là bức điện mật được sử dụng trong
chiến tranh thế giới lần thứ 2: “Pershing sails for YN June 1”
Bài toán giấu tin gồm 4 đối tượng chính là:
- Thông tin mật: Là thông tin nhúng vào đối tượng chứa và là thông tin cần được bảo vệ
- Đối tượng chứa: Đối tượng được sử dụng chứa thông điệp mật
- Đối tượng đã nhúng: Là đối tượng chứa sau khi nhúng thông tin mật
Ví dụ nếu đối tượng chứa là ảnh thì đối tượng đã nhúng là Image
Stego Khóa mật: Là khóa tham gia vào quá trình nhúng, tùy theo từng phương pháp mà khóa này có tham gia hay không
Các yêu cầu trong bài toán giấu tin:
- Tính bền vững: Thể hiện khả năng ít bị thay đổi trước những tấn công
từ bên ngoài như thay đổi định dạng, nội dung Hiện nay chưa có phương pháp nào đảm bảo biện pháp này một cách tuyệt đối Với từng ứng dụng cụ thể thì yêu cầu này cũng thể hiện khác nhau
- Khả năng không bị phát hiện: thể hiện ở việc khó xác định được đối tượng có chứa thông tin mật hay không Hầu hết các phương pháp giấu tin dựa trên đặc điểm của hai hệ tri giác người: thị giác và thính giác Khả năng này còn gọi là khả năng giả dạng
- Khả năng lưu trữ: Khả năng này thể hiện ở lượng thông tin của thông điệp mật có thể nhúng trong đối tượng chứa Do tính bảo mật nên khả năng lưu trữ luôn bị hạn chế Do đó trong trường hợp muốn ẩn một thông tin có kích thước tương đối lớn ta thường chia nhỏ ra nhiều thành phần và thực hiện nhúng từng phần
Trang 51.1.2 Phân loại các kỹ thuật giấu tin
Kỹ thuật giấu tin nhằm mục đích đảm bảo an toàn và bảo mật thông tin ở hai khía cạnh Một là bảo mật cho giữ liệu được đem giấu (embedded data), chẳng hạn như giấu tin mật: thông tin mật được giấu kỹ trong một đối tượng khác sao cho người khác không phát hiện được (steganography), hai là bảo mật cho chính đối tượng được dùng để giấu tin (host data), chẳng hạn như ứng dụng bảo vệ bản quyền, phát hiện xuyên tạc thông tin (watermarking)
Hai khía cạnh khác nhau này dẫn đến hai khuynh hướng kỹ thuật chủ yếu của giấu tin Khuynh hướng thứ nhất là giấu tin mật (Steganography) Khuynh hướng này tập trung vào các kỹ thuật giấu tin sao cho thông tin giấu được càng nhiều càng tốt và quan trọng là người khác khó phát hiện được một đối tượng có
bị giấu tin bên trong hay không Khuynh hướng thứ hai là thuỷ vân số (watermarking) Khuynh hướng thuỷ vân số đánh giấu vào đối tượng nhằm khẳng định bản quyền sở hữu hay phát hiện xuyên tạc thông tin Thuỷ vân số có miền ứng dụng lớn hơn, đòi hỏi độ bền vững cao của các thông tin cần giấu đối với các biến đổi thông thường của các tệp dữ liệu môi trường nên được quan tâm nghiên cứu nhiều hơn và thực tế đã có nhiều những kỹ thuật dành cho khuynh hướng này
Lưu trữ
Bảo mật Bản quyền
Khả năng Lưu trữ
Khả năng không bị phát hiện Tính bền vững
Hình 2 Các yêu cầu trong bài toán giấu tin
Trang 6Hình 3 Phân loại các kỹ thuật giấu tin
Phạm vi ứng dụng của thủy vân đa dạng hơn, tùy theo mục đích của hệ thủy vân mà người ta lại chia thành các hướng nhỏ như thủy vân dễ vỡ và thủy vân bền vững
1.1.3 Mô hình giấu tin cơ bản
Hình 4 Lược đồ quá trình giấu tin mật
Hình 4 biểu diễn mô hình giấu tin cơ bản Trong đó, phương tiện chứa tin
có thể bao gồm: văn bản, ảnh, audio, video… Thông tin cần giấu tùy theo mục đích của người sử dụng Thông tin được giấu vào trong phương tiện chứa tin nhờ một bộ nhúng Bộ nhúng là những chương trình thực hiện theo những thuật
Phân phối Khóa
Thông tin cần giấu
Phương tiện
chứa tin (ảnh,
audio, video, )
Trang 7toán để giấu tin và được thực hiện với một khóa bí mật giống như trong một số
hệ mật mã Đầu ra của quá trình nhúng tin là phương tiện chứa đã được giấu tin Các phương tiện chứa này có thể được phân phối trên mạng
Hình 5 Lược đồ quá trình giải mã tin mật
Hình 5 mô tả quá trình giải mã thông tin đã được giấu trước đó Đầu vào
là phương tin có chứa tin giấu, qua một bộ giải mã tin (tương ứng với bộ nhúng tin) cùng với khóa sẽ được thực hiện việc giải mã thông tin Đầu ra của quá trình là phương tiện chứa tin và thông tin mật đã giấu trước đó Trong trường hợp cần thiết, thông tin lấy ra có thể được xử lý, kiểm định và so sánh với thông tin đã giấu ban đầu
1.1.4 Các ứng dụng của kỹ thuật giấu tin
Bảo vệ bản quyền tác giả: Đây là ứng dụng cơ bản nhất của kỹ thuật thủy
vân số Một thông tin nào đó mang ý nghĩa quyền sở hữu tác giả gọi là thủy vân
sẽ được nhúng vào trong các sản phẩm, thủy vân đó chỉ một mình chủ sở hữu hợp pháp các sản phẩm đó có và được dùng làm minh chứng cho bản quyền sản phẩm Giả sử có một sản phẩm dữ liệu dạng đa phương tiện như ảnh, âm thanh, video và cần được lưu thông trên mạng Để bảo vệ các sản phẩm chống lại các hành vi lấy cắp hoặc làm nhái cần phải có một kỹ thuật để “dán tem bản quyền” vào sản phẩm này Việc dán tem hay chính là việc nhúng thủy vân cần phải đảm
Phương tiện
đã chứa tin giải Bộ
mã tin
Phân phối
Khóa
Thông tin giấu
Phương tiện đã chứa tin (ảnh, audio, video, )
Kiểm định
Trang 8bảo không để lại một ảnh hưởng đáng kể nào đến việc cảm nhận sản phẩm Yêu cầu kỹ thuật đối với ứng dụng này là thủy vân phải tồn tại bền vững cùng với sản phẩm, muốn bỏ thủy vân này mà không được phép của người chủ sở hữu thì chỉ có cách là phá hủy sản phẩm[5]
Xác thực thông tin hay phát hiện giả mạo: Một tập các thông tin sẽ được
giấu trong phương tiện chứa sau đó được sử dụng để nhận biết xem dữ liệu trên phương tiện gốc đó có bị thay đổi không Các thủy vân nên được ẩn để tránh sự
tò mò của kẻ thù, hơn nữa việc làm giả các thủy vân hợp lệ hay xuyên tạc thông tin nguồn cũng cần được xem xét Trong các ứng dụng thực tế người ta mong muốn tìm được vị trí bị xuyên tạc cũng như phân biệt được các thay đổi Yêu cầu chung đối với ứng dụng này là khả năng giấu tin cao và thủy vân không cần bền vững[5]
Giấu vân tay hay dán nhãn: Thủy vân trong những ứng dụng này được sử
dụng để nhận diện người gửi hay người nhận của một thông tin nào đó Ví dụ các vân khác nhau sẽ được nhúng vào các bản sao khác nhau của thông tin gốc trước khi chuyển cho nhiều người[11] Với ứng dụng này thì yêu cầu là đảm bảo độ an toàn cao cho các thủy vân tránh sự xóa dấu vết trong khi phân phối
Kiểm soát sao chép: Các thủy vân trong trường hợp này được sử dụng để
kiểm soát sao chép đối với các thông tin Các thiết bị phát ra thủy vân thường được gắn sẵn vào trong các hệ thống đọc/ghi Ví dụ như hệ thống quản lý sao chép DVD đã được ứng dụng ở Nhật Các ứng dụng loại này cũng yêu cầu thủy vân phải được đảm bảo an toàn và cũng sử dụng phương pháp phát hiện thủy vân đã giấu mà không cần thông tin gốc
Giấu tin mật: Các thông tin giấu được trong trường hợp này càng nhiều
càng tốt, việc giải mã để nhận được thông tin cũng không cần phương tiện chứa ban đầu Các yêu cầu mạnh về chống tấn công của kẻ thù không cần thiết lắm thay vào đó là thông tin giấu phải đảm bảo tính không thể phát hiện
1.2 Giấu tin trong ảnh và các đặc trưng
1.2.1 Giấu tin trong ảnh
Giấu tin trong ảnh, hiện nay, là một bộ phận chiếm tỷ lệ lớn nhất trong các chương trình ứng dụng, các phần mềm, hệ thống giấu tin trong dữ liệu đa phương tiện bởi lượng thông tin được trao đổi bằng ảnh là rất lớn Hơn nữa, giấu tin trong ảnh cũng đóng vai trò hết sức quan trọng trong hầu hết các ứng
Trang 9dụng bảo vệ an toàn thông tin như: xác thực thông tin, xác định xuyên tạc thông tin, bảo vệ bản quyền tác giả, điều khiển truy nhập, giấu tin mật … Vì thế mà vấn đề này đã nhận được sự quan tâm rất lớn của các cá nhân, tổ chức, trường đại học, và viện nghiên cứu trên thế giới
Thông tin sẽ được giấu cùng với dữ liệu ảnh nhưng chất lượng ảnh ít thay đổi và ít ai biết được bên trong bức ảnh đó mang những thông tin có ý nghĩa khác Và ngày nay, khi ảnh số đã được sử dụng phổ biến, thì giấu tin đã đem lại rất nhiều những ứng dụng quan trọng trong trên nhiều lĩnh vực trong đời sống
xã hội Ví dụ như đối với các nước phát triển, chữ ký tay đã được số hóa và lưu trữ sử dụng như là hồ sơ cá nhân của các dịch vụ ngân hàng và tài chính, nó được dùng để xác nhận các thẻ tín dụng của người tiêu dùng Thêm vào đó, lại
có rất nhiều loại thông tin quan trọng cần được bảo mật, chúng rất dễ bị lấy cắp
và bị thay đổi bởi các phần mềm chuyên dụng Phát hiện thông tin xuyên tạc đã trở nên vô cùng quan trọng và cấp thiết Một đặc điểm của giấu tin trong ảnh đó
là thông tin được giấu trong ảnh một cách vô hình, nó như là một cách truyền thông tin mật cho nhau mà người khác không thể biết được bởi sau khi giấu tin thì chất lượng ảnh gần như không thay đổi, đặc biệt đối với ảnh màu hay ảnh đa mức xám
1.2.2 Các đặc trưng cơ bản
Giấu tin trong ảnh chiếm vị trí chủ yếu trong các kỹ thuật giấu tin, vì vậy
mà các kỹ thuật giấu tin phần lớn cũng tập trung vào các kỹ thuật giấu tin trong ảnh Các phương tiện chứa khác nhau thì cũng sẽ có các kỹ thuật giấu khác nhau Đối tượng ảnh là một đối tượng dữ liệu tĩnh có nghĩa là dữ liệu tri giác không biến đổi theo thời gian Dữ liệu ảnh có nhiều định dạng, mỗi định dạng
có những tính chất khác nhau nên các kỹ thuật giấu tin trong ảnh thường chú ý tới các đặc trưng cơ bản sau đây:
- Phương tiện có chứa dữ liệu tri giác tĩnh
Dữ liệu gốc ở đây là dữ liệu tĩnh, dù đã giấu tin vào trong ảnh hay chưa thì khi ta xem ảnh bằng thị giác, dữ liệu ảnh không thay đổi theo thời gian, điều này khác với dữ liệu âm thanh và dữ liệu băng hình vì khi ta nghe hay xem thì
dữ liệu gốc sẽ thay đổi liên tục với tri giác của con người theo các đoạn, các bài hay các ảnh…
- Kỹ thuật giấu phụ thuộc ảnh
Trang 10Kỹ thuật giấu tin phụ thuộc vào các loại ảnh khác nhau Chẳng hạn đối với ảnh đen trắng, ảnh xám hay ảnh màu ta cũng có những kỹ thuật riêng cho từng loại ảnh có những đặc trưng khác nhau
- Kỹ thuật giấu tin lợi dụng tính chất hệ thống thị giác của con người
Giấu tin trong ảnh ít nhiều cũng gây ra những thay đổi trên dữ liệu ảnh gốc Dữ liệu ảnh được quan sát bằng hệ thống thị giác của con người nên các kỹ thuật giấu tin phải đảm bảo một yêu cầu cơ bản là những thay đổi trên ảnh phải rất nhỏ sao cho bằng mắt thường khó nhận ra được sự thay đổi đó vì có như thế thì mới đảm bảo được độ an toàn cho thông tin giấu Rất nhiều các kỹ thuật đã lợi dụng các tính chất của hệ thống thị giác để giấu tin chẳng hạn như mắt người cảm nhận về sự biến đổi về độ chói kém hơn sự biến đổi về màu hay cảm nhận của mắt về màu xanh da trời kém nhất trong ba màu cơ bản
- Giấu tin trong ảnh tác động lên dữ liệu ảnh nhưng không thay đổi
kích thước ảnh
Các thuật toán thực hiện công việc giấu tin sẽ được thực hiện trên dữ liệu của ảnh Dữ liệu ảnh bao gồm phần header, bảng màu (có thể có) và dữ liệu ảnh Do vậy mà kích thước ảnh trước và sau khi giấu tin là như nhau
- Đảm bảo chất lượng sau khi giấu tin
Đây là một yêu cầu quan trọng đối với giấu tin trong ảnh Sau khi giấu tin bên trong, ảnh phải đảm bảo được yêu cầu không bị biến đổi để có thể bị phát hiện dễ dàng so với ảnh gốc Yêu cầu này dường như khá đơn giản đối với ảnh màu hoặc ảnh xám bởi mỗi điểm ảnh được biểu diễn bởi nhiều bit, nhiều giá trị và khi ta thay đổi một giá trị nhỏ nào đó thì chất lượng ảnh thay đổi không đáng kể, thông tin giấu khó bị phát hiện, nhưng đối với ảnh đen trắng mỗi điểm ảnh chỉ là đen hoặc trắng, và nếu ta biến đổi một bit từ trắng thành đen và ngược lại mà không khéo thì sẽ rất dễ bị phát hiện Do đó, yêu cầu đối với các thuật toán giấu tin trong ảnh màu hay ảnh xám và giấu tin trong ảnh đen trắng là khác nhau Trong khi đối với ảnh màu thì các thuật toán chú trọng vào việc làm sao giấu được càng nhiều thông tin càng tốt thì các thuật toán áp dụng cho ảnh đen trắng lại tập trung vào việc làm thế nào để thông tin giấu khó bị phát hiện nhất
- Thông tin trong ảnh sẽ bị biến đổi nếu có bất cứ biến đổi nào trên ảnh
Trang 11Vì phương pháp giấu tin trong ảnh dựa trên việc điều chỉnh các giá trị của các bit theo một quy tắc nào đó và khi giải mã sẽ theo các giá trị đó để tìm được thông tin giấu Theo đó, nếu một phép biến đổi nào đó trên ảnh làm thay đổi giá trị của các bit thì sẽ làm cho thông tin giấu bị sai lệch Nhờ đặc điểm này
mà giấu tin trong ảnh có tác dụng nhận thực và phát hiện xuyên tạc thông tin[5]
- Vai trò của ảnh gốc khi giải tin
Các kỹ thuật giấu tin phải xác định rõ ràng quá trình lọc ảnh để lấy thông tin giấu cần đến ảnh gốc hay không cần Đa số các kỹ thuật giấu tin mật thì thường không cần ảnh gốc để giải mã Thông tin được giấu trong ảnh sẽ được mang cùng với dữ liệu ảnh, khi giải mã chỉ cần ảnh đã mang thông tin giấu mà không cần dùng đến ảnh gốc để so sánh đối chiếu
Trang 12CHƯƠNG 2
GIẤU TIN TRÊN ẢNH NHỊ PHÂN
2.1 Giới thiệu về giấu tin trong ảnh nhị phân
Đối tượng làm môi trường chứa tin của các thuật toán này là ảnh nhị phân đen trắng dạng bitmap Ảnh nhị phân đen trắng bao gồm các điểm ảnh chỉ có màu trắng hoặc đen (tương ứng với bit 0 hoặc bit 1) Để giấu dữ liệu, ta sẽ tách
ma trận điểm ảnh thành các ma trận bit F kích thước m n× rời nhau, và giấu tin trên mỗi ma trận đó Bởi vậy các thuật toán chỉ cần quan tâm tới phương
pháp giấu dữ liệu trên các ma trận F.
Một số thuật toán giấu tin trên ảnh nhị phân nổi tiếng hiện nay như: Lee, CPT Các thuật toán này đều dựa trên thao tác biến đổi ma trận bit
Wu-2.2 Giấu tin theo khối bit đơn giản
Algorithm SW ( simple watermarking)
Input:
- File ảnh Bitmap đen trắng F
- Dữ liệu cần giấu d được biểu diễn dưới dạng nhị phân (dãy bit 0/1).Output:
- File ảnh đã giấu tin G
Method:
- Chia F thành các khối kích thước m x n
- Với mỗi khối B trong F ta xét khả năng giấu một bit dữ liệu d i của
d theo quy tắc cân bằng tính chẵn lẻ như sau:
Gọi t là tổng số điểm trắng (bit mang giá trị 1) trong B Nếu t và d i cùng
tính chẵn lẻ thì không sửa khối B và coi như khối này đã được giấu bit dữ liệu
Trang 13d i Trong trường hợp ngược lại, nếu t và d i khác tính chẵn lẻ thì đảo ngẫu nhiên
- Trường hợp 1: Sum(B) = b (mod 2), khối B đã thỏa mãn tính chất
để giấu bit dữ liệu b, ta không cần sửa khối B và xem như bit b đã được giấu vào khối B
- Trường hợp 2: Sum(B) ≠ b (mod 2), trường hợp này phải sửa B để thay đổi tính chẵn lẻ của Sum(B) Dễ thấy, ta chỉ cần đảo một bit bất kỳ trong B thì Sum(B) sẽ tăng hoặc giảm 1 đơn vị Gọi B' là khối kết quả thu được từ khối B sau khi đảo một bit trong B Ta có Sum(B’) = b (mod 2)
Ví dụ dưới đây minh họa cho hai trường hợp trên:
+ Giả sử khi phải giấu một bit dữ liệu b = 1 vào khối B như sau:
Hình 6 Khối B kích thước 4 x 4, với Sum(B) = 8
+ Ta đếm số bit 1 trong khối: trong trường hợp trên khối B có
8 bit 1, nên Sum(B) = 8 Do đó, Sum(B) ≠ (mod 2) Như vậy khối
Trang 14này ta cần phải thay đổi khối bằng cách chọn một bit bất kỳ và đổi
từ 0 sang 1 hoặc từ 1 sang 0 Giả sử ta sửa lại phần tử B[2,2] như hình vẽ sau:
Hình 7 Khối B sau khi thay đổi bit
+ Sau khi thay đổi thì Sum(B’) = 7, khi đó ta có Sum(B’) = 1 (mod 2)
+ Giả sử vẫn với khối B đã cho như trên nhưng ta phải giấu bit
dữ liệu b = 0 vào khối đó Ta thấy do Sum(B) = 8 nên Sum(B) = 0 (mod 2) Khối B được bảo toàn và bit dữ liệu b = 0 xem như được giấu
Trang 15Trong thuật toán thủy vân này, khóa đơn giản là kích thước của khối, tức
là bộ số (m, n) Nếu biết kích thước của khối thì dễ dàng trích lại dữ liệu d theo thuật toán SIW (Simple ivert watermarking) như sau:
Kỹ thuật trên sẽ gặp phải hiện tượng gây bất thường đối với ảnh sau khi giấu thông tin đặc biệt khi chọn vào những khối ảnh một màu, chẳng hạn một khối toàn đen hoặc toàn trắng Khi đó, nếu cần đảo giá trị một bit thì vị trí bit đảo sẽ khác biệt hoàn toàn với các bit trong khối và dễ bị nhận biết có sự thay đổi Vì vậy để xác định nên thay đổi bít nào trong khối bít ta phải tính hệ số ảnh hưởng của bít đó khi nó bị thay đổi Hệ số này tính bằng cách xét sự thay đổi về