Luận văn Thạc .Si': Bảo một bằng các kỹ thuật mã hoá và giấu tin1.1.1.M ã hoá C ryptograp h y Là một phươns phốp biến đổi thôn» tin thành một dạng thông tin khác, sẽ không hiểu được nội
Trang 2Luân vủn Thạc sỹ: Bào mật bẳng các kv thuật mã lioá và giấu tin
LỜI NÓI D Ấ U 2
CHƯƠNG 1: GIÓI THIỆU VẮN Đ Ề 3
1.1 Đặt vấn đ ề 3
1.2.Lịch sử bảo mật thông t i n 5
1.3.Các khái niệm cơ bản .7
1.4.Phân loại các hộ mật mã 10
1.5.Phần mềm máy tính cung cấp siài pháp Steaanography I i CHƯƠNG 2: MỘT SỐ PHƯƠNG PHÁP MĂ HOÁ .ỉ 4 2 1 Đại cưcm2 về mã h o á 14
2 2 Các kv thuật cơ bản trons bảo mật thôns tin 14
2.3 Ứ n2 đụng mã hóa thông tin 21
CHƯƠNG 3: GIÁU THÔNG TIN TRONG Ả N H 27
3.1.T ổna quát về aiấu thông tin (Steganooraphv) 27
3 2 Các khải niệm Cữ b ủ n 29
3 3 Một sổ thuật toán giấu thông tin trons â n h 35
CHƯƠNG 4: CÀI ĐẶT CHƯƠNG TRÌNH 61
4 1 Mã hóa: 62
4.2 Cài đặt .67
CHƯƠNG 5: KẾT LUẬN VÀ HƯỞNG PHÁT TRIẾN 72
5.1 K ết luận: 72
5.2 Hưóng phát triể n 72
T À I LIÊU THAM K H Ả O 72
Tiếng V iê t 72
Ticng A n h 72
Trang 3Luận VIĨIỈ Thạc vỹ: Bão mật bằng các kv thuật mã hoá và giâu tin
lả môi trườna mở và tiện nchì, tạo thuận ìại cho giao lưu và hội nhập Bên cạnh những mặt tích cực của truyền thòng mạng đồng thời cũng này sinh những mặt tiêu cực như nạn ăn cấp bản quyền, xuvên tạc thông tin, truy nhập thôns: tin trái phép v.v Chính
c ô n s nshệ thôna tin đã và đan« đón» sóp một cách tích cực, hữu hiệu vảo việc đảm bảo an toàn cho thông tin.
Mã hoá (Cryptosraphv) thồns tin là biến đổi thông tin thành dạng khác không hiểu được.chỉ nsười có khoá mới eiảì mã về dạn« ban dầu,Theo phươns pháp này dữ liệu vẫn còn tồn tại trên máy tinh hav trên đườna, truyền, chinh các tập tin mã hoá này gày sự chú ý cho người có ý đồ truy cập thông tin tỉm cách giải mã.
Giấu tin (dât hiđing) ỉà quá trình ẩn dừ íiệu vào trong môi trườna khác có thể là tập hình ảnh, âm thanh Dữ liệu trước khi ẩn có thể mã hoá và nén
Vi vậy Giấu dừ liệu chính lả phương pháp bảo mật thông tin rất hữu hiệu tránh
- được sự chú ý cùa người khác Đây chính là nôi dung của ìuận văn gồm các phần:
Chương I : GIỚI THIỆU VÀ NÊU V ẨN ĐÈ
Chương 2: MỘT s ố PHƯƠNG PHÁP M Ã HOẢ
Chương 3: GIÁU THÔNG TIN TRONG ẢNH
Chương 4: CÀI ĐẶT CHƯƠNG TRÌNH
Chương 5: KÉT LUẬN VÀ HƯỞNG PHÁT TRIỂN
TÀI LIỆU THAM KHẢO PHỤ LỰC
Trang 4Luận văn Thục aỹ: Bào m ật búng các kỹ thuật mã haá vù giấu tin
an toàn dừ liệu khí trao đổi các thông tin mật.
Sơ dồ phân cấp:
• Î’ÜS- TSKIỈ Xỵitvưn Ai tán H uy S!TH; Dinh ,Vgoc Triều
Trang 5Luận văn Thạc Si': Bảo một bằng các kỹ thuật mã hoá và giấu tin
1.1.1.M ã hoá (C ryptograp h y)
Là một phươns phốp biến đổi thôn» tin thành một dạng thông tin khác, sẽ không hiểu được nội dun° nếu không giải mã; chỉ nhữns naười có khoá mới cỏ thể giải mã dạn« thông tin nàv để được thông tin ban đầu.
1.1.2.C h e giấu thông tin (S íegan ograp h y)
Steganography là che giấu thòng tin bane cách ngăn cản việc xác định thông điệp ẩn (hidden m essages) Từ Steganosraphy được lấy từ tiếng Hy Lạp nghĩa ỉả chồna lên từ viết (corvered w ritins) N ó bao aồm một màn« lớn các phươns pháp thông tin bí mật để aiấu thôns tin điệp, các phương pháp này gồm mực vô hình, các chấm nhỏ (m ierodots), hoán chuvển ký tự, C ôns nshệ số hoá cho phép chúna ta ứng dụng kỳ thuật steeanoaraphy để che giấu thôna, tin trong các tín hiệu số khác nhau, một trong nhíma phương pháp có nhiều triển vọne nhất là che giấu thông tin trong ảnh số.
Thuật naừ "che siấu thôna tin" liên quan đến cả hình m ờ (watermarking;) lẳn steaanoaraphv trên ba khía cạnh khác nhau cùa một hệ thốna che siấu theme tin: bào toàn, an toàn và bền vừ ns.
Bảo toàn: Sự tham chiếu đầy đủ đến số lượng của thông tin đã được che siấu.
- An toàn: kẻ trộm không có khả năng phát hiện ra thông tin che giấu bên trong dạn2 thông tin khác (môi trường vò).
- Bền vữns: nếu có sự biến đồi về môi trường vò thì kỹ thuật steganography
có thể khôi phục được trước sự phá huỳ cùa thôns tin đă che giẩu.
Các kỹ thuật steganography luôn hướns đến hai mục tiêu là nâng cao độ bảo nật và lượn« dừ liệu siấu Tuv nhiên thuờns hai mục tiêu này mâu thuần với nhau khi un» dụns, ta phải biết duns; hoà hai mục tiêu chí nàv một cách hợp lý.
N goài ra, kv thuật stesanosraphv lảm cho naười xem thông thườn 2 khôna biết
sự cỏ mặt của thôna tin aiấu trons mòi trườns vỏ.
'•!!!>' P<JS-TSklí \guyJn Xtnin Huy 4 \ 77/ Ditìiì \\iiK' Triều
Trang 6Luận văn Thạc Ap: Bão mật hằng các kv thuật mă hoá và giấu tin
1.1.3.M ối q u a n hệ giữa mã hoá và che g i ấ u thông t i n
Mã hoá và che eiẩu thông tin có quan hệ mật thiết với nhau Cryptoaraphy biến đòi thồna điệp lảm cho nó tháy được nhưna không thê hiểu; còn Steeanography che siẩu th ỗn s điệp sao cho không nhìn thấy được M ột thôna điệp nếu chỉ được mã hoá cỏ thể gâv sự hoà’ nshi cho nhữns người cỏ ý đồ truy cập trái phép tìm cách giải mã, trong khi một thông điệp “không thấy được” tạo bời Steganography thì không tạo ra càm siác đó D o đó để tăng tính bảo mật cao của thông tin ta nên phối hợp với một số phiĩơna pháp mã hoá và giấu thôns tin.
1,2.Lích sử bảo m ật th ôn g tin
Theo dòna ỉịch sử, phần lớn các phươna pháp và các biến thể đã được sử dụng
đế bảo mật thôns tin Một trone, những tài liệu đầu tiên đề cập đến Steganography là Histories o f Herocỉotus.
Một hình thức nổi tiếng độc đáo khác cùa hệ thốns che aiấu th ôns tin cổ điển là naười La Mã thườna cạo đầu cùa một nô lệ, và xăm thôns tìn cần che giấu trên đó Sau
đò tóc dã mọc lẻn nô !ệ được gởi đi để chuyển sia o thôns tin M ột hệ thổne, như thế chỉ có thề làm được m ột lần, nếu bị phát hiện thi rất đơn giản là cạo đầu của tất cả các neười đi qua để kiểm tra việc che eiấu những thôn« tin.
Một hình thức khác ià dùng mực vô hinh để bảo mật các thông điệp Loại mực
dỏ được sử dụns thành côna; trons chiến tranh thế siớ i lần II M ột bức thư thôns thườns cỏ the chứa nhiều dòns chữ thông điệp mật được viết bàng mực vô hình giữa các dona Mực vô hình thôna thường là sữa, dấm, nước ép trái cây và nước tiểu Đe đọc được nhũng thôn« điệp mật viết bàns mực vô hình người ta hơ nóng thỉ sẽ đọc dược thông điệp mật đó.
Cùng với việc phát triển của cỏn« nghệ, phươns pháp m ực vô hình trở nên lạc hậu dễ phát hiện N ên nhiều loại mực tinh vi khác đã được phát triển.
Naoài ra nsư ờ i ta cỏn clùns kv ihuật mật mã rỗns (thôns điệp khôna mã hoá) Tronạ phươna pháp này thôna điệp được nsụv trang trons; một d ạ n s thông điệp bình
Trang 7Luận vân Thạc sỹ: Bão m ật bãng các kv thuẠt mã hoá và giấu tin
thườns xem như vô hại để tránh sự hoài nshi và dễ dàns thoát khỏi sự kiểm soát, bầng cách trích ra một ký tự nào đó trong một từ của văn bản bình thường để được thông điệp mật Ví dụ:
Fishing freshwater bends and saltwater coasts rewards anyone feeling stressed Resourceful anglers ususally find masterful ieapers fun and admit swordfish rank overwhelming anyday.
B an s cách lay kỷ tự thứ ba trong mồi từ của văn bản trên ta được thông điệp như sau:
Send L aw yers, G uns and m oney.
Bức thông điệp sau được gởi bởi một điệp viên naười Đức trong thế chiến thứ hai:
Apparently neutrai’s prũtesỉ thoroughly discounted and ignored, ỉsman hard
hit Blockade issue affects pretext for embargo on by products, eject silts and vegetable
oils.
Bằna cách lav kv tự thứ hai trona mỗi từ cùa thôns báo và ghép lại thành thônạ điệp sau:
P ershing sails from NY June i
Trona thời đại ngày nav, nhu cẩu trao đổi thông tin mật trên nhiều lãnh vực trở nên rất quan trọng và rất cần thiết Nhằm mục đích tăng tính bảo mật thona; tin ta cần phải tìm hiểu nhữna khái niệm, thuật to á n , v ề mã hoá và che giấu thông tin.
1.3.Các khái niệm Cữ' bản
1.3.1,M ã hoá và giải mã
Việc mã hoá và siải mă thườn2 được thực hiện theo một hệ mật mã và được mô
tã như sau:
Cho một bản tin gổc (chưa mã hoá) w
Mồi khoá K xác định một hàm mà hoá eK và một hàm aiải mã đK.
Trang 8Luận vãn Thục sỹ: Bão mặc bằng các kỹ thuật mã hoá và giấu tin
Bản mã c thu đợc từ bản tin w, sao cho: c = eK (W ) và w = dK(C)
Rõ ràng dK là hàm ngược của eK.
Một cách cụ thê hơn, một hộ mật mã bao gồm không gian bàn tin goc, một không gian bản mã và một không gian khoá.
Mô hình kỹ thuật giấu tin đơn giản gồm:
• Thuật toán siấu thông tin
• Bộ giải mã thông tin
( Sơ đồ chung cho quá trình giấu tin) Trong đó
a) Secret M essage (M): thông tin cần giấu.
b) Cover Data (I): dữ liệu phủ, môi trường giấu tin.
c) Embedding Algorithm (E): bộ mã hóa / giải mã ỉà những chương trình, những thuật toán nhúng tin.
d) Key (K): khóa bí mật, sử dụng trong kỹ thuật »iâu tin.
e) Steeo Data (S): dừ ỉìệu m ans tin mật.
0 Control (C): Kiểm tra thông tin sau khi giải mã
\H D f’Ị )>'■ ĨSKH Xạuyẽn Xíhi» Huy I STH Dinh Svạc Triừìi
Trang 9Luận vủ>! Thạc vỹ: Bão m ật bằng các kỹ thuậl mã hoá và giâu tin
Thôna tin được aiấu vào phương tiện m ans, theo một thuật toán, sử đụng khỏa bí
mật dùns chung eiừa naười sửi vả naười nhận tin.
(S ơ đồ ehune cho quá trình siài mã) Thôna, tin mật được truyền côns, khai trên m ans, quá trinh eừỉ và nhận có thể xem như
xảy ra dồn s thời, bỏ qua trễ đường truyền Thôna tin mật được trích ra từ đối Urợng
m an s tin và được sử dụne theo mục đích định trước.
1.3.2.Thám mã
Là công việc khôi phục bản tin w từ bản mà c khi không biết hàm giải mã dK
Một hệ mật mã tổt là một hệ mã việc thám mã phải khó, hoặc tốt hơn là không khả thi
Khó khản của v iệc thám mâ phụ thuộc vào các điểu kiện cho trước Sau đây ỉà các tình
huống có thể có của người thám mã:
- Chì biết bản mã: V iệc thám mã chi dựa trên mẫu của bản mẫ Đ iều đó có nghĩa bàn tin w chi chu được từ bản mã c với cách tiếp cận nàv, thông thườna ta giả thiết
rang naười thám mã biết được hệ mật mã đã dùng Giả thiết này cũng hợp lý ờ chỗ,
chãng hạn: khi sử dụna lưu trữ dữ liệu ở dạng mã hoủ trong một hệ thong thông tin, thì
hệ mật mã xác định phải được dùna đển.
Trang 10- Biểt bản tin: trons trường hợp này nsười thám mã biết trước một sổ cặp (W, eK(W )) V iệc biết trước một số cặp như vậy nó hỗ trợ rất đắc ỉực cho việc thám mã của một hãn mà c cho trước.
- B iết bản tin được lựa chọn: trong trường hợp này ri2,ười thám mã chọn lựa trước một số cặp (W , eK (W )) ơ ũ tinh huống này người thám mã đã giả định được khoá Khi đó người thám mã có thể cải trang thành người sử dụng có thẩm quyền của
hệ thôn» tin đang xem.
- Biết bàn mã được lựa chọn: trone trườns hợp này naười thám mã biết trước một số cặp (C, dK(C)) Với cách chọn này đễ dẫn đến bàn tin dK(C) vô nghĩa.
- Chi biết khoá lập mã (trong hệ khoá công khai): trong trường hợp này người thám mã'biết khoá lập mã eK và cố 2ắns tìm dK trước khi nhận bản mã c người thám
mã có nhiều thời gian để làm việc đó, bởi vì trong hệ mật mã khoá công khai, eK đirợc côn2 bổ trước và có thể là rất tâu trước khi nó được dùna để mã hoá bản tin w như vậv nsười thám mà bàns cách xử lv trước họ có thể làm ỉộ ra khoá giải mã dK., trước
khi neười thám mã nhận bàn mã c mà họ thật sự quan tâm đến.
Trong tấí cả các tình huốn« trên, ta luôn luôn siả định rằng naườỉ thám mã biết trước hệ mã được dùng, vì nó liên quan đến việc mã hoá dữ liệu Mặt khác khi cần thử một số cổ định các hệ mã, thì độ phức tạp của việc thmá mã tăng lên một thừa số ktìôna, đôi.
2)i là hệ mã còn« khai Dưới đâv sẽ tìm hiểu rỗ hơn về hai hệ mã này.
ỈAiận văn Thục SỲ: Bào m ật băng các kỹ thuật mã hoá và giẩu tin
Trang 11Luận văn Thạc sv: Bú« mật bằng các kỹ thuật mã hoá VÌI giấu tin
1 4 1 Hệ mã đ ổi xứng (hệ cổ điển)
Quá trinh mã hoá và giải mã sử clụns các thuật toán đối xứng lảm khoá V iệc để ]ộ bàn tin mã hoá và thuật toán hoặc khoá sẽ cỉễ dàng dẫn đến !ộ bản tin, hệ này còn được sọ i lả hệ mã cổ điển Trons trườn« hợp nàv phải đảm bào sao cho nội dung bàn
mã và khoá chì có người gởi và người nhận biết Với phương pháp nàỵ còn có nhược điểm là khi cần phải thav đổi khoá thì người gời và nsưởi nhận rất khó đảm bảo được
v iệc khôna bị đánh cấp khoá trên đường đi, hơn thế nữa ỉà nó không cho phép tạo ra chữ kỹ tự điện tử.
1 4 2 Hệ m ật m ã không đối xứng (hệ mã công khai)
Quá trình mã hoá và giải mã sử dụng các thuật toán khône đổi xứng làm khoá, trona quá trình mã hoá và aiải mã đùna phần mềm chuvên dụn« tạo ra bộ mã gồm hai khoá khác nhau, một khoá thử nhẩt eK dùng để mẫ hoá bản tin (khoá này của người nhận phô biến công khai cho nsười sởi) còn gọt là khoá côna khai (Public kev), và khoá thứ hai dK cỉùne để eiảí mã bản tin mật (khoá nảy của nsười nhận phải bảo mật cần thận) còn aọí là khoá bí mật (Private key) Naười sởi sử dụng khoá công khai của người nhộn để mã hoá bản tin, sau khi nhận được bản tin đã mã hoá nc;ười nhận đùng khoú bi mật cùa minh để giải mã bản tin đã mã hoá Như vậy việc để lộ bàn tin để mã hoá và khoủ công khai eK vẫn không thê giải mã được bản tin đă mã hoá Lý do tính n» JỢC khoá bí mật từ khoá côn» khai là rất khó khăn; Một hệ mã hoá dùna; khoá công khai để mà hoá thông tin, và khoá bí mật để giải mã, còn được gọi là hệ mã hoá công khai Với kỹ thuật này cho phép tạo ra chữ ký điện từ.
Trang 12ỉ.nận van Thạc sv: Bào mật bằng các kv thuật mã hoá và giấu tin
1.4.3.So sánh hai hệ mã đối xứng và hệ mã không đối xứng
1 Yêu câu:
- Mã hoá và giải mã đùns sià thuật
tương tự nhau.
- Naười gởi và ngưòĩ nhận phải có
cùn» giải thuật và cùna khoá.
2 Tính bảo mật:
- Khoá phải được 2ÍỮ bí mật
- Khôna thể hay ít nhất khôns có
tính thực te để giải mã đoạn tin nếu
Ihôns tin khác khôníĩ có sẵn.
- Biết siài thuật cộn c với các mầu
- Một trong hai khoá phải dược siừ
bí mật, khoá còn lại ỉà công khai.
- Không thể hay ít nhất không có tính thực tế để siả i mã đoạn tin nếu thônơ tin khác khôns có sẵn.
- Biết giải thuật và một khoá công khai thì khône đủ để xác định khoá bi mật.
_ — -7 - - T -r.-
-Bảng tóm tăt so sánh hệ mã cô điên và hệ m ã công khai
1.5.Phần mềm máy tính cung cấp giải pháp Steganography
Các phần mềm Steganography hiện nay rất mơi và rất hiệu quả Những phần mềm như vậv cho phép eiấu thòns tin trong ảnh, âm thanh, v v
Trono máy tỉnh, một bức ảnh là một dãy các số thể hiện độ sáng tại các điểm Ịciác nhau trone bức ảnh.
Khi nhúns dữ liệu vào trons một ảnh có hai vấn đề cần phải quan tâm: một là Container chứa ảnh và thông tin được che giấu M essage là thông tin được che giấu Thons tin có thể lả chuỗi thuần văn bàn vãn bàn được mã hoá, bức ảnh khác hoặc là bit cứ thử ai có thể nhủns vào được trona một bức ảnh.
Trang 13Ví dụ;
Giả sừ ta có một bức ảnh 24bit mâu kich thước 1024 X 768 (đây ỉà độ phân giải
ch u n s cho các ảnh vệ tinh, ảnh chụp các thiên thể, ) Kích thước của nó hơn 2MB ( 1024 X 768 X 24 / 8 = 2.359.296 bytes) Các màu CÙÍI mỗi điểm ảnh (p ixel) được biểu diễn bời ba thành phần: đỏ (red), xanh lá (green) và xanh đương (blue) M ồi thành phần được thể hiện bang I byte (8 bits) Ảnh 24bit dùng 3 byte cho mỗi điểm ảnh.
N ếu thông tin được lưa vào bit cuối (LSB: least significant bỉt) của mỗi byte,
v ậ y thi 3 bit sẽ được lựa trong mỗi pixel Với “mắt người”, bức ảnh sẽ không thấy có
sự khác biệt, naay cả khi 50 sánh chủng với bản gổc.
Từ khi kv thuật siấu thons tin irons ảnh xuất hiện, đã có nhiều nghiên cửu và phát triển nhữne chươns trinh che gỉấu thông tin khác nhau Do tính chất nghiên cứu nên nhiêu chương trình chỉ tập trung vào tùng loại ảnh khác nhau đê chứng minh tính khả thi trong vấn đề giấu thôns îin trona ảnh Dưới đây ta sẽ khảo sát nhữna chươna trinh hiện có trên thế giới:
1.5.1.H ide and Seek V4.1
HiđeSeek dùng để che giấu và trích thôna; tin trons ảnh dạng GIF.
Giới hạn cùa nó là dữ liệu được giấu phải nhỏ, không vượt quá 19KB Đồng thời nó không cài đặt phần mã hoá bên trong, do đó nếu muốn bảo mật thông tin bằng
mã hoá, thì phải chạy chirơns trinh mã hoá ngoài trước khi che giấu thông tin.
Kết quả kiểm nahiệm với tập tin dừ liệu kích thước 8685 bytes:
Nhận xét: ảnh kểt quả xuất hiện có biến đối so với ảnh Rốc, tuy những biến đổỉ
này nhỏ nhưn2 đủ để người có kinh nghiệm nhận thấy, vả nghi ngờ ảnh có chứa thông tin.
Luận vãn Thạc sỳ: Bào mật bàng các kỹ thuật mã ho á VÜ giấu tin
Trang 14Lỉtận văn Thạc sỵ: Biio m ật bằn« các kỹ thuật mã hoá vã giấu tin
/ I.5 2 S teg o D o s
SteaoD os lả một chương trình công cộng chì làm việc với ảnh 320 X 200, vả
256 màu.
StegoD os dùng LSB để che giấu thôn? điệp, và nó ít thành công hơn các chươns trinh khác N ó có đặt EOF ở cuối tập tin, nhưng thôns điệp khôi phục lại vẫn còn nhiều rác ở cuối tập tin.
1.5.3.W hite N oise Storm
White N oise Storm là chương trình giấu ảnh rất hiệu quả trong môi trường DOS Chúna ta dễ đàns nhúng chuỗi thông điệp vào ảnh và nhận thấy rẳng chúng ít bị biến đổi Chương trình dùng cách thức LSB và áp dụng chỉ với tập tin ảnh PCX Thông điệp được mã hoá và dùng các bit của nó để tạo tập LSB mới Nhược điểm của phương thức mã hoá White N o ise Storm là nó dùng quá nhiều bit để lưu írữ thông tin.
NHD: PC!.''-TSKH Xgìtyưn Xiiiin Huy 13 STH ■ Đìn/i S ịịọc Triều
Trang 15Luận v á n Thạc sỹ: Bão mật b a n g các kỹ tliuật mà hoá và g i ấ u tin
Ị
C H Ư Ơ N G 2
M Ộ T ♦ SỐ P H Ư Ơ N G P H Á P M Ẫ H O Á
2 1 Đại cư ơn g về mã hoá
Mã hoá (Encryption) là sự biến đổi dừ liệu san» một dạng thức có thể đọc được hoặc không đọc được nếu không có kiến thức thích họp M ục đích của nỏ là đảm bảo
sự "riềna tư" bàng cách che đậy nó đổi với những nsư ời không m on g muổn, ngay cả khi họ có thể truy xuất đến dữ liệu đã được mã hoá.
Giải mã (Decryption) là quá trình ngược lại với mã hoá N ó biến đổi đừ liệu được mã hoá trờ lại đạna nguyên thuỷ cùa nó.
Mã hoá và giải mã cẩn sử dụng những thông tin bâo mật, thườne gọi ỉà khoá (key) Với một sổ cách thức mã hoá, một key có thể dùng cho cả mã hoá ỉẫn giải mã tron» hệ mật mã đổi xứng Với cách khác thì dim s khoá khác nhau cho mã hoá và aiải
mã trong hệ mật mã không đối xứns.
Vấn đề bảo mật hiện nay còn được ứns dụn° trên nhiều lĩnh vực hơn, khôn« chỉ
lả mã hoá và siảì mã Authentication ỉà hình thức họp thức hoá bản quyền, hay tính riêna tư của naười sử duns Hình thức này được sử dụng rộng rãi trons mọi mặt của cuộc sốn s - Ví dụ như ta ký tên trên các biên bản, tài liệu, v à trên phương diện liên lạc điện tử như hiện nay, chúng ta cần kỷ thuật điện tử để cuna; cap Authentication.
N so à i ra bảo mật còn được íma clụns trên nhiều lãnh vự c khác như: Digital signature (kỳ sổ hoá) liên kết tài liệu với một khoá nhẩt định, trong khi đó digital timestamp liên kết tài iệu với việc tạo nó ở thòi sian nhất định Nhưng phương tiện này còn có thể sử dụng để kiểm soát ỉên ổ đĩa được chia sẽ, một cài đặt cần bảo mật cao , hav một kênh truvển hình phải trà tiên.
2.2 C ác kỹ thuật CO' bản trong bảo mật íhôn g tỉn
Có thể phân chia thành hai kiểu hệ thốn« bảo mật: khoá bí mật (secret-key)và khoá côna khai (public-key).
M L ’ PCS-'ÍSKì/ S^uyJ/i Xuàtì Huy 14 STH: Qinh T>'iẻìi
Trang 16Luận văn Thạc ỵỹ: Báo m ật hằng các kỹ thuật mã h»á và giấu tin
Trong bảo mật đùng một khoá bí mật còn gọi !à hệ bảo mật đổi xứng (symmetric cryptography), khoá bí mật đỏ được sử dụng cho cả hai tiến trinh mã hoả
và giải mã Hệ thống dùng khoá bi mật thông dụns nhất là D E S (Data Encryption Standard).
Trong hệ thống khoá công khai, thi mỗi người sử dụng hai khoá có một khoá
cô n s khai (public kev) và một khoá riêng tư (private key) Khoá cô n g khai được cung cấp khôn? cần che giấu, trona khi đó khoá bí mật phải được bảo vệ Tiến trinh mã hoá
sẽ dùn« public key, trong khi tiến trình giải mã sẽ dùng Private key Hệ thống bào mật RSA được sừ dụng rộn° rãi irons bào mật khoá công khai RSA là viết tất của Rivest, Shamir và Adỉeman, tên của nhừns neười phát minh ra RSA.
2 2 1 Hệ mã khoá đối xửng (hệ mã cổ điền)
Khái quát: hệ mã cổ điển là hệ mã có đặc tính dơn giản, dùng các thuật toán đối xứna để tạo khoá mã hoá và khoá âiải mã dễ thám mã V iệc mã hoá và giải mã dùns chuñe một khoá hoặc dễ dàna suy ra được khoá eiải mã từ khoá mã hoá và ngược lại.
Giả sừ trons hệ thống có n nsarời muốn trao đổi thông tin mật với nhau, mồi cặp trao đồi thôn® tin với nhau mà các neười còn lại khôn« thâm nhập được, thì mỗi cặp phải có khoá bí mật khác nhau.
Như vậv trong hệ thống có n nsười cần trao đổi thông tin với, thì cần phải có đến tổ hợp khoá bí mật là:
XHD PtJS-TSKH Vsji/I t'í?Xiuhĩ Huv 15 .V 777 Dinh Siỉọc Triều
Trang 17Luân văn Thạc s v: Bào mật bằng các kỹ thuật mũ huá và giấu tin
/
N hư vậy trong trườn« hợp này hệ thống tăng thêm 4 khoá bí mật.
Phần sau sẽ tìm hiểu một số hệ mã cổ điển từ đơn giản đến hức tạp.
¿ 2 1 1 Hệ m ã C E A S A R
Trong hệ mã này, siả sử cả bản tin và bản mã đều gồm tat cả ký tự trên bảng chừ cái tiếng Anh ỵ - {A B , và đảnh sổ thứ tự tương ứ n s trong bảng chừ cái lần lượt 0,1, .,2 5 K hõne gian khoá là {0,1,2, ,2 5 } N eu K lả khoá, thì eK Ịà song ánh
từ Z—> I , biển mồi ký tự trono ĩ. thành kv tự đứng sau nó K kv tự trong I (Thứ tự iron s 1 là thứ tự của ký tụ tự nhiên, và cuối bảna ký tự lại được nổi tiếp vào đầu cùa bàng k ý tự.
N hư vậv ứng với khoá K e {0,1.2, ,25} ta có:
Hàm mã hoá eK (x) = (x + K) mod 26
Hàm aiải mã được xác định như sau: dK = C26-K
» Ị , 2 i ì 5 6 Ị 5 8 10 10 12 i:> 14 15 16 r iằ 19 20 ■ »1 2-í 25
- Nhận xét: Lực lượns của khôn? gian khoá trong hệ mã C E A S A R là rất nhò chì
có 26 khoá, việc thám mã có thể tiến hành đơn giàn bằng cách thử tuần tự các khoá có thể có Điều này dễ dàng khi bàn tin thuộc một ngồn ngữ tự nhiên nào đó, nói chung chi có một khoả aiải mã sinh ra bản mã cỏ nahĩa Vì vậy hệ mã C E A S A R độ an toàn ỉà rất thấp.
Ví dụ: Trona hệ mã CEASAR dùng khoá K = 7 để mã hoá chuỗi văn bàn sau:
Trang 18lu ậ n vãn Thạc sỹ: Háo mật băng các kv thuật mã hoá và giấu tin
/
V ậy văn bàn CHO VI DU MINH HOA có bản mã là:
JOV CP KB TPƯO OVH
Đ ê siả mã dim s hàm d? = e(26-?) đế thu được bản tin.
2.2.1.2-H ệ mã K E Y W O R D - C E A S A R
Là một cải tiến của hệ mã CEASAR- Trong hệ này dùng bảng các khoá theo
một từ cho trước, từ này có các ký tự tương ứng với các số nguyên trong bảng chữ cái
là K | , K-2 , .,K n (với n lả số ký tự trong từ được chọn) Khi đó bản tin được mã hoá
bans cách dùns tuần hoàn các hàm mã hoá eKi , eK-2 > .»eKn, Các hàm giải mã tương
ứns dKt , dK? , .,dK n (Trone đó d K = e(26-k))- lực lượng khôno gian các khoá cùa hệ
mã K EYW ORD - CEASAR sẽ táng theo tuyến tính cùa CEASAR với số ký tự trong
bans khoá.
V í dụ: Trong hệ mã KEYW ORD - C EASA R dùng từ M AH O A làm bảng khóa
để mã hoá chuỗi vãn bàn sau: CHO VI DU MINH HOA.
Trong hệ mã nảy giả sừ cà bản tin và bản mã đều gồm tất cả các ký tự trên bảng
chừ cái tiếns Anh I = í A.B z \ và đánh số thứ tự tương ủn« trong bảng chữ cái lần
lưọr { 0 1 ,2 2 5 }, mỗi khoá là một hoán vị của { 0 ,1 ,2 , ,25} ! V ,
Như vậy hàm mã hoá eK là phép thế n - <0 1 2 3 251 ! •
\ H 0 / 5 H
Trang 19Luận văn Thục vỹ: Bác m ật bằng các kỹ thuật mã hoá và g iấu tin
I
Và hàm giải mã dK = n trong đó n 1 ià nghịch thế của n •
V í dụ: Trong hệ mã thay thế để mă hoá chuỗi văn bản C H O VI D ư MINH HOA, có khoá lã một hoán vị với phép thể n như sau:
2 7 14 21 8 3 20 12 8 13 7 7 14 0
Dùng khoá là một hoán vị với phép thế n ta được dãy sổ:
15 8 6 0 10 21 14 25 10 20 8 8 6 9
Vậy văn bản CHO VI DU MINH HOA cỏ bản mã là
PIG AK VO ZKUi IGJ
2-2.2.Hệ mã khoá không đối xứng (hệ mã công khai)
iL) PÒS-TSKH \\ỉi,ye» Xiuin Huy 18 STH Dinh Xgợc Triều
Trang 20Luận vãn Thạc vỹ: Hào niật băng các kv thuật m ã hoá và giầu tin
Chọn b sao cho UCLN(b, ệ(n)) = 1.
Tính a = b'! sao cho a*b = 1 mod ộ(n)
• Khoá lập mã ỉà (n, b) công khai
Hàm lập mã e(x )= xb mod n = y
* Khoá aiải mã a (bí mật)
Hàm °iái mã d(y) = ya mod n = X
• Độ an toàn;
Hệ mật mà RSA chi được an toàn khi giữ bi mật khoá giải mã a và các thừa số
nguyên tổ p, q trường hợp biết p, q, dễ dàng tính được ệ(n) Biết ệ(n ) sẽ tính được a
theo thuật toán Euclicđean mờ rộng Biết a thì toàn bộ bí mật của hệ thống bị phá vỡ vi
khoá k - (n, a b) được biết nên có thể đọc ngay được bản rõ
Thời gian thực hiện là n Lý thuyết đã chứng minh, nểu chọn n = 1 0 ì5°, tính toán
tròn máv tính có tốc độ 10 tỉ phép tính / aiâv thì phá được khoá phải mất 10132 năm.
Nhược điểm : mã RSA chạy chậm (dịch mã chậm) Khó khăn trong v iệc tìm các
sế nguvên tố lớn p và q.
ứ n a dụns: mã hoá khoả, chữ ký điện tử.
M'L: PCS-TSKH \Ịiiiyỉn\itũn Huy \T H : Đinh Vịv;í/ Triều
Trang 21Luận vùn Thạc sv: Bão mật bằng các kỹ thuật mã hoá và giấu tin
/ 2.2.2.3 H ệ mã hoá E L G A M A L (năm Ỉ985)
Chọn ngầu nhiên r 6 z p | , aiừ bí mật
• M ã hoá x e P r e Zp_Ị -ỳ ek(x,r) hàm 2 biên = (y i,y 2) Trộn bàn rõ X với r bí mật, tạo bản mã không đom định nên 1 bàn rõ có nhiều bán mã
V| “ s r mod p
v2 = X * pr mod p
V], y 2 e zp *
• Giải mã đk (y!, y2) = y2(y ia)'! mod p = X
Khác RSA ELGAM AL sử dụns bộ khoá bí mật 2 chìa (a,r), bản mã hoá là cặp
2 phần tử (V|,y2), tổc độ cỏ nhanh hơn RSA nhưng vẫn chậm.
2.2.2.4 H ệ mã hoá DES
Theo khuyển nghị của Uỷ ban tiêu chuẩn quốc gia Mỹ về hệ thổng mã hoá:
- H ệ thống phải có độ an toàn cao
Thuật toán phài được định nahĩa đầv đủ và dễ hiểu
Độ an toàn phải nẳm ở khoá chứ không phải việc siữ bí mật của thuật toán Thuật toán phải sẵn sàns, cuna cấp cho mọi người đùng
Thuật toán phải thích nghị với mọi ứng dụna
Trang 22Luận văn Thạcsv: Bão m ật bàng các kv tlinật mã hoá và giấu tin
/
- Thuật toán phải được cài đặt một cách tiết kiệm trong các thiết bị điện tử
- Thuật toán phải xuất khẩu được.
IBM côn« bố sản phẩm đầu tiẻn ncảy 17/3/1975, đến 5/1/1977 hệ thống mà hoá DES (Data Encryption Standard) được sử dụns rộn« rãi, tốc độ nhanh hơn 1500 lần so với hệ R SA Sau đó, cử 5 năm, DES được U ỷ ban tiêu chuẩn quốc gia M ỹ xem xét lại
Trona đó : © kv hiệu phép toán hoặc loại trừ cùa 2 xâu bít (cộng theo m oduío 2)
Kl, K?, K|<s có độ đàí 48 bit được tính như 1 hàm của K Trên thực tế, moi Ki là một phép hoán vị bit trong K K |, K2, K | ó sẽ tạo thành bàng khoá.
f có 2 đối sổ rĩ.I (32 bit), Ki (48 bit) kết quả trộn cho 1 xâu có độ đài 32 bit GD3: Mã hoá lần cuối bàna hoán vị IP'1 cho xâu bit RiéLie thu được bản mã y.
V/ ọ ra S -ĨS K H \'ýuyẽnXihiiỉ Huv 21 Y77/' Đinh S p K Trièu
Trang 23Luận văn Thạc iỹ: Bào m ật bằng các kỳ rluiậl mã Itoú và giấu tin
Trang 24Luận văìi Thạc sỹ: Bào m ật hiìng các kỹ thuật mã hoá và giấu tin
1 Biến thứ nhất R được mở rộns thảnh một xâu có độ dài 48 bit theo một hàm
1TỈỜ rộng cổ định E; E(R) gồm 32 bit của R với 16 bít xuất hiện 2 lần
2 Tính E(R)@ K và viết kết quả thành lì chuỗi 8 xâu, mỗi xâu có 6 bít
B = B 1B2B 3B4B5B6B 7B8
3 Dùng 8 bảng s Ị , s 2, , s 8 (được gọi là các hộp s Mỗi Si là 1 bàng 4x16 cổ định Gồm các số nauỵền từ 0 đến 15 Với xâu có độ dài 6 bit Bj = b[b2b3b_|b5b6 ta tính Sj(Bj) như sau:
- Hai bít b|bg xác định biểu diễn nhị phân cùa hàng r trong Sj (0 < r < 3)
Trang 25Luận văn Thạc xỳ: Bào m ật băng các kỹ thuật mã hoá và giấu tin
/
- Bốn bit b2b3b4b5 xác định biểu diễn nhị phân của cột c trong Sj (0 < c < 15) Sj(Bj) sẽ xác định phần tử Sj(r,c): phần tử nảy viết dưới dạng nhị phân là 1 xâu có độ dài 4 bit V ậy mỗi Sj có thể coi là 1 hàm đầu vào là 1 xâu có độ dài 2 bit và 1 xâu có độ dài 4 bít, còn đầu ra là 1 xâu có độ dài 4 bit B ằns cách tương tự, tính các
2.3 ừ n g dụng mã hóa thông tin
2.3.1 Chuyển bân tin m ật
-Thông tìn sau khi mã hóa có thể nhân bàn trên giấy hay trên đĩa mềm và aửi theo đườna bưu điên.
-T hôns tin sau khi mã hóa có thể truyền trên mạng đến nơi nhận.
S: tập hữu hạn các thuật toán ký
V: tập hữu hạn các thuật toán kiểm thử chừ ký
Đ íc điểm phân biệt:
Chữ ký thườns trên aiấv:
XHD: PGS-TSKH Xguycn Xuán Huy 24 NTH: Đinh Nqọc Triều
Trang 26Liiàn văn Thọc sv: Bào mật bằng các kỹ thuật mã hoá và giấu tin
ì
Đặt ở i vị trí nhất định, thường ở cuối của văn bản Bản sao chừ kỷ dễ dàng nhận thấy vả không được côns nhận Chữ ký điện từ;
Ký trên tìm a bit của văn bản.
Bàn sao chữ ký rất khó nhận biết, vẫn được công nhận về mật pháp lý.
Ký điện từ (chữ ký số) được hiểu là bí mật mã hoá trên từng bit của vãn bản, naười khác không thể bẳt chước (vì naười ký 2Íữ bỉ mật khoá mã hoá) Chữ ký điện tử được corns khai khoá giải mã (người ký xác nhận trách nhiệm) và cho phép mọi người kiểm thử Ký điện tử là hình thức công bố chữ ký mà không cho giả m ạo chữ ký Đ e đảm bảo hiệu lực của chữ ký, kèm theo sơ đồ chừ kv còn có giao thức kiểm thử và giao thức chổi bỏ Thay vì phải ký trên toàn bộ vãn bản như trước đây, ngày nay người ta chỉ ký trên "đại điện’’ Các thuật toán mã hoá công khai điển hình hiện nay là R SA , ELG AM AL, D SS
2.3.2.2 Chữ ký số RSA
Sor đồ p = A = Zn
• Chọn p, q là 2 sổ nsuyên tố lớn
Tính rì ” p * q , ệ(n) = (p - l)(q - ỉ)
Chọn b là sổ nguyên tố eùns nhau với ệ(n )
Tính a là phần từ nghịch đảo của b theo modộ(n)
Trang 27Luận ván Thạc sv: Bào »lật băng các kỹ thuật mã hơìí và giấu tin
Ver(x, y, ô) = True <=> py.yô = e x
2.3.2.4 Chừ ký sổ DSS (Digital Signature Standard)
Trang 28Luận vởn Thục sỹ: Bão mật hằng các kỹ thuật »iă hoá và giấu tin
2.3.3 K hái niệm về phân phối khóa
Phân phôi khoá được hiểu là một cơ chế của nhóm người dùng, chọn khoả mật sau đỏ truyền nó đến các nhóm khác.
Sơ đồ BLOM bào đàm truyền khoá cho k + 1 nsười sử dụns, mỗi cặp người dùng (U ,V ) có 1 khoá chuna mà bất kỳ nhóm k người dùng không thuộc (Ư ,V) thì khôni: cỏ khả năng ùm ra khoá của (U,V).
Sơ đồ BLOM với k=l
B 1: Mỗi nạười dùns u chọn 1 số nguyên tố p, ỉ sổ ru (cà 2 đều công khai)
B2: Một Trung tâm (TT) có nhiệm vụ phân phổi khoá, thực hiện
- Chọn 3 sổ nsẫu nhiên a, b, c s Zp (cả 3 đều bí mật)
- Lập đa thức f(x,y) = a + b(x+y) + c(x.y) mod p (côno khai)
B3: Với mồi người dùne, TT tính:
Gu(x) = [a + b(x + ru) f cx.ru] mod p = [a + b.m] mod p + [b + c.ru mođ p ] X
= au + bu.x.mod p B4: Người duna u , V cần liên lạc với nhau, họ tính khoá chuñe như sau:
Trang 29Luận văn Thạc sỹ: Bão mật bằng các kỹ tliuật mã hoá và giấu tin
B2: TT chọn khoá bí mật a = 8, b = 7 , c = 2
f(x,y) - 8 + 7(x + y) + 2x.y mod 17
B3: TT tính G u(x) = f(x.ru) m od p - 8 + 7(x +12) + 2x 12 mođ 17
= 7 T 14 X mod 17 TT chuyển cho u
TT tính G v(x) = f(x,rv) mod p = 8 + 7(x +7) + 2x 7 mod 17
= 6 + 4 x mod 17 —» TT chuvển cho V B4: ư , V liên lạc với nhau để tìm khoá chung
u tính au(rv) = 7 + I4.rv mod 17 = 7-5-14.7 mod 1 7 = 3
V tính av(rv) = 6 + 4 ru mod 17 = 6 -T 4.12 mod 1 7 = 3
ĐL: Sơ đồ BLOM với k — 1 lả an toàn khôns điều kiện trước bất kỳ người đùng thứ 3 nào.
CM: Giả sử có người dùns w muốn tỉm khoá mật cùa (U ,V ).
N aười dim s w chọn rvv = 1 và phải tính kuv = a + b(ru + rv) + c.ru.rv mod p Với p, ru, rv đã biết (công khai) ; a, b, c chưa biết (bí mật).
N so à i ra w còn biết aw = a + b.rvv mod p {1 )
bvv = b + c.rw mod p (2) Với (1), (2) khôna thể tính được a, b, c (2 phương trình, 3 ẩn số) khône tìm được kuv
ĐL: 2 người dùng tuỳ ý bất kỳ liên rrũnh với nhau thì có thể tìm ra khoá mật của (U, V ) theo sơ đồ BLOM với k = 1.
CM: vì khi liên minh (W , X) có:
Trang 30Luận vãn Thạc sỳ: Bão một bằng các kv (huật mã hoá và giấu tin
/ 2.3.4 T hoả th uận khoả (trao đổi khoá)
Là giao thức để 2 (hoặc 2 nhóm) người liên kết với nhau, thiết lập khoá chung
bí mật trên kênh cồng khai.
Sơ đồ DIFFIE - HELLMAN
B 1: Naười dùnsL Ư chọn ngẫu nhiên au e z p - l (bí mật), tinh:
bu = s°" m ° d p -» gửi cho người dùng V B2: Naười dùng V chọn ngẫu nhiên av 6 z p - l (bí mật), tính:
6y ~ ễ rnod p gùi cho nsười dùng Ư
B3: V nhập được bu, tính khoá chuns:
Ku = b„a" mocl p = s a““" m o d p
u nhập được bv, tính khoá chung:
kvu = ố / ’ mod p = g ữ"a' mod p
Hạn chế: trên đường truyền giữa (U ,V ), có w xâm nhập, lẩy được thông tin của (Ư,V) theo cách w truyền khoá 2Ĩả (cho U ,V ), theo hình vẽ:
ỈV - È —>V
Ị J <rJ8L— W <-*'r - V
Cãi tiến: để loại w, cần quâ trung tâm (TT :giữ vai trò chứng thực chữ ký)
C (ư ) = ỈD (U ), V eni, SigTT(ID(U), Veru))
ID(U): định danh của u Ver: thuật toán kiểm tra chừ ký SigTT: chừ ký của TT
Trang 31i.mm văn Thạc sỹ: Báo mật bằng các kỹ (hiiiìt mã hoá và giấu tin
3„l.T ổng quát v ề giấu thông tin (S teganograph y)
Na ày nay do nhu câu trao đổi thôn« tin mật với nhau neảy càns trở nên cấp thiết, son s sona với v iệc bảo mậl thông tin bans các phươno pháp mã hoá thông tin; còn có rất nhiều côns trình nghiên cứu về các thuật toán aiấu đữ liệu vào trong môi trườns, vỏ còn gọi là phương tiện chứa, sử dụng các thuật toán từ đơn giản đển thuật toán dùns các kỹ thuật hiện đại.
Giâu dữ liệu trons một ành băna cách sửa đôi những màu gan như khống đáns
đe V bời mat của con nsười Khi mộl thôns tin được «iấu vào trong ảnh, chia thông tin thành nhiều phan nhỏ và giấu mỗi phần của thônạ tin vào trons một vùng của ảnh; nhừno vùng ảnh được chọn để cất siữ mỗi bộ phận của thông tin được tính toán với mật khâu cho trước Khi khôi phục một thông; tin, cùng với sự tính toán đó đựa trên mật khầu để biết được vùng nào chứa đựng mồi bộ phận của th on s tin, đế trích ra bản tin Khi khôi phục thông tin phải eiau trong ảnh, nếu sử dụng mật khẩu sai thi sẽ không tìm thay bất cử diều sì ở đó.
Khi một thông tin được siấu trorm một ảnh, mà ảnh đã có ÊÚấu thông tin khác trước đó, thôns tin mới có thê được viết chôna lên những vùns đữ liệu trước đây được cất aiừ Như vậy thông tín củ sẽ bị xoá bò hoặc hư hòng,
Liru ỷ ràng, khi giấu thông tin cỏ kích thước càng lớn thì ảnh cần có kích thước càng lớn dể giấu thônă tin Neu giấu một thôna tin quá lớn, thì sẽ có nhiều "'đấu hiệu” trôna ánh dễ dàna sây sự chú V mặc dù khôns thể xem được thật sự nhũnsỉ gì đã che siấu trona nó Giấu thòng tin trona ánh cần phải đạt được các mục đích sau:
Trang 32Luận vàn Thạc sỹ: Bào mạt bằng các kv thuật mã lioá và gíáu tin
- Khôna lảm giảm chất lượn" ảnh môi trường đáng kể khi kích thước thôna tin siấu đạt dược đủ lớn.
- Cần phải tối ưu về thời gian cho các thao tác nhúng thông tin vào trong ành cùna như trích thỏns tin từ ảnh.
- Hạn chế tối đa khả năna truy cập bất hợp pháp của những người cổ tình truy cập thõns tin nhằm đạt được yêu cầu tối thiểu và bảo vệ thône tin mật,
3.1.1 Đ ịnh nghĩa
giấu (hông tin là kv thuật nhúng thõng [in vào (rong mội môi trường (phương tiện chửa), mà không làm thay đói hình dạng, tính chất, kích thước của phương tiện chửa, cũng như không %ảy ra sự nhận biết bằng càm nhận giác quan của con người về
sự tồn tại thông tin đang giấu trong phương tiện chứa Người nhận sẽ nhận được phương tiện chửa có giấu thông tin trong đó và dùng công cụ thích hợp trích được thông tin chính xác từ đó,
C ône vệc eiấu thông tin tron í môi trườna chính là giả quyểt vần đề được khái quát dưới dạna bài toán sau:
3 1 2 Bài toán
Gợi R là bản tin, E môi trường để giấu thông tin D ùns khoá K = (Fh, Fr) trong
đỏ Fh là hàm giấu thông tin, Fr là hàm trích thông tin,
Giấu bản tín R vào E, ta được E' - Fh(R,E,K), sao cho E' ss E (càng ít sai khác càng tốt), trons đó K lả khoá bí mật.
N sư ời nhận sỗ nhận dược E’ và khoá K từ người gởi Để trích ra thông tin đã giấu R = F r(E \K ) = Fr(Fh(R,E,K),K) từ môi trường E’ và khoá K.
\ /'!!): PÙS-TSKH A’¡Ịtiyjn Xtuỉn Huy 31 NTH: Dinh ,\’gọc Triều
Trang 33Ị,nặn vãn Thạc sỳ‘ Bào mật băng các kv thuật mã hoá và giấu tin
3 1 3 MÔ hình giấu th ô n g tin trong môi trường
Hình 3 ỉ : Mớ hình giấu thông tin trong môi trường
3.2.C ác khái niệm cơ bản
Luận văn này nahiên cứu việc dùns; môi trường ảnh để aiấu thông tin, ảnh thu dược sau quá trình số hoá để biểu diễn trong bộ nhớ máy tính, có nhiều loại ành khác nhau phụ thuộc vào kỹ thuật số hoá ảnh, trong thực tế ảnh lưu trữ trona máy tính dạng tập tin nhị phân Dưới dây sẽ trình bàv một sổ khái niệm có liên quan đen việc dùng ành đế ỉĩiau thôna tin.
3.2.1 Ành trăn g đen
Sau bước sổ hoá ảnh trắng đen là ành nhị phân có 1 bit màu, được xem như gôm các chuỗi bit 0 hav 1 đan xen, ủ n g với mỗi điểm đen hoặc trắng được quv định bằng ỉ bit, nếu bit man« siá trị ỉ biểu diễn cho điểm ảnh đen thì bít mane aiá trị 0 biểu diễn cho điềm ảnh trang.
Như vậy có thể dùne ma trận nhị phân là các phần tử có giá trị là 0 hoặc 1 đê biểu diễn một ành trắng đen.
Trang 34Luận vởn Thạc sỹ\ Bào m ật hang các kỹ thuật mã lioá và giấu tin
/ 3.2.2 Ảnh màu
Ảnh màu phụ thuộc vào kỹ thuật số hoá, nên hiện nay cỏ rất nhiều kiểu định dạns ảnh như là PCX, TIFF (Tarsed Imaee Fiỉe Fớrmat), GIF (Graphics Interchaneer Format) JPEG (Joint Photograph Expert Group), BMP, .
Kiểu định dạna ảnh BMP được đề xuất bời Microsoft Corporation, được lưu trữ dưới dạne độc lập thiết bị, tên tập tin cỏ phần mở rộne là BiMP Kiểu định đạng ảnh BMP là mỗi byte dừ liệu chứa chì số tới địa chỉ bảne màu, mỗi bảng màu dài 4 byte để Uru si á trị cùa mồi điềm màu ành được lun dưới đạns khôna nén Nhưng một sổ kiểu định dạna ảnh khác chẳng hạn như JPEG, GIF khi lưu có nén, nên quả trình đọc tập tin ảnh kèm theo siải nén ảnh.
3 2 3 M a trận khoá bí m ật
Là ma trận nhị phân K cấp (mxn) dùng tron a thuật toán giấu thông tin vào trons ành cùna như trona thuật toán trích thôna tin đã giấu từ trong ảnh Khoá này được I1Ü,ười sởi và 112ười nhận giữ bí mật.
vvi j có siá trị từ 1,2, 2r - 1 xuất hiện trons ma trận vv ít nhất một lần.
Khi đó r được aọi là trọne số cùa ma trận w.
Trang 35Luận vàn Thạc ỵỳ: Bào m ật bằng các kỹ thuật mã hoi» và «iiiu tin
3 2.5.H ệ sổ phân bố trên ma trận
Cho ma trận nhị phân M có cấp (m n) Gọi D là hệ sổ phân bổ trên ma trận M,
nó !à đại lượng đặc trưns cho mức độ phân bố giữa các bit 0 và bit 1 trên ma trân M, được tính theo côn s thức sau:
D = Dh + Dv + Da + Dì
Tronc đó:
Dh là hệ số phân bố theo chiều ngang trượt lần lượt theo từng d ò n s của ma trận
iM, kiểm tra phần từ đans xét với đứn° sau cùng, dòng nếu khác nhau tăna Dh lên 1.
Uh = Ĩ Í D « ,
1*1 ; = l
Dv là hệ số phân bổ theo cột trượt lần lượt theo từng cột cùa ma trận M, kiểm tra phần
tử đane xét với đứng sau cùna cột nếu khác nhau tăna D V lên 1.
J-Ì /«I
Da là hệ sổ phân bố theo hướng đường chéo chính của ma trận M, dùng ma trận con vuông cấp (2 2) cùa M, trượt lần lượt theo từng cột và từns đòng cùa ma trận M, kiểm tra hai phần tử trên đường chéo chính, nếu khác nhau tăng Da ỉên i ,
Trang 36ỉ.uận văn Thạc XV: Bào m ật báng các kv thuật mã hoá và giáu tin
Db là hệ sổ phân bổ theo hướng đường chéo phụ của ma trận M, dùng «na trận con vuôna cấp (2 » 2) của M, trượt lần lượt theo từna cột và tùng dòng của ma trận M, kiểm íra 2 phần tử trên đường chéo phụ, nếu khác nhau tăns Db lên ỉ
D b = È Ẽ H ^ * 1=2 '=l
Theo định nshía trên hệ số phân bổ D của ma trận M cấp (m • n) có 2Ỉá trị trên đoạn [0 ,((n -l)m + (m -l)n + 2 (n -l)(m -l))] N ếu D càng lớn thì mức độ phân bổ giữa các bít 0 và bit ! rời rạc đều nhau.
Vi dụ 2: Tinh hệ số phàn bổ của ma trận M sau;
3.2.6.C iíc phép toán trên ma trận
Trang 37Luân vùn Thạc sỹ: Biio mật bang các kỹ thuật mã hoá và giiíu tin
3 2 6 2 Định nshĩa 2:
Phép toán đảo bít ĩrên ma trận A = {ai j] là ma trận nhị phân cấp (m » n), là phép biến đổi tất cả các bit trên ma trận A như sau: nếu bít có giá trị 0 thành bit 1 và bít 1 thành bit 0.
Trang 38Luận văn Thục sỳ\ Bão mật bàng các kỹ thuật mã hoá và giấu tin
Trons đó cij = aij © bỉ ị (ị = và j - l,2 , ,n )
Ví dụ 5: cho hai ma trận A, B cùns cấp (2 3) và tích A © B như sau:
Trang 39l.uận văn Thạc sv: Bào mật bàng các kỹ thuật mã hoá và giấu tin
3.3.Một số thuật toán giấu thông tin trong ảnh
Giấu thôns tin trong ảnh ỉà một lãnh vực của bảo mật thông tin, và được nhiều neưài quan tàm nahiên cứu và phát triển, do đó có nhiều thuật toán và kv thuật siẩu thông tin.
3.3.1.Thuật toán giấu bit thông tin trong ma trận bit của ảnh hai màu
Hiện nay trên thị trường cắc ảnh hai màu đen trắng như các bản photocopy, Fax, ảnh trấns đ en dùna khá phổ biến Nên mõi trường ảnh hai màu dùng để giấu thông tin rất tiện lợi Do đó có nhiều tác giả đã quan tâm và nohiên cửu đề ra thuật toán giấu
1 bit thông tin trong ma trận khổi ảnh, trong đó các tác giả [15] đã nghiên cím và đề xuất thuật toán sỉấu các bit thông tin trons ảnh v ấ n đề được đặt ra nhtr sau:
Gọi R là bản tin biểu diễn dưới dạng dãy các bit 0,1.
E là ảnh biểu diễn dạng ma trận nhị phân, dùns lám môi trường để giâu thông tin R.
Dùng; ma trận nhị phân K cấp (m n), trượt lần lượt trên ma trận nhị phân E bằn s cách so sánh ma trận K với ma trận con Ei của E, để quyết định giấu từng bit trong bản tin R vào E ta được E \ trong đó K là khoá bí mật theo thuật toán sau Đ ể đơn siàn ta xem kích thước ma trận E là bội của kích thước ma trận K.
Naườs ta sẽ nhận được E’ và khoá K từ người sà i Người nhận dùng khoá K để trích bản tin R từ E \
Thuật loán
Input: Bân tin R = {bj}, ảnh E và khoá K.
Output: E' là ành E đâ siấu bàn tin R
XHD: pi ;s- TSKH A Ịiiyềit Xuân Huy 38 STH Dinh Vẹọc 7'rịcti
Trang 40Luận văn Thục vỹ: Bào một bàng các kỷ thuật mã hoá và giấu tin
// Giấu i bìt vào khối Ei
I f (SUM (Ei A K) mod 2 = bj) then
Giữ nguyên Ei Else
ỉ f (SƯM(Ei A K) = 1)
Chọn ngẫu nhiên phần tử thứ (u,v) của Ei Sao cho: [K](u>v) = 1 và [Ei](U.v) = 0,
Gán [E;](u.v) := ỉ Eỉse
If (SƯM(Ei A K) » SUM (K) - 1) then
Chọn ngẫu nhiên phần tử thứ (u,v) của Ei Sao cho: ÍK](u,v)= ỉ và [Ei](u>v)= 1,
Gán [Ei](UiV) := 0 Else
Chọn ngẫu nhiên phần tử thứ (u,v) của Ei Sao cho: [K](u-V) = l,
End if End if
End if
j : = j + l Else
SHD PGS-TSKH Xuữti Uuy 39 STtl: Đmh \ịĩ<k Ti-iẻu