- Lượng tử hóa: Đầu vào ở bước này là 64 hệ số DCT của khối 8x8 sẽ được lượng tử
2 𝑖𝑓(𝑅 𝑚𝑜𝑑 = 0, 𝑤𝑘 = 1) 𝑜𝑟 (𝑅 𝑚𝑜𝑑 = 1, 𝑤𝑘 = 0)
5.2.1. Phương pháp sử dụng khoảng trắng
Khoảng trắng trong văn bản có thể hiểu là khoảng cách giữa các, các câu hoặc các dòng Trong phương pháp sử dụng khoảng trắng, các khoảng trắng có thể được thêm vào sau mỗi từ, mỗi câu, mỗi đoạn. Hình 5.1 mô tả về một số vị trí khoảng trắng có thể lựa chọn để giấu tin [1, 2, 28, 29].
Hình 5.1. Một số vị trí khoảng trắng có thể lựa chọn để giấu tin
Phương pháp sử dụng khoảng trắng giữa các từ sử dụng một hoặc hai khoảng trắng đặt giữa các từ liên tiếp, với quy ước một khoảng trắng tương ứng với bit 0 và hai khoảng trắng tương ứng với bit 1. Tuy nhiên, một vấn đề có thể xảy ra với phương pháp này là trong trường hợp hai từ cuối của một dòng có duy nhất một khoảng trắng (để căn lề chính xác) nhưng bit cần ẩn dấu lại là bit 1 (yêu cầu hai khoảng trắng). Để giải quyết vấn đề này, một thuật toán sử dụng các khoảng trắng để giấu thông tin được đề xuất như sau:
Một khoảng trắng + một từ + hai khoảng trắng tương ứng với bit 0 được giấu.
Hai khoảng trắng + một từ + một khoảng trắng tương đương với bit 1 được giấu.
Một khoảng trắng + một từ + một khoảng trắng tương đương với không có thông tin được ẩn giấu.
Hai khoảng trắng + một từ + hai khoảng trắng tương đương với không có thông tin được ẩn giấu.
Từ các quy ước trên dẫn đến kỹ thuật giấu tin và tách tin trong văn bản sử dụng khoảng trắng giữa các từ như sau:
Thuật toán giấu tin:
Đầu vào:
- Thông điệp bí mật - Văn bản phủ Các bước thực hiện:
- Bước 1: Chuyển đổi thông điệp giấu thành dạng nhị phân
- Bước 2: Đọc dạng nhị phân của thông điệp bí mật và với mỗi bit nhị phân được chuyển đổi, thêm các khoảng trắng vào văn bản phủ theo quy ước được mô tả ở trên.
Đầu ra:
- Văn bản phủ có chứa thông điệp bí mật
Để hiểu rõ hơn về phương pháp này, hãy xét ví dụ dưới đây. Với hai dữ liệu đầu vào là:
- Thông tin bí mật là chữ “H” chuyển sang dạng nhị phân có dạng “01001000”. - Văn bản gốc:
Happy⍽families⍽are⍽all⍽alike⍽every⍽unhappy⍽family⍽is⍽unhappy
⍽in⍽its⍽own⍽way⍽everything⍽was⍽in⍽confusion⍽in⍽the⍽oblonsk ys⍽house.
Áp dụng nguyên tắc giấu tin trong văn bản sử dụng khoảng trắng giữa các từ thì thu được văn bản chứ tin mật như sau:
Happy⍽families⍽⍽are⍽⍽all⍽alike⍽every⍽⍽unhappy⍽family⍽⍽is⍽⍽u nhappy⍽in⍽its⍽⍽own⍽way⍽⍽everything⍽was⍽⍽in⍽confusion⍽in⍽the
⍽oblonskys⍽house.
Nhận xét: từ băn bản được giấu tin thấy được rằng, văn bản sau khi giấu tin nếu có độ rộng khoảng trắng giữa 02 từ là đủ lớn thì có thể quan sát được bẳng mắt thường, chính vì vậy, người giấu tin phải định nghĩa lại độ rộng của mỗi khoảng trắng sao cho 02 khoảng trắng trông như 01 khoảng trắng nếu quan sát bằng mắt thường. Đây là phương pháp giấu tin đơn giản và dễ thực hiện. Tuy nhiên, nếu văn bản đã giấu tin được gõ lại bằng tay hoặc được xử lý bởi các trình xử lý tự động loại bỏ khoảng trắng thừa thì thông tin mật sẽ bị hủy. Chính vì vậy phương pháp này không được đánh giá cao và chỉ phù hợp với văn bản in.
b) Phương pháp giấu tin vào cuối mỗi dòng
Nguyên tắc giấu tin vào cuối mỗi dòng dựa trên việc tận dụng các khoảng trắng thêm vào sau mỗi dòng có thể lưu trữ được một lượng lớn các bit. Các khoảng trắng ở cuối mỗi dòng có thể bị bỏ qua và không hiện lên các bởi các ứng dụng đọc văn bản. Trong toàn bộ văn bản, nếu giấu tin vào cuối mỗi dòng thì lượng bit thu được là rất lớn, có thể có đủ không gian để lưu trữ chuỗi bí mật.
Thuật toán giấu tin:
Đầu vào:
- Thông điệp bí mật - Văn bản phủ Các bước thực hiện:
- Bước 1: Chuyển thông điệp bí mật thành dạng nhị phân
- Bước 2: Đọc dạng nhị phân của thông tin bí mật và thêm khoảng trắng vào cuối mỗi dòng theo quy ước: 0 dấu cách sẽ tìm đến câu tiếp theo và tương đương không có bit thông tin nào được giấu trong đó; 1 dấu cách sẽ mã hóa 0; 2 dấu cách sẽ mã hóa 1.
Đầu ra:
- Văn bản phủ có chứa thông điệp
Để hiểu rõ hơn về phương pháp này, hãy xét ví dụ dưới đây:
Thông điệp bí mật là chữ “H” chuyển sang dạng nhị phân có dạng “01001000” Văn bản gốc:
“Quê hương là một tiếng ve
Lời ru của mẹ trưa hè à ơi Dòng sông con nước đầy vơi Quê hương là một góc trời tuổi thơ Quê hương ngày ấy như mơ
Tôi là cậu bé dại khờ đáng yêu Quê hương là tiếng sáo diều
Là cánh cò trắng chiều chiều chân đê.”
Văn bản đã giấu tin sử dụng kỹ thuật : “Quê hương là một tiếng ve_
Lời ru của mẹ trưa hè à ơi_ _ Dòng sông con nước đầy vơi_ Quê hương là một góc trời tuổi thơ_ Quê hương ngày ấy như mơ_ _ Tôi là cậu bé dại khờ đáng yêu_ Quê hương là tiếng sáo diều_
Là cánh cò trắng chiều chiều chân đê._” Chú ý: (dấu “_” ở đây là dấu cách)
Nhận xét: Thêm một hoặc hai khoảng trắng vào cuối mỗi dòng trong văn bản cũng là một phương pháp giấu tin đơn giản. Những khoảng trắng được thêm vào sẽ không xuất hiện khi văn bản được in ra nhưng có thể dễ dàng bị phát hiện bởi các bộ xử lý và thông điệp bí mật sẽ bị hủy bỏ khi mà văn bản được gõ lại bằng tay hoặc được xử lý bởi một chương trình xử lý tự động loại bỏ khoảng trắng thừa. Chính vì vậy, phương pháp này cũng không được đánh giá cao.