GIáo trình truyền dữ liêu part 3 pdf

22 366 0
GIáo trình truyền dữ liêu part 3 pdf

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Bắt ñầu Bước 1 Bước 2 Bước 3 Bước 4 Bước 5 Bước 6 Bước 7 Bước 8 Bước 9 Bước 10 Bước 11 Bước 12 Bước 13 Bước 14 Bước 15 0 0 0 0 0 1* 1 0 1 0 1 0 1 1 0 0 0 0 0 0 1 0* 1 1 1 1 1 1 0 1 0 1 0 0 0 1 0 1 1 1 1 1 1 0 1 0 1 1 0 0 1 0 1 0* 0 1 0 1 1 1 1 0 1 1 0 1 0 1 0 0 1 0 1 1 1 1 0 1 1 0 1 0 1 0 0 0* Bản tin ảo gửi 1 1 0 1 0 0 0 5 bit 0 thêm vào 0 0 41444444424444443 số dư - Trong thí dụ trên P =110101 = x 5 + x 4 + x 2 + 1, nên mạch chứa ba cổng EX-OR ở các vị trí tương ứng với 1, x 2 và x 4 (x 5 ứng với thanh ghi dịch cuối cùng FFA). Ðường hồi tiếp từ x 5 về x 4 , x 2 và 1 (x 0 ) ñể thực hiện phép cộng Mod-2 với số P(x) như nói trên. - Trong 5 bước ñầu tiên, các bit có trọng số lớn của M(x). 2 n xuất hiện ở ngã ra các FFD một cách bình thường. - Từ bước thứ 6 các kết quả phải kể ñến tác dụng của cổng EX-OR, thí dụ ở bước thứ 6 ở ngõ ra E chính là cộng Mod-2 của tín hiệu vào (bit 0) và tín hiệu ngã ra A trước ñó (bit 1), tức thực hiện EX-OR hai bít 0 và 1 ta ñược bit 1. Ngã ra D (bit 0) EX-OR với ngã ra A (bit 1) ñể ñược bit 1 ở ngã ra C. Ngã ra B(bit 0) EX-OR với ngã ra A (bit 1) ñể ñược bit 1 ở ngã ra A. Trên hình vẽ các bit EX-OR với bit ở ngã ra A ñược ñánh dấu. Tương tự như thế, sau15 lần dịch (bước 15), dữ liệu ở ngã ra các FF chính là mã CRC (số dư R = 01110). Ngã ra A là MSB. Có 4 da thức P(x) ñược dùng ñể tạo mê CRC thông dụng: CRC_12 = x 12 +x 11 + x 3 + x 2 + x + 1 CRC_16 = x 16 +x 15 + x 2 + 1 CRC_CCITT = x 16 +x 12 + x 5 + 1 CRC_32 = x 32 + x 26 + x 23 + x 22 + x 16 + x 12 + x 11 + x 10 + x 8 + x 7 + x 5 + x 4 + x 2 + x +1 CRC_12 dùng truyền với ký tự 6 bit và khung FCS dài 12 bit. CRC_16 & CRC_CCITT dùng truyền ký tự 8 bit và khung FCS dài 16 bit. (ở Mỹ và Âu châu). CRC_32 Dùng trong mạng cục bộ (LAN) và một số ứng dụng của DOD (Department Of Defense). 3.2.3 Mã Hamming : Mã Hamming là một bước phát triển của kiểm tra chẵn lẻ và có khả năng sửa sai do xác ñịnh ñược vị trí lỗi. Số lượng bít của mã Hamming tùy thuộc số lượng bít của chuỗi dữ liệu. Ta có thể lý luận như sau ñể xác ñịnh số lượng bít của mã Hamming. Gọi m là số bít của chuỗi dữ liệu và n là số bít của mã Hamming, tổng số bít phát ñi là m+n - Với n = 1 ta xác ñịnh ñược 1 trong 2 kết quả : chuỗi dữ liệu sai hoặc ñúng nhưng không biết vị trí lỗi. - Với n = 2, 1 trong 4 trường hợp xảy ra: 2 phép kiểm tra ñều cho kết quả ñúng, 2 phép kiểm tra ñều cho kết quả sai, phép kiểm tra thứ nhất sai, phép kiểm tra thứ hai ñúng và ngược lại. 4 trường hợp này cho phép kết luận ñược 1 bít sai ở 1 trong 3 vị trí. - Với n=3, có 8 khả năng xảy ra và ta có thể kết luận ñược 1 bít sai ở 1 trong 7 vị trí. - Với số n bất kỳ, có 2 n khả năng xảy ra và ta có thể kết luận ñược 1 bít sai ở 1 trong 2 n -1 vị trí. Vậy ñể có thể phát hiện 1 lỗi tại 1 vị trí cụ thể thì số n nhỏ nhất ñược chọn phải thỏa: 2 n - 1 ≥ ≥≥ ≥ m + n hay 2 n ≥ ≥≥ ≥ m + n + 1 Các bít của mã Hamming chèn vào vị trí 2 n và dùng cho kiểm tra chẵn lẻ. Các bít khác là bít thông tin (dữ liệu). Dưới ñây là một ví dụ ñể thấy cách xác ñịnh mã Hamming: Giả sử chuỗi dữ liệu cần truyền gồm 4 bít như sau : 1 0 1 0 Với m = 4 , ta chọn n = 3, bất ñẳng thức trên ñược thỏa Gọi các bít của mã Hamming là H 1 H 2 và H 4 (1, 2, 4 là các vị trí mà ta sẽ ñặt 3 bít của mã Hamming vào dòng dữ liệu). Gọi các bít dòng dữ liệu là X 3 , X 5 , X 6 , X 7 . Tổ hợp các bít dữ liệu và bít mã, ta ñươc 1 2 3 4 5 6 7 H 1 H 2 X 3 H 4 X 5 X 6 X 7 Giả sử ta chọn Parity chẵn, các bít mã sẽ ñược xác ñịnh như sau: H 1 ⊕ X 3 ⊕ X 5 ⊕ X 7 = 0 H 1 =X 3 ⊕ X 5 ⊕ X 7 = 1 ⊕ ( 0 ⊕ 0 ) = 1 ⊕ 0 = 1 Tương tự: H 2 = X 3 ⊕ X 6 ⊕ X 7 = 1 ⊕ ( 1 ⊕ 0 ) = 1 ⊕ 1 = 0 H 4 = X 5 ⊕ X 6 ⊕ X 7 =0 ⊕ ( 1 ⊕ 0 ) = 0 ⊕ 1 Bản tin bao gồm bít mã trở thành: 1 0 1 1 0 1 0 Ở máy thu ñể kiểm tra người ta thực hiện các phép toán: C 1 = H 1 ⊕ X 3 ⊕ X 5 ⊕ X 7 C 2 = H 2 ⊕ X 3 ⊕ X 6 ⊕ X 7 C 4 = H 4 ⊕ X 5 ⊕ X 6 ⊕ X 7 Nếu C 1 =C 2 =C 4 =0, không có lỗi xảy ra Nếu C 1 = 1, C 2 = C 4 = 0, một trong các bít 1, 3, 5, 7 bị lỗi. Nhưng C 2 = C 4 = 0 có nghĩa là các bít 2, 3, 6, 7 và 4, 5, 6, 7 ñã ñúng. Vậy bít sai phải là bít 1 Lý luận tương tự ta có các trường hợp khác. Thí dụ nếu C 1 = C 2 = C 4 = 1 thì bít lỗi là bít 7 Thí dụ bản tin nhận ñược là 1 0 1 1 1 1 0 Mạch dò sai sẽ tính C 1 , C 2 , C 4 như sau: C 1 = H 1 ⊕ X 3 ⊕ X 5 ⊕ X 7 = 1 ⊕ 1 ⊕ 1 ⊕ 0=1 C 2 = H 2 ⊕ X 3 ⊕ X 6 ⊕ X 7 = 0 ⊕ 1 ⊕ 1 ⊕ 0=0 C 4 = H 4 ⊕ X 5 ⊕ X 6 ⊕ X 7 = 1 ⊕ 1 ⊕ 1 ⊕ 0=1 Vì chỉ bít X 5 thuộc cả C 1 và C 4 nên bít sai là bít thứ 5 Quan sát tổ hợp C 4 C 2 C 1 ta thấy C 4 C 2 C 1 = 101 = (5) 10 . Như vậy giá trị có ñược của tổ hợp này cho ta biết vị trí bít sai cần sửa chữa. Nếu tổ hợp này bằng 0 chứng tỏ bản tin nhận ñúng. Mã Hamming có thể ñược phát triển ñể dò ra hai bít sai và sửa ñược một bit lỗi. 3.3 MÃ NÉN DỮ LIỆU : Một vấn ñề cũng luôn ñược quan tâm trong truyền dữ liệu là làm thế nào ñể giảm thiểu số bít cần thiết ñể truyền một bản tin. - Như ta ñã biết, phương pháp ñiều chế vi phân, ngoài tác dụng tốt về mặt ñồng bộ còn có tác dụng giảm số bít ñi rất nhiều nếu thông tin có tính lặp lại. - Một phương pháp khác là mã hóa Run Length. Phương pháp này cho phép người ta phát ñi các mã thay cho các chuỗi ký tự có tính lặp lại kèm theo mã ñiều khiển báo cho bên thu số lần lặp lại, nhờ mã này mà bên thu có thể tạo lại toàn bộ chuỗi thông tin ñã truyền. - Mã ñồ họa trong hệ thống Videotex dùng một bảng mã hình học ñể phát ñi các ñồ họa của máy tính hoặc hình ảnh video. Mỗi hình ñược phát ñi là tập hợp các hình cơ bản với vị trí, màu sắc và kích thước xác ñịnh. Các hình cơ bản là các vòng tròn, hình chữ nhật Ðiều này làm giảm rất nhiều số bít cần thiết so với việc phải phát ñi từng tọa ñộ và màu của từng ñiểm trên màn hình. 3.3.1 Mã Huffman. 3.3.2 Mã Run length. 3.3.3 Mã vi phân. 3.3.1 Mã Huffman : Mã Huffman lợi dụng xác suất xảy ra của các ký tự khác nhau mà gán các từ mã ngắn cho các ký tự có xác suất xảy ra lớn và ngược lại. Thí dụ, thay vì dùng 7 bít ñể mã tất cả các ký tự như mã ASCII, người ta chỉ gán 2 bít cho chữ E và 10 bít cho chữ Z, bởi lẻ, trong tiếng Anh xác suất xuất hiện chữ E rất lớn so với xác suất xuất hiện chữ Z. Mã này còn có tên Mã phụ thuộc tần số (frequency dependent code) Với phương pháp này số bít trung bình dùng cho mỗi ký tự sẽ giảm. Nhưng do các mã dài ngắn khác nhau, ñể máy thu phân biệt ñược, người ta phải chọn các từ mã ngắn sao cho không trùng với các bít ñầu của các từ mã dài hơn. Gọi là tính tiền tố (prefix property). Giải thuật Huffman: Dưới ñây là các bước tạo mã Huffman - Tương ứng với mỗi dữ kiện liên kết một cây nhị phân chứa duy nhất một nút. Ở mỗi cây ghi tần số xuất hiện mà ta gọi là trọng lượng của cây. - Tìm hai cây nhẹ nhất. Nếu có nhiều hơn hai, ta chọn ngẫu nhiên hai cây trong số các cây có trọng lượng nhẹ nhất, ghép chúng lại thành một cây ñơn với nút gốc mới. Tổng trọng lượng hai cây này là trọng lượng của cây mới. - Lặp lại các bước cho tới lúc chỉ còn một cây duy nhất. Các cây ban ñầu trở thành các lá của cây nhị phân cuối cùng này. Ta biết rằng ñối với cây nhị phân thì chỉ có một ñường duy nhất từ gốc cho tới lá. Với mỗi lá, ñường từ gốc ñến nó chính là mã Huffman tương ứng. Mã này xác ñịnh bằng cách ghi trị 0 cho nhánh bên trái và 1 cho nhánh bên phải (hoặc ngược lại). Thí dụ 1: Thiết lập mã Huffman cho các ký tự A, B, C, D, E với tần số xuất hiện lần lượt là 0,25; 0,15; 0,10; 0,20; 0,30. (H 3.3a) là cây với 5 nút ñơn ban ñầu và trọng lượng tương ứng. (H 3.3b) ghép 2 cây B và C thành một cây mới với trọng lượng là tổng trọng lượng cây B và C (0,25) Bước tiếp theo ta có thể ghép cây mới hình thành với cây D hay cây A với D. (H 3.3c) ghép cây mới với D ñể ñược một cây trọng lượng là 0,45. (H 3.3d) ghép cây E và A Cuối cùng, ghép hai cây mới tạo ñể ñược một cây duy nhất, Ghi trị 0 và 1 vào các nhánh (H 3.3e). (H3.3) Ta ñược bảng mã sau: Ký tự Mã A B C D E 01 110 111 10 00 Chiều dài trung bình của từ mã có thể tính như sau: 0,25*2 + 0,15*3 + 0,10*3 + 0,20*2 + 0,30*2 = 2,25 bít/ký tự Do có sự chọn ngẫu nhiên khi các dữ kiện có cùng trọng lượng nên kết quả có thể cho các bảng mã khác nhau. Tuy nhiên, kết quả cuối cùng của các bộ mã khác nhau phải cho cùng chiều dài trung bình của từ mã. Thí dụ 2: Mã hoá giá trị nhiệt ñộ trong khoảng từ 20°C ñến 30°C với xác suất cho trong (H 3.4). Thay vì thực hiện các cây nhị phân như trên, ta có thể dựa vào xác suất của các giá trị nhiệt ñộ mà lập một ñồ họa ñể thực hiện việc mã hóa sao cho các giá trị có xác suất lớn sẽ dùng từ mã ngắn nhất có thể có. Các sự kiện (là các giá trị nhiệt ñộ) ñược liệt kê theo xác suất giảm dần (H 3.4a) Ta bắt ñầu bằng cách gán hai bít 0 và 1 cho 2 sự kiện có khả năng xảy ra ít nhất, sau ñó hai sự kiện này ñược tổ hợp thành một sự kiện có xác suất bằng tổng hai xác suất của hai sự kiện ñó, các sự kiện ñược sắp xếp theo thứ tự giảm dần và thủ tục lặp lại từ dưới lên và từ trái sang phải cho ñến khi hai sự kiện cuối cùng ñược kết hợp. Từ mã của các sự kiện ñược viết bằng cách dò theo các ñường của sơ ñồ theo chiều ngược lại, từ phải qua trái. Cuối cùng ta có bảng mã (H 3.4b) Từ mã trung bình: 0,21*2 + 0,17*3 + 0,15*3 + 0,12*3 + 0,1*3 + 0,06*4 + 0,05*4 + 0,04*5 + 0,03*6 + 0,02*6 =3,18 bít/sự kiện Số bít dùng mã hóa ñã giảm khoảng 20%. Một ưu thế của phương pháp Huffman là có thể lập trình ñể thực hiện việc mã hóa. Trở lại Thí dụ 1, bây giờ giả sử chuỗi ký tự ñược phát ñi là A B E C A D B C, tương ứng với chuỗi bít 01110001110110110111, máy thu khi nhận ñược chuỗi dữ liệu sẽ thực hiện việc giải mã như thế nào ? Nhờ vào tính tiền tố của các mã, máy thu sẽ lần lượt ñọc các bít cho tới khi gặp một chuỗi con các bít tương ứng với một mã sẽ dừng lại, giải mã ký tự này, sau ñó tiếp tục ñọc chuỗi dữ liệu kế tiếp ñể tìm ra ký tự thứ hai. . . (a) (H3.4) (b) 3.3.2 Mã Run length : Mã Huffman tuy có làm giảm số bít truyền ñi nhưng nó ñòi hỏi dữ liệu phải ñược tập hợp thành từng nhóm hay ký tự ñể xác ñịnh tần số lặp lại của các nhóm hay ký tự này. Việc này ñôi khi rất khó thực hiện ñối với một số loại dữ liệu thí dụ như dữ liệu từ một bản fax, tín hiệu mã hình ảnh . . . Lấy thí dụ trường hợp bản fax, dữ liệu ñược phát ñi không phải là các ký tự mà là các bít tương ứng với ñiểm sáng tối trên tờ giấy, như vậy phải có một kỹ thuật phù hợp ñể nén chuỗi dữ liệu này, ñó chính là mã Run length. Mã Run length ñược tạo ra bằng cách quan sát chuỗi bit 0 (hoặc 1) liên tiếp và thay thế chiều dài chuỗi bít này bởi một số nhị phân. Ở máy thu khi nhận ñược các số nhị phân sẽ thay các số này bởi các bít 0 (hoặc 1) ñồng thời chèn các bít khác loại vào. Thí dụ ta phải tạo mã Run length cho chuỗi dữ liệu sau bằng cách dùng số 4 bít thay cho số bit 0 liên tiếp: Dòng dữ liệu 0 . . . 0 1 0 . . . 0 1 1 0 . . . 0 1 0 . . . 0 1 1 0 . . . 0 91 bít Số bít 0 liên tiếp 14 9 20 30 11 Run length (nhị phân) 1110 1001 0000 1111 0101 1111 1111 0000 0000 1011 40 bít Run length (thập phân) 14 9 0 15 5 15 15 0 0 11 Nhận xét cách tạo mã : - 1 bít 1 giữa các chuỗi bít 0 sẽ không ñược mã, máy thu tự ñộng chèn bít 1 này vào khi phục hồi dữ liệu. - Nếu có 2 bít 1 liên tiếp, ta xem như có 1 chuỗi gồm không bít 0 giữa 2 bít 1 này và phải ñược thay thế bởi số 0000. - Nếu số số 0 nhiều hơn 15 ta phải dùng 2 số nhị phân thay cho chuỗi này (20=15+5; 30=15+15). Ở máy thu khi gặp chuỗi bốn bít 1 nó phải hiểu là phải lấy tổng số này với các số phía sau, nếu số sau cùng cũng gồm 4 bít 1, máy thu phải ñược báo bằng chuỗi 4 bít 0 theo sau (trường hợp sau số 30) - Nếu chuỗi dữ liệu bắt ñầu bằng bit 1 thì máy phát sẽ gửi ñi 4 bít 0 ñầu tiên. Kỹ thuật nén này chỉ có hiệu quả khi chuỗi dữ liệu chứa rất nhiều một loại bit. Ngoài ra, kỹ thuật nén Run length cũng ñược dùng mã hóa các chuỗi ký tự giống nhau bằng cách thay mỗi chuỗi ký tự liên tiếp bằng con số chỉ ñộ dài ñứng trước ký tự ñó. Thí dụ, với chuỗi HHHHHFFFFFFFFYYYYYYYYYYYYYGGGGGGGGGG Sẽ có mã là: 5H8F13Y10G 3.3.3 Mã vi phân (Differential encoding) : Còn gọi là mã tương ñối (Relative encoding) Trong nhiều trường hợp, các dữ liệu liên tiếp nhau thay ñổi rất ít . Thí dụ trường hợp mã tín hiệu hình ảnh trong kỹ thuật video, do phải xử lý 30 bán ảnh (khung) trong một giây ñể tạo ảnh ñộng, nên chi tiết của các ảnh không khác nhau bao nhiêu, thay vì phải nén tín hiệu từng khung người ta nghĩ tới việc xác ñịnh sự khác nhau của các khung liên tiếp, mã thông tin này và gửi ñi. Nguyên tắc của mã vi phân như sau: khung thứ nhất ñược phát ñi ñồng thời lưu ở bộ ñệm của máy phát và thu. Máy phát sẽ so sánh khung thứ hai với khung thứ nhất này, mã sự khác biệt và phát ñi dưới dạng một khung. Máy thu khi nhận khung thứ hai, nhờ các mã chỉ sự khác biệt mà so sánh với khung thứ nhất (ñã lưu trước ñó) ñể tái tạo khung thứ hai, ñồng thời nó lưu khung thứ hai này trong bộ ñệm và quá trình tiếp tục với các khung mới. (H 3.5) là một thí dụ minh họa. 5 7 6 2 8 6 6 3 5 6 6 5 7 5 5 6 3 2 4 7 8 4 6 8 5 6 4 8 8 5 5 1 2 9 8 6 5 5 6 6 5 5 2 9 9 6 8 9 5 1 Khung thứ nhất 5 7 6 2 8 6 6 3 5 6 6 5 7 6 5 6 3 2 3 7 8 4 6 8 5 6 4 8 8 5 5 1 3 9 8 6 5 5 7 6 5 5 2 9 9 6 8 9 5 1 Khung thứ nhì 5 7 6 2 8 6 6 3 5 6 6 5 8 5 5 6 3 3 3 7 8 4 6 8 5 6 4 8 8 5 5 1 3 9 7 6 5 5 8 6 5 5 2 9 9 6 8 9 5 1 Khung thứ ba 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 Khung phát ñi là sai biệt giữa khung thứ nhì và khung thứ nhất 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 Khung phát ñi là sai biệt giữa khung thứ ba và khung thứ nhì (H 3.5) Dữ liệu gồm các số nguyên ñược biểu diễn trong một khung 2 chiều, chúng không mang một ý nghĩa cụ thể nào, mục ñích của thí dụ là ñể hiểu cách tạo mã. Khung thứ nhất chứa một tập hợp các số nguyên và khung thứ hai chứa một tập hợp các số nguyên khác khung thứ nhất một ít. Trong hình, các khung nằm dưới khung thứ hai và thứ ba là khung chứa các mã vi phân, số 0 chỉ không có sự khác biệt dữ liệu của 2 khung, số1chỉ dữ liệu khung sau lớn hơn khung trước 1 ñơn vị và số -1 chỉ ngược lại. Dĩ nhiên có thể sử dụng các số khác hơn là 1 và -1. Thí dụ cho ta thấy sự xuất hiện một chuỗi dài các bít 0 và có thể ñược nén nhờ phương pháp Run length. 3.4 MẬT MÃ : Trong nhiều trường hợp, bản tin cần ñược giữ bí mật ñối với ñệ tam nhân thì việc mã hóa ñược thực hiện dưới dạng mật: bản tin ñược mã bởi một khóa mà chỉ hai người liên hệ trong trao ñổi thông tin biết ñể sử dụng khi mã hóa và giải mã. Gọi bản tin ban ñầu là P (Plaintext), bản tin ñã cài mật mã là C (Ciphertext) thì C = E k (P), E và k là giải thuật và khóa tạo mã ( Algorithm & Encryption key). Nơi nhận, nhận bản tin C và phục hồi lại P với giải thuật và khóa là D và k’ : P =D k’ (C) = D k’ E k (P). Trong ña số trường hợp (nhưng không phải luôn luôn) k=k’. Giải thuật và khóa càng phức tạp thì ñộ an toàn của bản tin càng cao. Chúng ta sẽ xét một số cách tạo mật mã từ ñơn giản ñến phức tạp. 3.4.1.Mã Caesar 3.4.2. Mã ña mẫu tự. 3.4.3. Mã chuyển vị. 3.4.4. Mã DES. 3.4.1. Mã Caesar (Caesar cipher) : Còn gọi là mã mẫu tự ñơn (mono-alphabetic cipher) Ðây là loại mật mã có sớm nhất và ñơn giản nhất. Người ta sẽ thay các ký tự của bản tin bằng các ký tự khác theo một qui luật nào ñó, thí dụ bằng cách cộng một số nguyên vào mã ASCII của các ký tự ta sẽ có một bản tin mật. Thí dụ cộng 1 vào mã ASCII ta sẽ có ký tự B thay cho A, C thay cho B . . . . Và nơi nhận sẽ giải mã bằng cách trừ 1 cho các mã nhận ñược trước khi tra bảng mã ASCII. Vì giải thuật tạo mã quá ñơn giản nên bản tin có thể ñược giải mã một cách dễ dàng mà không cần biết trước khóa. Thí dụ, trong tiếng Anh, các ký tự E, T, O và N là các ký tự thường xuất hiện nhiều lần trong các văn bản nên khi gặp bản mã người ta có thể thay các ký tự lặp lại nhiều lần bằng các ký tự này. Sau vài thử nghiệm có thể thấy ñược qui luật và suy ra bản tin. Ðể minh họa, giả sử một người nhận ñược bản tin sau: {;RSDR\SFF\,PMRU \YP\,U \NSML \ SVVPIMY \ $234567890 Trước nhất người ta liệt kê các ký tự thường xảy ra : \ (7 lần), S (4 lần), R, P và M (3 lần), như vậy người ta có thể thay thử các ký tự S, R, P, M bởi E, T, O, A và N (in ñậm): {;EADE \AFF \,ONEU \YO \,U \NANL \AVVOINY \$234567890 Tiếp tục, người ta có thể nghĩ là trong một văn bản luôn có các khoảng trống, như vậy thử thay các dấu \ bằng các khoảng trống, bản tin thành {;EADE AFF ,ONEU YO ,U NANL AVVOINY $234567890 Nhận xét tiếp các từ chứa ít ký tự như AFF và YO, trong tiếng Anh, từ 3 ký tự mà hai ký tự sau giống nhau khiến ta nghĩ ñến từ ADD và từ 2 ký tự kết thúc bằng O khiến ta nghĩ tới từ TO. Thay vào ta lại ñược bản tin: {;EADE ADD ,ONEU TO ,U NANL AVVOINY $234567890 Cho tới ñây, dường như ta ñã ñi ñược một ñoạn ñường khá dài ñể sắp tới ñích, thêm vài lần thử người ta có thể tìm ra bản tin. PLEASE ADD MONEY TO MY BANK ACCOUNT #123456789 Một phương pháp khác ñể tạo mã mẫu tự ñơn có tên là Polybius square. Mẫu tự I và J ñược kết hợp lại và ñược xử lý như một từ ñơn, ñể tổng số mẫu tự là 25. 25 mẫu tự lại ñược chia thành dãy 5x5. Mỗi mẫu tự sẽ ñược mã bởi một cặp số tương ứng với hàng và cột trong bảng mã 1 2 3 4 5 1 2 3 4 5 A F L Q V B G M R W C H N S X D IJ O T Y E K P U Z Thí dụ bản văn N O W I S T H E T I M E 33 43 25 42 34 44 32 51 44 42 23 51 3.4.2. Mã ña mẫu tự (Poly-alphabetic cipher) : Ðể tránh việc lặp lại các ký tự trong bản mật mã, người ta dùng loại mã ña mẫu tự, tương tự mã Caesar, mỗi ký tự cũng ñược thay bởi một ký tự khác, nhưng các ký tự giống nhau không phải ñược thay bằng một ký tự duy nhất, mà sẽ ñược thay bằng các ký tự khác nhau tùy theo vị trí của nó. Một thí dụ của mã ña mẫu tự là mã Vigenère Dùng một mãng 2 chiều của các ký tự, trong ñó mỗi hàng chứa các mẫu tự theo Alphabet nhưng thứ tự trong từng hàng khác nhau: Thí dụ: Cột 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1516 1718 19 20 21 22 23 24 25 Hàng 0 A B CD E FGH I J K L M N O P Q R S T U V W X Y Z Hàng 1 B C DE FGH I J K L M N O P Q R S T U V W X Y Z A Hàng 2 C DE F GH I J K L M N O P Q R S T U V W X Y Z A B Hàng 3 D E FG H I J K L M N O P Q R S T U V W X Y Z A B C . . . . . . . . . . . . . . Hàng 24 Y Z AB C D E FGH I J K L M N O P Q R S T U V W X Hàng 25 Z AB C D E FGH I J K L M N O P Q R S T U V W X Y Cột 0 12 3 4 5 6 7 8 9 10 11 12 13 14 1516 17 18 1920 21 22 23 24 25 Ðể thay thế một ký tự, gọi i là vị trí tương ñối của nó trong bản tin (bắt ñầu là vị trí 0) và j là vị trí tương ñối của nó trong thứ tự Alphabet. Gọi V là mảng, ký tự sẽ ñược thay bằng một ký tự trong V[ i mod 26,j ]. Thí dụ dùng mảng ở trên ñể thay các chữ THE trong bản tin ở các vị trí 25, 54 và 104. Ta lập bảng thay thế như sau: Ký tự cần thay Vị trí i i mod 26 Vị trí j Ký tự phải thay T H E T H E T H E 25 26 27 54 55 56 104 105 106 25 0 1 2 3 4 0 1 2 19 7 4 19 7 4 19 7 4 S (h25, kt19) H (h0, kt7) F V K I T I G Như vậy các ký tự THE ở các vị trí khác nhau trong bản tin ñã lần lượt ñược thay bởi SHF, VKI và TIG. Mặc dù ñã giải quyết ñược sự lặp lại, nhưng xét kỹ chúng ta vẫn thấy rằng có một qui luật mà người ta vẫn có thể nhận ra ñó là khoảng cách của các ký tự của cùng một mã là như nhau do tính tuần hoàn của mãng mẫu tự mà chúng ta sử dụng và do bài toán mod 26 (khoảng cách trong mã ASCII của S & H, V & K và T & I ñều là 11). Ðể khắc phục ñiều này người ta có thể tăng số hàng của mãng ký tự lên, nhưng như vậy ñưa ñến kết quả là khóa có thể quá dài (thậm chí dài hơn bản tin), khó khăn cho việc phát và lưu trữ một cách an toàn. 3.4.3. Mã chuyển vị (Transposition cipher): Người ta sẽ sắp xếp lại thứ tự các ký tự của bản văn bằng cách lưu chúng trong một mãng 2 chiều m cột, m ký tự ñầu tiên sẽ cho vào hàng thứ nhất, m ký tự kế tiếp cho vào hàng thứ hai, và cứ thế tiếp tục cho hết bản tin, sau ñó hoán ñổi vị trí các cột theo thứ tự mới, giả sử p 1 , p 2 . . . p m . Sự hoán ñổi có thể thực hiện một cách ngẫu nhiên hoặc theo một qui luật ñịnh trước. Bản tin sẽ ñược truyền ñi theo thứ tự từ p 1 , p 2 . . . ñến p m Thí dụ bản tin cần phát: MISS PIGGY KERMIT ANIMAL AND FOZZIE BEAR Giả sử dùng mãng 5 cột 1 2 3 4 5, Bản tin ñược ñưa vào mãng như sau: Số cột [...]... ACIA), ñó là các IC : - UART 6402 c a Intersil - ACIA 6850 c a Motorola - USART 8251A c a Intel 4 .3. 1 UART 6402 c a Intersil 4 .3. 2 ACIA 6850 c a Motorola 4 .3. 1 UART 6402 c a Intersil : 4 .3. 1.1 - Tính năng k thu t t ng quát 4 .3. 1.2 - Mô hình 4 .3. 1 3 - V n hành 4 .3. 1.4 Giao ti p c a 6402 v i vi x lý 4 .3. 1.1 - Tính năng k thu t t ng quát : 6402 là UART lo i IC CMOS/LSI dùng ñ giao ti p v i máy tính... c a IP ñư c t o ra b i tín hi u DR và TBRE 4 .3. 2 ACIA 6850 c a Motorola : 4 .3. 2.1 - Ð c tính t ng quát 4 .3. 2.2 - Mô hình và sơ ñ kh i 4 .3. 2 .3 - V n hành 4 3. 2.4 - Giao ti p c a 6850 v i vi x lý 4 .3. 2.1 - Ð c tính t ng quát : V tính ch t v t lý, 6850 thu c lo i NMOS có 24 chân, ñư c thi t k ñ giao ti p v i bus c a h µP 6800 c a Motorola 6850 có th l p trình ph n m m và ch có m t thanh ghi ñi u khi... l i ñư c phân thành 8 nhóm 6 bít (X6) r i th c hi n vi c thay th ñ gi m xu ng thành các nhóm 4 bít (X4) sau ñó t h p 8 nhóm này ñ thành chu i X32 X32 l i ñư c EX-OR v i L32, k t qu là X32 Cu i cùng chu i X32 t h p v i chu i bít R32 ñ cho mã 64 bít (C64) (H3.7) Tóm l i, gi i thu t ñ có ñư c m t b n tin m t r t là ph c t p, nhưng như th v n chưa ch c ñã b o m t tuy t ñ i ñư c b n tin Ngoài ra, vi c... m t b n mã 64 bit Ti n trình th c hiên g m: - Bư c 1: Chuy n v 64 bit d li u và 56 bit khóa - Bư c 2 g m 16 l n th c hi n s mã hóa tương t nhau nhưng v i các khóa khác nhau, d li u ra c a l n th c hi n trư c s là d li u vào c a l n th c hi n sau - Bư c 3: Tr n 32 bit ñ u và 32 bit cu i - Bư c 4: Th c hi n l n chuy n v cu i cùng (H 3 6) mô t các bư c t o mã c a DES (H3.6) (H 3. 7) minh h a m t trong... chia nhóm, nhưng các chu i ra t các m ch khác nhau thì khác nhau) Như (H 3. 7) mô t , ñ u tiên, ngư i ta chia 64 bít ra làm ñôi, 32 bít ñ u ký hi u L32 và 32 bít còn l i là R32 Ti p theo chu i R32 ñư c m r ng thành 48 bít (R48) b ng cách chuy n v và nhân ñôi m t s bit (Ta ký hi u R48 ñ nh n m nh r ng chu i này ñư c d n xu t t R32) Ð ng th i khóa 56 bit cũng ñư c phân làm ñôi và th c hi n vi c quay vòng... 32 bit cu i - Bư c 4: Th c hi n l n chuy n v cu i cùng (H 3 6) mô t các bư c t o mã c a DES (H3.6) (H 3. 7) minh h a m t trong 16 l n th c hi n mã hóa Trong (H 3. 7) , các ký hi u C64 ch 64 bít ñã ñư c mã hóa, L32 ch 32 bit ñ u c a C64, R32 là 32 bít cu i, K56 là khóa 56 bít Ngoài ra các ký hi u như X48 ch chu i d li u 48 bít có ñư c t m t tác v trung gian trư c ñó Lưu ý là ñ ñơn gi n, chúng ta ch dùng... thêm vào ñây Ðây là m t dòng n i ti p các tín hi u nh phân tương thích v i các chu n v ñi n c a EIA như RS- 232 C (D), RS-422A ho c 423A DCE là b ph n chuy n tín hi u ra kênh truy n D ng chính xác c a DCE tùy thu c vào kênh truy n, ví d , các DCE ñư c dùng thúc ñư ng dây hi n nay là RS-422A ho c 423A có th thích h p ñ truy n tín hi u d i n n v i kho ng cách t i ña là 1200m còn n u dùng ñư ng dây ñi n tho... 4.1 : 6402 control word CR4 Ch n chi u dài ký t CLS1 CR3 CR2 CLS0 Có Ki m Tra ch n l ? PI Ch n Ki m Tra ch n EPE Ch n s bit stop SBS CR1 CR0 Ðưa 00 = 5 bit 01 = 6 bit 10 = 7 bit 11 = 8 bit 1 = không ki m tra ch n l và PE = 0 0 = có ki m tra ch n l 1 = ki m tra ch n 0 = ki m tra l 0 = 1 bit stop 1 = 1,5 (ký t 5 bit) 1 = 2 (ký t 6, 7, 8 bit) 4 .3. 1 3 - V n hành : - V n hành c a IC ñư c th c hi n qua các... do sai khung L i do sai khung ñư c t o ra b i s tích lũy các ñ l ch th i gian, bít cu i cùng b sai ñưa t i sai khung (H 4 .3) (H 4 .3) là m t ví d , gi s th i gian cho m t bít là 0,1s (T = 0,1s =100ms) và s sai l ch là 7% s m hơn máy thu, như v y máy thu ñ c bít ñ u tiên th i ñi m 93 ms thay vì 100ms, bít th hai 186ms cho ñ n th i ñi m 744ms máy thu ñang ñ c bít th 7 nhưng nh m là bít th 8, như v y bít...1 2 3 4 5 M P I I K T M N Z B S G E S G R A L Y M N I I A O A D Z E I A F E R S p x p l i các c t theo th t 2, 4, 3, 1, 5, ta ñư c b n tin: IIKTMNZBSGRAL IASGE ADZEMP IIAO (2 kho ng tr ng) YMN FER Rõ ràng là b n tin ñã mã hóa không còn m t dáng d p nào c a b n . phát ñi từng tọa ñộ và màu của từng ñiểm trên màn hình. 3. 3.1 Mã Huffman. 3. 3.2 Mã Run length. 3. 3 .3 Mã vi phân. 3. 3.1 Mã Huffman : Mã Huffman lợi dụng xác suất xảy ra của các. 6 2 8 6 6 3 5 6 6 5 7 6 5 6 3 2 3 7 8 4 6 8 5 6 4 8 8 5 5 1 3 9 8 6 5 5 7 6 5 5 2 9 9 6 8 9 5 1 Khung thứ nhì 5 7 6 2 8 6 6 3 5 6 6 5 8 5 5 6 3 3 3 7 8 4 6 8 5 6 4 8 8 5 5 1 3 9 7 6 5. 2 3 4 5 1 2 3 4 5 A F L Q V B G M R W C H N S X D IJ O T Y E K P U Z Thí dụ bản văn N O W I S T H E T I M E 33 43 25 42 34 44 32 51 44 42 23 51 3. 4.2.

Ngày đăng: 26/07/2014, 08:21

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan