1. Giấu tin trong âm thanh
1.1. Kỹ thuật trải phổ dãy trực tiếp
1.1.1. Đặc điểm
1.1.1.1. DSSS là một phương pháp truyền dữ liệu trong đó hệ thống truyền và hệ thống nhận đều sử dụng một tập các tần số có độ rộng 22 MHz. Các kênh rộng này cho phép các thiết bị truyền thông tin với tốc độ cao hơn hệ thống FHSS nhiều.
1.1.2. Quy trình
1.1.2.1. Ở phía máy phát
1.1.2.1.1. • Dãy dữ liệu dạng nhị phân (tín hiệu cần trải phổ). Tín hiệu này được đưa vào Bộ mã hóa kênh (còn gọi là bộ lập mã hiệu chỉnh lỗi hay bộ mã hóa sửa sai). Tại đây, tín hiệu đầu vào được mã hóa bằng bộ mã hóa kênh để đưa vào các bit dư nhằm mục đích phát hiện hay sửa các lỗi có thể phát sinh khi truyền dẫn tín hiệu qua kênh tần số vô tuyến. Tín hiệu sau khi được mã hóa bằng Bộ mã HK được đưa vào Bộ DC.
1.1.2.1.2. • Bộ tạo mã giả ngẫu nhiên tạo ra một chuỗi giả ngẫu nhiên dạng nhị phân, chuỗi này được đưa vào Bộ điều chế để trải tín hiệu được phát đi về phổ. Trên thực tế, hai bộ tạo mã giả ngẫu nhiên từ bên phía máy phát và máy thu phải như nhau và được đồng bộ với nhau giao tiếp với bộ điều chế và giải điều chế.
1.1.2.1.3. • Tại Bộ điều chế có hai quá trình diễn ra, đó là quá trình trải phổ và quá trình điều chế sóng mang.
1.1.2.2. Ở phía máy thu
1.1.2.2.1. • Tín hiệu sau khi được lấy trên kênh truyền dẫn về sẽ được đưa vào Bộ giải điều chế. Nhận được tín hiệu truyền về, Bộ tạo mã giả ngẫu nhiên sẽ tạo nên chuỗi giả ngẫu nhiên đồng bộ với chuỗi tới. Chuỗi giả ngẫu nhiên sau khi được tạo ra sẽ được gửi đến Bộ giải điều chế để giải trải phổ cho tín hiệu thu được từ kênh truyền.
1.1.2.2.2. • Tín hiệu sau khi được giải trải phổ sẽ được giải điều chế sóng mang bằng phương pháp BPSK hoặc QPSK để thu được tín hiệu băng gốc. Tín hiệu băng gốc này được truyền đến Bộ giải mã kênh để giải mã, lấy ra tín hiệu gốc khi chưa được mã hóa.
1.2. Kỹ thuật mã hóa pha
1.2.1. Đặc điểm
1.2.1.1. Phương pháp mã hoá pha dựa vào đặc tính tai người không phân biệt được sự khác nhau về pha của hai tín hiệu âm thanh. Việc giấu tin được thực hiện thông qua việc thay thế pha của một đoạn (segment) âm thanh ban đầu bằng một pha tham chiếu (referency phase) thể hiện dữ liệu. Pha của các đoạn tiếp theo sẽ được điều chỉnh sao cho duy trì mối quan hệ giữa các đoạn.
1.2.2. Quy trình
1.2.2.1. Bước 1: Dữ liệu âm thanh gốc có chiều dài N được chia thành các segment có chiều dài bằng chiều dài với thông tin cần giấu.
1.2.2.2. Bước 2
1.2.2.3. Bước 3: Tính độ lệch pha giữa các đoạn kề nhau bằng công thức sau:
1.2.2.4. Bước 4: Điều chỉnh pha.
1.2.2.4.1. Giá trị chính xác các pha của các đoạn có thể thay đổi nhưng mối liên hệ về sự khác nhau giữa các segment liên tiếp phải được đảm bảo. Việc điều chỉnh pha của đoạn đầu được áp dụng dựa trên công thức:
1.2.2.5. Bước 5: Tiến hành tạo ma trận pha mới
1.2.2.5.1. Để căn chỉnh lại độ chênh lệch tínhra ở bước 3. Tạo ma trận pha mới thỏa mãn điều kiện:
1.2.2.6. Bước 6: Kết hợp với cường độ pha của tín hiệu cũ sau khi đã giấu thông tin.
1.2.2.6.1. Tái tạo lại ma trận pha của các đoạn kề nhau. Pha mới bằng pha kề trước đó cộng với độ lệch pha đã được tính ở trên
1.2.2.7. Bước 7: Thực hiện ghép các segment lại và DFT ngược để tạo lại dữ liệu âm thanh.
1.2.2.7.1. Để nhận được tin giấu bằng kỹ thuật này, người nhận phải biết độ dài của segment, sau đó thực hiện DFT để nhận tin.
1.3. Kỹ thuật mã hóa tiếng vang
1.3.1. Đặc điểm
1.3.1.1. + Kỹ thuật giấu tin bằng phương pháp Echo (tiếng vang) được thực hiện bằng cách thêm tiếng vang vào trong tín hiệu gốc. + Dữ liệu nhúng sẽ thay đổi 3 tham số của tiếng vang là biên độ ban đầu, tỉ lệ phân rã và độ trễ. + Khi thời gian giữa tín hiệu gốc và tiếng vang giảm xuống, lúc đó hai tín hiệu có thể trộn lẫn làm người nghe không thể phân biệt hai tín hiệu. + Ngoài ra, số lượng tin giấu còn liên quan đến thời gian trễ của tiếng vang và biên độ của nó.
1.3.2. Bước 1: Tín hiệu ban đầu
1.3.2.1. là tệp âm thanh gốc có dạng là hàm rời rạc theo thời gian F(t). Tín hiệu ban đầu được xác định dựa vào hàm F(t), từ tín hiệu ban đầu này để tìm ra được tiếng vang.
1.3.3. Bước 2: Nhân hệ thống mã hóa
1.3.3.1. Sử dụng nhân 0 và nhân 1 kết hợp với tín hiệu gốc để tạo ra tiếng vang tương tự tín hiệu gốc nhưng trễ hơn.
1.3.3.2. Kết quả thu được là hai đường tiếng vang d0 và d1 có dạng:
1.3.3.2.1. d(t) = F(t) + βF(t+∆t)
1.3.4. Bước 3: Từ kết quả của bước 2, khi này tiếng vang đã được chia thành các đoạn để chứa các bit cần giấu. Tiếng vang được nhân với hàm trộn theo nguyên tắc: d0 được nhân với hàm trộn 0, d1 được nhân với hàm trộn 1. Tức là khi thu được tiếng vang ở bước 2, các tín hiệu này được đưa vào máy trộn riêng để cho ra tín hiệu trộn d’0 và d’1. Để thu được tín hiệu trộn d’0 và d’1 thì trong máy trộn sẽ tự động sinh ra tín hiệu sin khi tín hiệu muốn chuyển đổi được đưa vào. Kết quả tạo ra 2 tín hiệu trộn có dạng là các đường dốc, tín hiệu trộn 0 là phần bù của tín hiệu trộn 1.
1.3.5. Bước 4: Kết hợp 2 tín hiệu trộn thu được tín hiệu mã hóa khi cộng 2 tín hiệu, những đoạn có giá trị bằng 1 là mã hóa bit 1, đoạn có giá trị 0 là mã hóa bit 0, những đoạn có giá trị nằm trong khoảng từ 0 đến 1 là đoạn chuyển tiếp giữa 2 đoạn mã hóa khác nhau (giữa 2 đoạn mã hóa khác nhau 0 và 1).
1.3.5.1. Lưu ý: Tổng giá trị của hai tín hiệu trộn luôn bằng 1, hai tín hiệu trộn này cộng lại với nhau bằng 1 nên có độ mịn chuyển đổi giữa các phần được mã hóa khác nhau và ngăn chặn thay đổi đột ngột trong cộng hưởng của tín hiệu cuối cùng.
1.4. Kỹ thuật trải phổ nhảy tần
1.4.1. Đặc điểm
1.4.1.1. Trải phổ nhảy tần là một công nghệ sử dụng bộ phát tần số (radio) và có thể thay đổi tần số truyền một cách đột ngột trong dãy băng tần sử dụng.
1.4.1.2. Phương pháp trải phổ nhảy tần được chia làm 2 loại dựa trên tốc độ nhảy của tần số, đó là trải phổ nhảy tần nhanh (khi tốc độ nhảy nhanh hơn tốc độ dữ liệu) và trải phổ nhảy tần chậm (khi tốc độ nhảy chậm hơn tốc độ dữ liệu).
1.4.2. Quy trình
1.4.2.1. Ở máy phát, tín hiệu đầu vào gồm
1.4.2.1.1. • Chuỗi thông tin mật truyền vào Bộ mã hóa, tại đây, tín hiệu được mã hóa bằng khóa riêng do người gửi và người nhận thỏa thuậ trước khi đi vào bộ điều chế -> nhằm làm tăng tính bảo mật của hệ thống thông tin trên đường truyền.
1.4.2.1.2. • Tín hiệu đã mã hóa được điều chế FSK thành tín hiệu nhị phân, trong mỗi bit x(t) có hai tần số f’= (f’ +(2k)∆f) và (f’ + ∆f) =(f’+(2k+1)∆f), bộ điều chế FSK sẽ chọn một trong hai tần số để truyền đi bit dữ liệu 0 hay dữ liệu 1.
1.4.2.1.3. • Bộ tạo chuỗi PN là một danh sách của nhiều tần số mà sóng mang có thể nhảy để chọn tần số truyền. Khi danh sách tần số đã nhảy hết, bên truyền sẽ lặp lại từ đầu danh sách này.
1.4.2.2. Ở máy thu
1.4.2.2.1. • Tín hiệu từ kênh truyền sau khi thu về sẽ được đưa vào Bộ trộn. Nhận được tín hiệu truyền về, Bộ tạo chuỗi PN sẽ tạo nên chuỗi giả ngẫu nhiên đồng bộ với chuỗi tới
1.4.2.2.2. • Chuỗi giả ngẫu nhiên sau khi được tạo ra sẽ được gửi đến Bộ tổ hợp tần số để tạo ra các giá trị nhảy tần cho sóng mang, điều khiển lối ra của Bộ này. Tín hiệu tần số được tạo ra từ Bộ tổ hợp tần số được gửi đến Bộ trộn.
1.4.2.2.3. • Tại đây, tín hiệu thu về từ kênh truyền sẽ được trộn với tín hiệu lối ra của bộ tổ hợp tần số, dựa theo dải tần lọc của bộ lọc BPF mà thu được tín hiệu x(t). Tín hiệu này được gửi đồng thời cho Bộ giải điều chế FSK và Bộ đồng bộ định thời.
1.4.2.2.4. • Tín hiệu sau khi được đưa qua Bộ trộn thì được đồng bộ về mặt thời gian tại Bộ đồng bộ định thời.
1.4.2.2.5. • Kết quả tín hiệu sau khi được đồng bộ thời gian được gửi cho bộ giải điều chế FSK. Tại đây, tín hiệu sóng mang x(t) được đưa vào bộ giải điều chế FSK để tái tạo lại dữ liệu trước khi bị mang đi điều chế. Dữ liệu sau khi được giải điều chế được đưa vào Bộ giải mã để giải mã, khôi phục lại dữ liệu
2. Giấu tin trong Video
2.1. Phương pháp mặt phẳng bit
2.1.1. Bước 1 – Tiền xử lý dữ liệu
2.1.1.1. Đầu vào gồm video input và thông tin mật.
2.1.1.2. ˗ Thông tin mật: chuyển thành dạng nhị phân.
2.1.1.3. ˗ Video input: tách thành các khung hình, chọn 1 khung bất kỳ để chuẩn bị giấu thông điệp. Vị trí khung được lưu vào khóa K để hỗ trợ người tách tin tin thấy khung để tách sau này.
2.1.1.4. ˗ Chia vùng: sau khi chọn được khung sẽ tiến hành chia vùng để tạo thành các mặt phẳng bit, mỗi pixel có độ sâu màu là 8, 24, 32 bit thì sẽ có 8, 24, 32 mặt phẳng bit tương ứng.
2.1.1.5. ˗ Tìm vùng nhiễu: tại khung hìn vừa chọn, sau khi đã xác định độ sâu của ảnh, người giấu tin tính toán độ phức tạp của mặt phẳng để tìm xem đâu là vùng nhiễu, đâu là vùng nhiều thông tin. Quy trình tính toán:
2.1.1.5.1. • Độ phức tạp của mặt phẳng bit: là sự chuyển tiếp bit từ 1 sang 0 và 0 sang 1, gồm cả ngang và dọc, không liên quan số lượng bit.
2.1.1.5.2. • Ngưỡng phức tạp: ranh giới phân biệt độ phức tạp cao và thấp, để xác định vị trí các mặt phẳng bit giấu thông tin.
2.1.1.5.3. • Xác định khối: khối nhiều thông tin có độ phức tạp thấp hơn ngưỡng, khối nhiễu có độ phức tạp cao hơn ngưỡng.
2.1.2. Bước 2 – Giấu thông tin mật:
2.1.2.1. ˗ Thông điệp được chuyển dạng nhị phân rồi giấu vào vùng nhiễu đã được tìm ở trên
2.1.2.2. ˗ Phương pháp giấu có thể lựa chọn như thay thế LSB,…
2.1.2.3. ˗ Người giấu tin có thể:
2.1.2.3.1. • Lưu vị trí các khối nhiễu vào location map để làm cơ sở cho người tách tin tìm ra các vị trí giấu.
2.1.2.3.2. • Nhúng cả location map cùng các khối bí mật và lưu vị trí khối này vào khóa K.
2.1.2.3.3. • Lưu trữ riêng cả location map vào khóa K.
2.1.2.4. ˗ Cuối cùng chuyển video đã giấu tin và khóa K cho bên nhận.
2.2. Kỹ thuật sủa đổi hệ số DC
2.2.1. Phương pháp được đề xuất ở đây là thêm một mẫu giả ngẫu nhiên chuyển đổi DCT trực tiếp tới các hệ số DC-DCT của một luồng video nén MPEG.
2.2.2. Bước 1: Đầu tiên một mô hình ngẫu nhiên bao gồm các số nguyên (-1, 0, 1) được tạo ra dựa trên một khóa bí mật sử dụng hạt nhân, sổ đăng ký thay đổi tuyến tính hoặc ngẫu nhiên xáo trộn hình ảnh nhị phân.
2.2.3. Bước 2: Với đầu vào là chuỗi 𝑙 bit thủy vân 𝑏0𝑏1𝑏2....𝑏𝑙−1, ở đây bit 0 được gán giá trị -1, bit 1 được gán giá trị 1. Mỗi giá trị của chuỗi giả ngẫu nhiên được XOR với giá trị tương ứng của chuỗi bit. Một mẫu giả ngẫu nhiên có thể được thêm vào nếu bit trong tin giấu bằng 1, và ảnh phụ 𝐼 có thể không bị ảnh hưởng nếu bit tin giấu bằng 0. Kết quả thu được sẽ được nhân với một hệ số tăng k. Theo kết quả thực nghiệm [24], hệ số tăng k càng lớn thì tính bền vững của tin mật càng cao.
2.2.4. Bước 3: Cuối cùng, phép biến đổi DCT của khối 8x8 được áp dụng trên mô hình giấu tin thu được từ bước 2 và các hệ số DC được tạo ra sẽ được cộng vào các giá trị DC tương ứng của mỗi khung I. Để nhúng chuỗi 𝑙 bit thủy vân 𝑏0𝑏1𝑏2....𝑏𝑙−1vào ảnh 𝐼(𝑥,𝑦), người giấu tin chia ảnh 𝐼(𝑥,𝑦) thành 𝑙 ảnh nhỏ 𝐼0𝐼1𝐼2...𝐼𝑙−1và thêm một tin giấu cho mỗi ảnh phụ bằng công thức sau: 𝐼𝑊(𝑥,𝑦) = 𝐼(𝑥,𝑦) + 𝑘.𝑊(𝑥,𝑦)
2.3. Kỹ thuật phát hiện thay đổi khung cảnh (3 giai đoạn)
2.3.1. Đặc điểm
2.3.1.1. o Là phương pháp giấu tin vào các khung hình video dựa vào sự thay đổi các khung cảnh của video.
2.3.1.2. o Sự khác biệt giữa các khung sẽ chỉ ra các điểm chuyển cảnh, bao gồm 2 loại:
2.3.1.2.1. Chuyển cảnh đột ngột: gây ra bởi chỉnh sửa của người làm video.
2.3.1.2.2. Chuyển cảnh từ từ: do việc quay của người làm video.
2.3.2. GĐ1 – Phân tích chuỗi video:
2.3.2.1. ˗ Tách khung hình: video đầu vào được phân tích ra thành các frame riêng biệt.
2.3.2.2. ˗ Biến đổi DCT: các frame biến đổi DCT để có các hệ số cosin rời rạc.
2.3.2.3. ˗ Phát hiện thay đổi khung cảnh: tính toán sự khác biệt giữa các cặp khung hình để phát hiện ra sự thay đổi chuyển cảnh giữa các cặp khung hình dựa trên công thức:
2.3.2.3.1. Trong đó: f_k và f_(k+1) đại diện 2 khung hình liên tục. D(f_k,f_(k+1) ) là giá trị điểm chuyển cảnh hay giá trị chênh lệch khung f_k và f_(k+1). f_k (u,v) là giá trị pixel tại vị trí (u,v). Các hệ số DCT của các khung liên tiếp được biểu diễn bởi C_k (u,v) và C_(k+1) (u,v).
2.3.2.3.2. Công thức lấy hiệu hệ số DCT của từng cặp giá trị pixel tương ứng mỗi cặp khung hình, sau khi tính hiệu xong lấy tổng của chúng để ra được hệ số giá trị chênh lệch khung.
2.3.2.3.3. Thuật toán phát hiện ngay cả những thay đổi nhỏ nhất trong một cảnh và đặt giá trị điểm chuyển cảnh là 1, còn nếu không có sự thay đổi nào được phát hiện thì điểm chuyển cảnh sẽ đặt về 0. Nếu điểm chuyển cảnh lớn hơn 0 thì thủy vân sẽ nhúng vào đấy.
2.3.3. GĐ2 – Giấu tin:
2.3.3.1. - Khi tìm được D(f_k,f_(k+1) )>0 hoặc 1 ngưỡng nào đó, người giấu tin lấy ảnh f_(k+1) để nhúng tin. - Các bit tin giấu sẽ nhúng vào hệ số DCT của khối 8x8. - Quá trình nhúng có thể được thực hiện bằng việc thay thế LSB hoặc phương pháp nào đó trên các hệ số DCT với các bit tin giấu. - Hệ số DCT của video được sử dụng để tăng tính bảo mật của thông tin được nhúng.
2.3.4. GĐ3 – Chuẩn hóa:
2.3.4.1. ˗ Kết hợp kết quả của việc phân tích sóng ngắn của phiên bản chuẩn hóa video gốc và dữ liệu đã được giấu vào một thể duy nhất. ˗ Việc chuẩn hóa trong khu vực DWT để các giá trị pixel (dạng số nguyên) từ 0-255 chỉ còn trong khoảng 0-1. ˗ Nhằm đảm bảo các giá trị pixel không vượt quá giá trị lớn nhất của các hệ số tương ứng trong quá trình kết hợp, đồng thời giảm bớt sự thay đổi của video khi thông tin được giấu.
2.3.4.2. Sau chuẩn hóa, 2 hệ số DWT được kết hợp và tạo khung ảnh có giấu tin theo công thức:
2.3.4.2.1. S(p,q)=αC(p,q)+βR(p,q
2.3.4.2.2. Trong đó: p,q là chỉ số cột và hàng của pixel. C(p,q) là hệ số DWT của ảnh trong video gốc. R(p,q) là hệ số DWT của thông tin nhúng. S(p,q) là hệ số DWT đã được chỉnh sửa của ảnh giấu tin. α và β là 2 yếu tố cải thiện độ bí mật tin giấu, được lựa chọn sao cho thông tin nhúng không thể phân biệt được trong video nhúng.
2.4. Dựa trên miền nén video chất lượng cao
2.4.1. Bước 1. Lựa chọn khung
2.4.1.1. Chọn một khung bất kỳ để tiến hành nhúng, nên chọn khung I vì khung I là khung cơ sở và có thể coi là ảnh gốc, với khung này khi giải mã thì không cần lấy thông tin từ khung khác.
2.4.2. Bước 2. Giải nén một phần video:
2.4.2.1. Sử dụng khung đã chọn ở bước 1. Việc giải nén một phần của video sử dụng phương pháp chính là VLD (Variable Length Decoding- mã hóa có độ dài biến đổi được) và giải lượng tử hóa. Quá trình mã hóa này được tiến hành trên tất cả các thành phần của hệ số DCT:
2.4.2.1.1. Với thành phần DC: Giá trị sai lệch hệ số DC sẽ được mã hóa nhờ bảng phân loại và bảng Huffman (dựa vào đặc tính thống kê của tín hiệu).
2.4.2.1.2. Với thành phần AC: Hệ số AC cũng được mã hóa nhờ bảng phân loại (giống như DC) và bảng Huffman (nhưng khác DC)
2.4.2.2. 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ử hoá dựa trên một bảng lượng tử gồm 64 phần tử Q(u, v) với 0≤ u, v≤7. Nguyên tắc lượng tử là chia các hệ số F(u, v) cho các hệ số ở vị trí tương ứng trong bảng lượng tử Q(u, v).
2.4.3. Bước 3. Giấu thông tin
2.4.3.1. Giai đoạn 1: Thực hiện tính toán DCT cho toàn khung hình
2.4.3.1.1. Ở giai đoạn này người giấu tin cần thực hiện tính toán các DCT toàn khung hình từ khối hệ số DCT 8x8 pixel vừa thu được.
2.4.3.1.2. Hệ số DCT đầy đủ được tính như sau: giả sử kích thước khung hình là 𝐿𝑁 × 𝑀𝑁 và kích thước của một khối 𝐵𝑖,𝑗 là N. L và M số hàng và cột trong hàng tương ứng.
2.4.3.2. Giai đoạn 2: Điều chỉnh chỉ số lượng tử hóa:
2.4.3.2.1. Sử dụng phương pháp điều chỉnh chỉ số lượng tử hóa (QIM) để giấu thông tin vào các hệ số tần số thấp của hệ số DCT toàn khung hình.
2.4.3.3. Giai đoạn 3: Chọn vị trí nhúng:
2.4.3.3.1. Các hệ số xung quanh thành phần DC thường có các giá trị lớn, do đó việc sửa đổi chúng làm giảm chất lượng hình ảnh nghiêm trọng. Ngoài ra, các giá trị hệ số gần thành phần DC thì giá trị của chúng sẽ càng khác nhau sau khi mã hóa lại. ->Nên lựa chọn các thành phần tần số trung gian làm vị trí nhúng để cân bằng giữa độ bền và chất lượng hình ảnh.
2.4.3.4. Giai đoạn 4: Giấu thông tin vào hệ số DCT
2.4.3.4.1. Sau khi thiết lập các tham số cho QIM, thông tin được nhúng bằng cách thay thế các hệ số DCT bằng các giá trị được lượng tử hóa
2.4.3.5. Giai đoạn 5: biến đổi DCT ngược.
2.4.3.5.1. Sau khi đã giấu được thông tin bởi QIM bằng cách sử dụng các thông số ở giai đoạn 4 thì các hệ số DCT toàn khung hình đã được sửa đổi và được phân tách thành khối 8×8 pixel các hệ số DCT. Trong giai đoạn biến đổi DCT ngược chính là cần phải tính toán các khối hệ số DCT nghịch đảo.
2.4.4. Bước 4: Mã hóa video
2.4.4.1. Sau khi đã tính toán các khối hệ số DCT nghịch đảo, người giấu tin sẽ tiến hành mã hóa video lại sử dụng VLC và giải lượng tử hóa như đã nói ở quá trình giải nén một phần video để tạo các video MPEG-2 chứa thông tin mật.
2.4.4.1.1. Quá trình VLC và giải lượng tử ở phía bộ giải mã được thực hiện ngược lại so với các bước biếnđổi ở quá trình giải nén video.
3. Đánh giá Phương pháp giấu tin
3.1. Kỹ thuật biến đổi DCT
3.1.1. Nhận xét
3.1.1.1. Biến đổi DCT biểu diễn phổ tần số tín hiệu bằng các mẫu f(j, k) và bản thân phép biến đổi DCT không nén được số liệu, từ 64 mẫu nhận được 64 hệ số tương ứng.
3.1.1.2. Biến đổi DCT thay đổi phân bố giá tri các hệ số so với phân bố các giá trị mẫu. Phép biến đổi DCT cho giá trị DC (F(0, 0)) thường lớn nhất và các hệ số trực tiếp kề nó ứng với tần số thấp có giá trị nhỏ hơn, các hệ số còn lại ứng với tần số cao có giá trị rất nhỏ.
3.1.1.3. Khối hệ số DCT có thể chia làm 3 miền tần số
3.1.1.3.1. Miền tần số thấp chứa các thông tin quan trọng ảnh hưởng đến tri giác.
3.1.1.3.2. Miền tần số giữa
3.1.1.3.3. Miền tần số cao thường không mang tính tri giác cao
3.1.2. Ưu điểm
3.1.2.1. • Ứng dụng rộng rãi trong xử lý tín hiệu số và nén dữ diệu, giảm băng thông mạng
3.1.2.2. • DCT có đặc tính "nén năng lượng" mạnh, có khả năng đạt được chất lượng cao ở tỷ lệ nén dữ liệu cao.
3.1.2.3. • Việc sử dụng các hàm cosine chứ không phải sin là rất quan trọng để nén, vì cần ít chức năng cosine hơn để xấp xỉ một tín hiệu điển hình.
3.1.2.4. • Bản thân biến đổi DCT không làm mất thông tin vì DCT là một biến đổi tuyến tính chuyển các giá trị của điểm ảnh từ miền không gian thành các hệ số trong miền tần số.
3.1.2.5. • Ưu điểm của biến đổi DCT là với việc xứ lý từng khối tiêu chuẩn 8x8 pixel thì tốc độ là chấp nhận được. Đây là ưu điểm lớn nhất của biến đổi DCT với ảnh tiêu chuẩn JPEG.
3.1.3. Nhược điểm
3.1.3.1. • Nhược điểm của biến đổi DCT là sự tương quan của các pixel lề các khối 8x8 sẽ có ảnh hưởng đến chất lượng ảnh.
3.1.3.2. • Trong việc sử dụng ảnh tiêu chuẩn JPEG để lưu trữ thông tin kiểu thủy vân giấu số thì có nguy cơ cao không đọc ngược lại được thông tin đã lưu trữ vì trong quá trình tạo ảnh có một phần dữ liệu bị nén theo thuật toán Hoffman.
3.2. Kỹ thuật biến đổi DWT
3.2.1. Nhận xét
3.2.1.1. DWT thực hiện trên miền tần số, mục đích của phép biến đổi nhằm thực hiện thay đổi hệ số chuyển đổi của ảnh chứa, sau đó thực hiện chuyển đổi ngược lại để thu được ảnh đã được nhúng tin.
3.2.2. Ưu điểm
3.2.2.1. • DWT cung cấp cả thông tin về tần số cũng như thời gian, cung cấp sự đầm nén năng lượng tốt hơn so với DCT.
3.2.2.2. • hiệu quả hơn về mặt tính toán so với các loại khác phương pháp biến đổi. -> Tốc độ nhanh hơn DCT và DFT vì chỉ phải tính toán tổng hoặc hiệu của pixel
3.2.2.3. • có thể sử dụng kỹ thuật xử lý ảnh và bộ lọc trung vị (mà có thể được coi là một trường hợp hoán vị pixel) -> khả năng chống lại biến đổi hình học (rất nhiều thuật toán hiện có không tồn tại) và khả năng phục hồi bởi các hành vi giả mạo.
3.2.3. Nhược điểm
3.2.3.1. • Cần nhiều thời gian và xử lý đầu vào cho phép biến đổi phức tạp hơn. đặc biệt là việc đưa ra các hàm Wavelet cho phù hợp.
3.2.3.2. • Không áp dụng được trong một số trường hợp đòi hỏi việc lựa chọn một ngưỡng hay miền biến đổi. Ví dụ: lọc nhiễu bằng DWT cần mất nhiều thời gian hơn để chọn ngưỡng cắt thích hợp cho mỗi tầng (level) lọc.
4. Thủy vân
4.1. Thủy vân Bền vững
4.1.1. Khái niệm
4.1.1.1. Thủy vân số bền vững (Robust Watermarking): Là dạng thủy vân tồn tại bền vững trước các cuộc tấn công nhằm loại bỏ thủy vân. Trong trường hợp loại bỏ được thủy vân thì vật chứa tin cũng không còn giá trị sử dụng.
4.1.2. Ví dụ
4.1.2.1. Một ứng dụng điển hình của thủy vân bền vững chính là bảo vệ bản quyền: thuỷ vân được nhúng trong sản phẩm như một hình thức dán tem bản quyền.
4.1.2.2. + Bảo vệ bản quyền ảnh số : Trong thực tế , nhiều tác phẩm đã có tác quyền nhưng vẫn bị sử dụng sai mục đích. Các thông báo tác quyền này thường được đặt ở một vị trí nào đó trên tác phẩm phân phối. như đoạn text nằm chéo dưới background của mỗi trang văn bản word, là một dạng thủy vân bền vững. + Tem chống giả máy tính Casio. Nếu vô tình hay cố ý làm hỏng tem chống giả thì máy tính sẽ mất giá trị bảo hành và không được hưởng lợi từ chính sách hàng chính hãng của Casio.
4.2. Thủy vân Dễ vỡ
4.2.1. Khái niệm
4.2.1.1. Là dạng thủy vân nhạy cảm (dễ vỡ) trước mọi thay đổi của vật chứa tin, dù là thay đổi nhỏ nhất. Chính vì đặc điểm nhạy cảm như vậy nên thủy vân dễ vỡ được ứng dụng nhiều vào việc xác thực nội dung.
4.2.1.2. + Với các ứng dụng xác thực thì cần có loại thuỷ vân phân biệt giữa các biến đổi mất thông tin như nén nhưng vẫn đảm bảo tính nguyên vẹn dữ liệu và biến đổi làm thay đổi tính toàn vẹn dữ liệu như các việc xử lý ảnh có mục đích. Và yêu cầu đối với loại ứng dụng này là phải chỉ ra được vùng ảnh đã chịu các biến đổi đó.
4.2.2. Ví dụ
4.2.2.1. Ví dụ: + Xác thực thông tin và phát hiện xuyên tạc thông tin: Dấu thủy vân sẽ được nhúng trong một tác phẩm sau đó được lấy ra và so sánh với dấu thủy vân ban đầu. Nếu có sự sai lệch chứng tỏ tác phẩm gốc đã bị tấn công và xuyên tạc. + Khi một tòa soạn sử dụng một bức ảnh để đưa tin, toàn soạn phải xác minh bức ảnh này đúng với ảnh gốc và chưa được chỉnh sửa.
4.3. Thủy vân nửa dễ vỡ
4.3.1. Khái niệm
4.3.1.1. Là dạng thủy vân tồn tại bền vững khi vật chứa tin bị sửa đổi vô hại như: nén, làm nhiễu, lọc,… nhưng lại nhạy cảm (dễ vỡ) khi vật chứa tin bị sửa đổi độc hại như: đổi nội dung, cắt bỏ một phần. Thủy vân nửa dễ vỡ được thiết kế để phát hiện các sửa đổi độc hại trên sản phẩm (nhằm đảm bảo tính toàn vẹn của sản phẩm), đồng thời cho phép một số hoạt động sửa đổi vô hại trên sản phẩm
4.3.2. Ví dụ
4.3.2.1. Ví dụ: + Để xác thực tự động và khôi phục nội dung của hình ảnh, video kỹ thuật số. thủy vân nửadễ vỡ được nhúng vào hình ảnh gốc, phản ánh sự giả mạo độc hại cục bộ trên hình ảnh đó: copy-cut, chỉnh sửa khung video, chèn mã độc,... + kiểm soát sao chép: Khi vượt quá số lần sao chép thoog tin (ảnh, video) dấu thủy vân ban đầu sẽ bị thay đổi và nhờ đó nhà phát hành có thể kiểm soát và xác định được vi phạm bản quyền, chẳng hạn như Netflix kiểm soát video với số lượng người xem cho phép trong các gói người dùng hợp lệ.
5. Giấu tin trong ảnh
5.1. Kỹ thuật LSB
5.1.1. Phương pháp giấu tin
5.1.1.1. - Đầu vào của phương pháp bao gồm: o Ảnh gốc C. o Thông điệp bí mật M. - Đầu ra: Ảnh mang tin.
5.1.1.2. Các bước cơ bản trong quá trình giấu tin vào trong ảnh sử dụng k bit LSB như sau:
5.1.1.2.1. Bước 1
5.1.1.2.2. Bước 2
5.1.1.2.3. Bước 3 Thực hiện giấu tin
5.1.2. Phương pháp tách tin
5.1.2.1. - Đầu vào: Ảnh mang tin. - Đầu ra: Ảnh đã tách tin và thông điệp bí mật.
5.1.2.2. Các bước thực hiện:
5.1.2.2.1. Bước 1
5.1.2.2.2. Bước 2
5.1.2.2.3. Bước 3
5.1.3. Ví dụ
5.1.3.1. Đề bài
5.1.3.1.1. Giả sử có 4 điểm ảnh đầu tiên là: 123 197 213 255
5.1.3.1.2. Chuyển các điểm ảnh về dạng nhị phân thu được kết quả như sau: 01111011 11000101 11010101 11111111
5.1.3.1.3. Thông điệp bí mật M là chữ ‘a’ có mã ASCII là 97, biểu diễn dưới dạng nhị phân như sau: 01100001
5.1.3.2. Quy trình giấu
5.1.3.2.1. Cứ 8 bit ảnh, lấy 6 bit đầu của điểm ảnh (từ vị trí I0 đến I5) ghép với 2 bit thông điệp (từ vị trí a0 đến a1 ) sẽ được:
5.1.3.2.2. Như vậy, ảnh sau khi giấu thông điệp M có điểm ảnh dạng nhị phân như sau:
5.1.3.3. Quy trình tách tin
5.1.3.3.1. Lấy 2 bit ngoài cùng bên phải trong mỗi điểm ảnh mới:
5.1.3.3.2. Ghép lại với nhau được chuỗi nhị phân thông điệp, chính là chữ “a”: 0110001
5.2. Dựa trên miền không gian
5.2.1. Khái niệm
5.2.1.1. Là một phương pháp giấu tin trong ảnh được sử dụng phổ biến hiện nay bằng cách giấu thông tin vào các điểm ảnh. (hay lấy từng bit của tin mật rải nó lên ảnh gốc và thay đổi bit có trọng số thấp của ảnh bằng các bit của tin mật.)
5.2.2. Đặc điểm
5.2.2.1. Ảnh chứa tin sẽ không hoặc ít khi bị xử lý trước khi thực hiện giấu tin.
5.2.2.2. Vì khi thay đổi các bit có trọng số thấp không ảnh hưởng (hoặc rất ít ảnh hưởng) đến chất lượng ảnh, và mắt người không cảm nhận được sự thay đổi của ảnh đã giấu tin.
5.2.3. Một số kỹ thuật thường dùng
5.2.3.1. - LSB (Least Significant Bit)
5.2.3.2. - Hoán vị giả ngẫu nhiên (Pseudo-random Permutation)
5.2.3.3. - Phương pháp giấu khối
5.2.3.4. - Phương pháp Brundox
5.2.3.5. - Phương pháp Darmstadter-Dellegle-Quisquotter-McCa.
6. Mô hình giấu tin và tách tin
6.1. Các tham số chính trong mô hình trên là {X, M, S, K, E, D} trong đó:
6.1.1. - Vật chứa X: Là các đối tượng được dùng làm môi trường để giấu tin như ảnh, âm thanh, video, văn bản,…
6.1.2. - Thông tin cần giấu M: Nó có thể là thông tin (với các tin bí mật) hay các logo, hình ảnh bản quyền (thủy vân).
6.1.3. - Vật chứa tin S: là vật chứa đã chứa tin, Là vật chứa X và thông tin cần giấu M. Về mặt chất lượng S không được khác biệt nhiều so với vật chứa X.
6.1.4. - Khóa K: Là một chuỗi ngẫu nhiên được sinh ra bởi bộ sinh số mật mã an toàn (bộ sinh số này đáp ứng một số yêu cầu nhất định).
6.1.5. - Bộ nhúng thông tin E: Là những chương trình thực hiện các thuật toán để giấu tin vào vật chứa.
6.1.6. - Bộ tách thông tin D: + Bộ tách triển khai các thuật toán tách tin tương ứng với các thuật toán giấu tin. + Thành phần quan trọng không kém so với bộ nhúng thông tin. + Bộ tách thông tin cũng sử dụng các phương pháp, thuật toán, kỹ thuật nhằm tìm kiếm và trích xuất thông tin. + Thông thường, mỗi kỹ thuật giấu tin thì sẽ có kỹ thuật tách tin tương ứng.
6.1.7. - Bộ tiền mã hóa: + Chuyển đổi thông tin cần giấu M sang một hình thức thuận tiện để giấu vào vật chứa. + Trước khi giấu thông tin M vào vật chứa X, cần phải chuyển đổi M sang một dạng phù hợp. Ví dụ: Với X là 1 file ảnh thì M thường phải được biểu diễn dưới dạng mảng bit 2 chiều. Để tăng tính ổn định (tính chống biến dạng) của M thì M phải được mã hóa chống nhiễu hoặc sử dụng tín hiệu băng thông rộng. Sử dụng khóa K để tăng tính bí mật cho M. Đầu ra của bộ tiền mã hóa là thông tin đã mã hóa M’.
6.1.8. - Bộ tiền xử lý: xác định các đặc thù của hệ thống nhận thức của con người từ đó xác định các vị trí ít quan trọng hoặc khó bị phát hiện trong vật chứa X giúp cho việc nhúng M vào X hiệu quả và ít bị phát hiện hơn.
6.1.9. - Máy dò: + Để phát hiện có thông tin được giấu trong vật chứa hoặc thông tin giấu còn nguyên vẹn hay không. + Máy dò sử dụng các biện pháp như khoảng cách Hamming hoặc tương quan chéo giữa vật chứa hiện tại và bản gốc (trong trường hợp có sự hiện diện của nó).