CHƯƠNG TRINH NGHIÊN CUU KHOA HOC VA PHAT TRIEN CONG NGHE THONG TIN VA TRUYEN THONG KC.01
DE TAI KC.01.18
NGHIÊN CỨU XÂY DỰNG QUY TRINH TONG THE,
GIAI PHAP DAM BAO AN TOAN, AN NINH THONG TIN,
UNG DUNG CHO HO! NGHI TRUYEN HINH (VIDEO CONFERENCING)
Chủ nhiệm để tài : PGS TS Trần Hồng Quân
Đơn vị chủ trì : Viện Khoa học Kỹ thuật Bưu điện Học viện Công nghệ BC-VT - QUYEN 5 a ĐỀ TÀI NHÁNH:
NGHIÊN CỨU GIẢI PHÁP VÀ SẢN PHẨM BẢO MẬT CHO HỆ
THỐNG HỘI NGHỊ TRUYỀN HÌNH IP MULTICAST Đơn vị thực hiện : Học viện Kỹ thuật Mật mã
Chủ trì : TS Trần Duy Lai
Trang 2Nội dung chính của báo cáo này là nghiên cứu phát triển thiết bị mã hoá đường
truyền chuyên dụng cho hệ thống hội nghị truyền hình IP multicast Báo cáo gồm có sáu chương:
Chương T1: Mật mã cho truyền thông quảng bá
Chương II: Lược đồ Pay-Per-View an toàn cho dịch vụ Video dựa trên Web
Chương II: Chuẩn mã dữ liệu GOST 28147-89 Chương IV: Trao đổi khoá tự động
Chương V: LINUX Bridge và dùng Brige để bảo mật
Chương VI: Card E1 và mô hình bảo mật dịch vụ hội nghị truyền hình IP multicast
Trang 3Muc luc
MỤC LỤC
MỤC LỤC 3 LỜI NÓI ĐÀU 8
CHUONG 1 MAT MA CHO TRUYEN THONG QUANG BA 1.1 Mật mã quảng bá HH HH HH HH Hà Han tt 3084001810 1 Án ĐI B4 04 9 1.7.1 GiOT IG Ma 9 4.4.1.1 CA GIN n nha ae 9 4.4.1.2 0 a 10 1.1.2 Các lược đồ không-thông báo c2 1n He, 10 VA2.1 .ỪOỪODD Ô,Ô 10 1.1.2.2 Các lược đồ 1-bền vững sử dụng giả thiết mật mã ccocccccerrrsree 11 1.1.3 Các lược đỗ k-bên vững bộ nhớ thắp 25 221022211 13 1.1.3.1 Các lược đồ † mức -ccccct n HT nx121111111221 1101220222112 13 V.A.B.2 NAAM XGt .- 14
1.1.3.3 CA loc db mhiu MC cc cccccecesseseesessesrescssecsesecsensaracsnstsseaneaiesersesseress 15 1.2 Cac lwo’ db quang ba tat ccccccecescssssssssssessesssessscsseescssssesstsscssatsstesssssseesentenees 15 1.2.1 Các lược đỗ quảng bá thực SỰ HH na 15 1.2.2 Hệ thống quảng bá dựa trên véc (Ơ HH 1122 reea 17 LÍ 1 h5 e 19 CHƯƠNG 2 LƯỢC ĐÓ PAY-PER-VIEW AN TOAN CHO DICH VỤ VIDEO DỰA TRÊN WEB 20 Nha ee 20 2.7.1 2 Mô hình dịch vụ PPV Q.QQ LH HH HH Hà HH Hà cay 22 2.2 Một giao thức thanh toán cước PPV đơn giản —SPPV nhe 24
2.3 Giao thức thanh toán PPV tốt - FPPV H.H.111.21 1 ri 25
F IS MW-Ề- 4A 26
2.3.2 Giải quyết tranh chấp ca 27
KC.01.18.06 Xây dựng quy trình khai thác đảm bảo an ninh, an toàn hệ thông hội nghị truyền hình Trang 3/107
Trang 42.4 Duy trì tính đúng đắn của bằng CHUNG .ccsessecseseesesstsscsssstsscssseessnesssseeseesesereeeses 28
2.5 Hỗ trợ khả năng di động của người thuê bao .- co .c enereekeeeeeere 31
2.6 Kết luận HH HH gen 32
2.7 — Tai Wu tham Khaw 6 32
CHU'ONG 3 CHUAN MA DỮ LIỆU GOST 28147-89 St errerier 35
3.1 Mô tả thuật toán HH TH HH HH HT HH Sơ 070790 r8 35 3.7.1 So sánh GOST 28147-89 của Nga và Rijndael các nhe 37 3.1.1.1 So sánh các đặc tính chung của 2 thuật toán cà nehserre 39 3.1.1.2 So sánh các nguyên tắc kiến trúc chung c2 rrreg 39 Ša¿ âa L.Rn 41 3.1.3 Tỉnh tương đương của biến đôi xuôi và ngược cty 42 kh“ ° a 44 3.1.5 Chọn các nút thay thế và các hằng só khác
3.1.6 Tính năng suất và độ tiện lợi khi thể hiện
3.1.7 Đặc điểm thể hiện của thuật toán Rijndael 3.2 3.27 Mở đầu Nhận xét về thuật toán mã hóa GOST -S5-c- L1 32221411215115128 1 1xEExrrke 51
3.2.2 Mô tả thuật toán GOST Q.1 Hy 52
3.23 Các tính chất tổng quát của GOST nen 53
3.24 Các phép dịch vòng R trong GOST SH 1H H21 Hye 55 3.2.5 Lựa chọn các S-boX SH HH1 HH ưu 58 K Tai l l T5 6 6 58
CHƯƠNG 4 TRAO ĐỎI KHOÁ TỰ ĐỘNG Úc 3v treererkeererreee 59
Trang 5Muc luc
4.4.1 Mô tả chỉ tiết quá trình trao đỗi khOÁ: che re 64
4.4.1.1 Các bước trao đỗi khoá cccc n2 tre 64 G0, i76 .11 ố 69 4.6 Các đặc tính của KEX - n9 1H11 HH HH n0 Re 00137138 73 CHƯƠNG 5 LINUX BRIDGE VÀ DÙNG BRIDGE ĐẺ BẢO MẬT .cseeiee 74 5.1 Bridge là gì? s nen nh TH Hà ng ng enriee40001107120500507 74
5.1.1 Khái niệm về bridge (Cầu nối) 0 S222 122122 1181212221 re 74
T.Ặ.ˆẻ' ch 74 5.1.3 Broadcast và MullicaSi SH nh HH HH nhà nành 76 5.1.4 Quản lý bảng giao diện (Managing the Interface Tables) eeceie 76 5.1.5 Bang d&t loc (Filter nh 77 5.1.6 Bridge đa công (Multiple Port Bridges - Swifches) ae 77
5.1.7 Kết nỗi giữa Bridge va switch
5.2 Cài đặt và sử dụng bridQ6 -<- Ăn TH HT HH TH g0 tem 79 5.2.1 Cài đặt
5.2.1.1 Biên dịch nhân linux hỗ trợ bridge S c TT HT 20111111221 xe, 79 5.2.1.2 Biên dịch trình tiện ích sử dụng bridge
2 :.(a:iiidd 80 5.2.2.1 Tiện ích brctl
5.2.2.2 File kịch bản cho bridge 81 5.3 Sửa đổi trình bridge và giải pháp can thiệp mật mã
-.- /L. arrŨ 82
5.3.2 Lập trình đa tuyến trong linux (multi - thread)
5.3.3 Giải pháp can thiệp mật mà Q Q Q HH HH HH HT HH re 86
Trang 66.1.1 Sử dụng Linux WAN Multicast RoUler Lá cu SH HH HH Hư tau 88 *ẽ, ii an ao an eet tere pre tiecaseateaeenetae 89 6.1.3 Chuyển tiếp gói tín multicast (forwarding multicast network frame) 89 6.2 Bảo mật gói tin multicast được thực hiện ở tầng 2 (Data Link Layer) 90
6.2.1 Cấu trúc gói tin MAC (Medium Access Control) sen rrrre 90
6.22 Lập trinh module bảo mật mạng . cà TH, HHHHHu nhọ 97
6.2.2.1 Lập trình module cán L2 19H12 1H 22 12111 0112 HH HH TH HH TH re 9 6.2.2.2 Cài đặt và xoá bỏ modUIe - - tTnTH HH 2111012121012 1111111181221 01T eree 93 6.2.2.3 Module bảo mật mạng ở tằng datalink 0t n2 2222221211 erce 93 6.3 Trao đổi khoá trong mô hình bảo mật IP-E1
6.4 Cyclades WAN Card (PC300) -.- LH nHìn HH TH HÒA HH ng KH Ha 98 6.4.1 Giới thiệu về WAN card PC300 H212 98 6.4.1.1 Đặc tính kỹ thuật card PC300/TE: ch H011 001111 creg 98 6.4.1.2 Mô hình kết nối ch 2212 101.21121121112112111101121111112111012112111 1 crrey 99 6.4.2 Cấu hình cho PC300/TE trên Linux -.á 0 c1 2H22 ae 99
Kết luận 105
PHY LUCA TAILIEU THAM KHAO
PHU LUC B DANH SACH CAC HINH VE cesssssssscosssessetsssssesssssacsssensssensecsscsscentensseseaneesees 407
Trang 9Chương 1: Mật mã cho truyền thông quảng ba
CHUONG 1 MAT MA CHO TRUYEN THONG QUANG BA
1.1 Mật mã quảng bá
4.14 Giới thiệu
Ta xét trường hợp có một Trung tâm (TT) và tập những người sử dụng (NSD) TT cung cấp khoá cho NSD khi họ gia nhập hệ thống Tại một thời điểm nào đó, TT muốn quảng bá một thông báo (chẳng hạn đó là một khoá để giải mã) tới tập con NSD (tập này được quyền thay đổi theo thời gian và sẽ được gọi là lớp đặc quyên) theo một cách sao cho
những thành viên không thuộc lớp này không thể hiểu được nội dung thông báo Có thể
rằng các thành viên không thuộc lớp này cũng muốn biết nội dung thông báo và cố gắng
để hiểu nó
Lời giải rõ ràng là, đưa cho mỗi người một khoá riêng và truyền riêng lẻ thông báo đã được mã tới mỗi thành viên của lớp đặc quyền Giải pháp này yêu cầu truyền nhiều (độ dài truyền = số thành viên trong lớp đặc quyền * độ dài thông báo)
Lời giải đơn giản khác là cung cấp một khoá cho mỗi tập con người sử dụng, nghĩa là
cung cấp cho mỗi người NSD các khoá tương ứng với mỗi tập con mà họ thuộc về Giải pháp này yêu câu mỗi NSD fưu giữ một lượng lớn khoá
Phần này cung cấp một số lời giải có hiệu quả theo hai độ đo: độ dài truyền và
lượng lưu trữ ở NSD cuối Tham số mới được đưa vào là số NSD phải liên kết để phá vỡ
hệ thống
Lược đồ được coi là bị phá vỡ nếu một NSD không thuộc lớp đặc quyền có thể đọc được thông báo truyền
Với tham số k cho trước ta cần xây dựng lược đồ bền vững đối với tập bất kỳ gồm NSD liên kết và tập con bất kỳ NSD đặc quyền (rời nhau với k NSD nói trên)
Mục tiêu cuối cùng của lược đồ mã quảng bả là phải truyền an tồn một thơng báo tới tất cả các thành viên của tập con đặc quyền
1.1.1.1 Các định nghĩa
Trang 10Lược đồ quảng bá được gọi là bền vững đối với tập S nếu với mỗi tập con T, không giao nhau với S, không kẻ trộm nào dù có tất cả các bí mật liên quan với các thành viên của ŠS có thể thu nhận được bí mật chung của T
Lược đồ quảng bá được gọi là k-bên vững nếu nó bền vững đối với tập bất kỳ
SC U có cỡ là k Cho |U|=n
Điều chúng ta muốn tối ưu hoá là số các khoá kết hợp với mỗi người sử dụng, số những cái được truyền bởi trung tâm, và những cố gắng tính toán của các thành viên thuộc
lớp đặc quyền để tìm khoá chung
1.1.1.2 Các chú ý
Nói chung, việc biểu diễn đơn giản tập con TCC U yêu cầu n bít Trong nhiều ngữ cảnh, tập đặc quyền có thể được nhận dạng bằng cách gửi đi một thông báo tương đối ngắn Chẳng hạn, nếu bằng cách nào đó tập đặc quyền có thể được tính từ tập đặc quyền cũ hoặc biểu diễn của tập này có thể được nén Nhưng ta cần phần biệt việc truyền nhận dạng tập này với việc truyền mã quảng bá Mục đích của chúng ta là nghiên cứu việc truyền mã quảng bá và những yêu cầu của chúng Nói chung, TT sẽ nhận dạng mỗi NSD với một số nhận dạng duy nhất và như vậy biểu diễn tập có thể là một véc tơ bít
Ta còn phân biệt các lược đồ không-thông báo với các lược đồ tổng quát hơn
Lược đồ không-thông báo có tính chất là việc biết tập con đặc quyền T đủ cho tất cả NSD thuộc T tính khoá chung với trung tâm mà không cân sự truyền nào Khoá nay sé được dùng để mã dữ liệu cần truyền
Các lược đồ tổng quát hơn có thể yêu cầu trưng tâm truyên nhiều thông báo Tiếp cận chung đến kiến thiết các lược đồ là sử dụng tiếp cận 2 giai đoạn Đầu tiên, ta thiết lập các lược đồ không thông báo bên vững thấp, sau đó sử dụng chúng để xây dựng những lược đồ bền vững hơn Lược đồ cuối cùng không phải là lược đồ không- thông báo
1.1.2 Các lược đồ không-thông báo
1.1.2.1 Lược đồ cơ sở
Trang 11Chương 1: Mật mã cho truyền thông quảng bá
Với mỗi tập B lực lượng không quá k, ta xác định khoá Ks và đưa Ka cho mỗi NSD
xe U-B Khoá chung của tập đặc quyền T đơn giản là Xor của tất cả những Kạ, BC U-T Rõ rằng là, mỗi sự liên kết của tập 5 không quá k NSD sẽ làm thiếu đi khoá Ks va do dé sé không cho phép tính khoá chung của tập đặc quyền T miễn là S và T rời nhau
x x n lộ ie a
Yêu cầu bộ nhớ đối với lược đồ này là: mỗi NSD được cấp > | ; khoá Với yêu v=0| cầu này ta không cần thêm giả thiết nào nữa Do đó ta có:
Định lý 1 Tôn tại lược đỗ k-bền vững trong đó yêu câu mỗi NSD lưu giữ x dị khố và
Vi
TT khơng cân quảng bó bất kỳ thông báo nào để sinh khoá chung cho lớp đặc quyên
1.1.2.2 Các lược đồ 1-bền vững sử dụng giả thiết mật mã a)_A Lược đỗ 1-bên vững sử dụng hàm một chiều
Ta hãy xét trường hợp k = 1 của lược đồ nói trên Nó yêu cầu mỗi NSD phải lưu n+1
" " a , ~, ~~
khoa khdc nhau (“+1 -(3}+(7) Tuy nhiên, số này có thể được rút xuống O(logn) nếu khoá được sinh giả ngẫu nhiên từ một mầm chung, trong đó hàm giả ngẫu nhiên f có độ dài đầu ra gấp đôi độ dài đầu vào Thật vậy, giả sử tồn tại hàm một chiều f Khoá sẽ được phân phối như sau:
Kết hợp n NSD với các lá của cây nhị phân cân bằng trên n node Gốc được gán nhãn là mầm chung, còn những đỉnh khác được gán nhãn liên tiếp như sau: áp dụng hàm một chiều f vào nhãn gốc và lấy nửa trái của giá trị hàm làm nhãn của cây con bên phải trong khi nửa phải của giá trị hàm là nhãn của cây con bên trái
Theo lược đồ ở mục 2.1., mỗi NSD x sẽ nhận tất cả các khoá trừ một cái ứng với tập đơn {x} Để đạt mục đích này, ta xoá đi gốc trực tiếp của lá kết hợp với x Còn lại một rừng có O(logn) gốc thuộc tầng ngay trên lá (ø ~ 2” — k x logn ) Đưa cho x nhãn kết hợp với gốc của những lá khác NSD này có thể tính tất cả các nhãn cây (trừ Kạ )mà không cần thêm sự trợ giúp nào Vậy:
Định lý 2 Nếu các hàm một chiều tôn tại thì sẽ tồn tại lược đô 1-bén vững trong đó yêu cầu
mỗi NSD lưu giữ log(n) khố và TT khơng cần quảng bá bất cứ thông báo nào để sinh khoá
Trang 12b)_B Lược đỗ 1-bên vững dựa trên giả thiết lý thuyết số tính toán
Độ khó của bài toán tính căn bậc hai theo modulo một hợp số có thể được ứng dụng để rút gọn thêm yêu cầu bộ nhớ đối với các lược đồ 1- bền vững Lược đồ này tương đương mật mã với lược đồ RSA, được gợi ý bởi lược đồ trao đổi khoá Diffie-Heliman
TT chon hợp số ngẫu nhiên khó phân tích N=P.Q, trong đó P.Q là các số nguyên tố lớn, đồng thời chọn giá trị bí mật g có bậc cao đối với modulo N NSD ¡ được cấp khoá Ø,=øg” modN, trong do pi, p¡ là nguyên tố cùng nhau với mọi ¡, j khác nhau và thuộc U Hơn nữa, tất cả NSD đều biết p¡ nào ứng với NSD nào Khoá chung cho tập con đặc quyền Tà
gy = gll« "mod N
Mỗi NSD ¡ thuộc T có thể tính gr bằng công thức
chính mod X
Giả sử đối với TC U nào đó và có j¢T nao đó có thể tính khoá chung gr đối với T Ta khẳng định rằng điều này kéo theo việc NSD này cũng có thể tính g Khẳng định này
xuất phát từ bài toán sau:
Trang 13Chương 1: Mật mã cho truyền thông quảng bá
Khi d6 reat = (x,y) Ta 6
a’ = (a")%a” hay aY mod N = (a* mod N)%a" mod N
Thé thi
a’ mod N = a’(a® mod N)° mod N,
nghĩa là tính được a” mod N mà không cần biết a Tương tự như vậy ta có thể không cần biết a mà vẫn tính được các đại lượng sau: z” mod NV," modN, ,a*“ mod Do đó, nếu (x,y)=1 thì re+:¡=(x,y) = 1 và a*' mod =4
Vì (,.]1 m.)=1 nên rõ ràng j có thể tính được g, hay j có thể tính được căn bậc
pị của gø”“ mod trong khi chỉ biết hợp số N Như thế, nếu bài toán này được giả thiết là
khó thì ta có:
Định lý 3 Nếu việc lấy căn theo modulo một hợp số là khó thì tôn tại lược đồ — 1-bên vững trong đó yêu câu mỗi NSD lưu giữ một khoá và TT không cần quảng bá bat ky thông báo nào để sinh khoá chung cho lớp đặc quyền
Rõ ràng rằng, lược đồ này không 2-bền vững vì theo lập luận ở trên thì 2 NSD bất ky có thể liên kết và tính được số bí mật g
4.1.3 Các lược đồ k-bền vững bộ nhớ thấp
Các lược đồ k-bền vững không thông báo được mô tả trong đoạn trước với k >1 yêu cầu bộ nhớ lớn, cỡ mũ theo k Trong đoạn này, ta giới thiệu một vài lược đồ k-bền vững có hiệu quả khi k >1 Các lược đồ này dựa trên phương pháp chuyển các lược đồ 1-bền vững thành lược đồ k-bần vững ở đây giả thiết sự tồn tại lược đồ 1-bền vững cho sé bat ky NSD Lược đồ này có thể là lược đồ không giả thiết hoặc bất kỷ biến thể của giả thiết mật mã nào
Cho ø là số các khoá mà một NSD cần lưu giữ trong lược đồ 1-bên vững nghĩa là, @ = n+1 nếu không sử dụng giả thiết mật mã nào, ø =log(n) nếu giả thiết tôn tại hàm một
chiều và œ = 1 nếu giả thiết rằng việc tính căn modulo một hợp số là khó
1.1.3.1 Các lược đồ † mức
Xét họ các hàm f, ,f, f¡ : U1{1, ,m} có tính chất sau: Với mỗi SCC U có cỡ k,
Trang 14Một họ như thế có thể được sử dụng để thu được lược đồ k-bền vững từ lược đồ 1-
bền vững Với mỗi 1<i<l và 1<j<m ta sử dụng lược đồ 1-bền vững độc lập R(,j)
Mỗi NSD xeU nhận được những khoá gần với các lược đồ R(i,f(x)), 1<¡i<l Để gửi
thông báo bí mật M tới tập con T CC U, TT sinh các dòng ngẫu nhiên MÌ, M, , MÌ sao cho
®'_.A' =M Mỗi MỸ (1<i<I và 1<j<m) được mã bởi khoá trong lược đồ R(i,j) và được TT
quảng bá tới tập con đặc quyền {xeT: f(x)=j} Mỗi NSD xeT có thể nhận được tất cả các
thông báo M!, MỆ, ,M' và Xor chúng để được M Chú ý rằng, do họ f¡ có tính 1-1 trên tập S
nên với mọi x #y eS thì R(i,fi(x))# R(,f(x)) và vì thế k người của S không thể liên kết để tìm được MỈ, nghĩa là không tìm được M
Số các khoá mà mỗi NSD phải lưu giữ gấp I tần số này trong lược đồ 1-bền vững Độ đài truyền là Im (do 1<i<|l và 1<j<m)
Khang dinh 4 Lược đỗ được mô tả ở trên là lược đỗ k-bên vững
Bây giờ ta chọn các tham số m và l Hoá ra là với m=2k? và I=k.log(n) thì việc chọn họ {f} thành công với xác suất lớn Nghĩa là, người ta chứng minh được rằng, khi cố định tập cỡ k là SCC U thì nếu chọn f, một cách ngẫu nhiên, xác suất để có một ánh xạ 1-1 f, ít
nhất là 1~| ”|_ kn >1~-_ và nh l
Định lý 5 Tên rại lược đô k-bên vững trong đó yêu cầu mỗi NSD lưu giữ Ofk log(n) @) khoa và TT phải quảng bá O(log(n)) thông báo Hơn nữa, lược đô có thê được xây dựng hiệu quả với xác suất cao tuỳ ý bằng cách tăng các tham số của lược đô một cách thích hợp
Có thể chọn họ F = {f,} như sau:
Fe {f, (x)= xmod p: p— prime, Di 2 n|F| 2 i Khi đó F thoả mãn tất cả các yêu cầu nói trên
1.1.3.2 Nhận xét
- _ Các lược đồ này không yêu cầu tuyệt đối rằng các hàm f, là có thể tính toán, NSD
có thể đơn giản được gán f, (x) Gia trị này có thể được chọn ngẫu nhiên
-_ Mỗi lược đồ R(i,j) ở trên liên quan đến một tập con người sử dụng Nếu ta giả thiết rằng người bất kỷ có thể tính các hàm f; thì các lược đồ R(i,j) 1-bền vững có thể được tạo ra để giải quyết cho đúng số người sử dụng kết hợp với lược đồ KC.01.18.06 Xây dựng quy trình khai thác đảm bảo an ninh, an toàn hệ thống hội nghị truyền hình
Trang 14/107
Trang 15Chương 1: Mật mã cho truyền thông quảng bá
Điều này dẫn đến việc lưu theo các yêu cầu bộ nhớ được mô tả trong lược đồ với
chi phí tính toán bổ sung nao đó,
1.1.3.3 Các lược đồ nhiều mức
Xét họ các hàm fq, , f: U{1, ,m} và một bộ các tập lược đồ
{R(ij): t<i<l, 1<j<m},
trong đó mỗi R(i,j) gồm I“ lược đồ có nhãn là R(i,j,1), R(¡,j,l) Những hàm và lược đồ này tuân thủ điều kiện sau Với mỗi tập con S CC U có cỡ k, tồn tại 1<i<l sao cho với mọi 1<j<m tồn tại 1<r;<I' để lược đồ R(i,j,r¡) là bền vững đối với tập {x eS : f(x)=i}
Ta khẳng định rằng cấu trúc như thế có thể được sử dụng để có lược đồ k-bền vững:
Sinh những khoá được chọn độc lập đối với tất cả các lược đồ R(i,j,r) NSD x eU, với mỗi 1<i<l và với mỗi 1<r<l, nhận được các khoá kết hợp với x trong lược đồ R(i,f(x),r) Cho
tập con TC U và thông báo bí mật M, TT cần sinh:
- _ Các dòng MÌ, ,M' sao cho ®j_, Aƒ' = M và M!, ,MP1 được chọn ngẫu nhiên
- Với mọi ¡ie{L,.,l}, je{1,.,m} các dòng ngẫu nhiên MP, MED sao cho
eM) =m’ '
TT quảng bá thông báo MM) tới tập con đặc quyền {x eT : f(x)=j} nhờ sử dụng lược đồ R(i,j,r) với mọi ¡,j,r thuộc miền giá trị của nó Mỗi NSD x eT có thể nhận được các thông báo Melo) với mọi ¡ và r thuộc miền xác định Để thiết lập M, x eT lấy Xor theo bít tất cả các thông báo được truyền tới NSD này trong tất cả các lược đồ mà NSD tham gia, nghĩa là trong tất cả các lược đồ R(i,j,r) mà fi(x)=j Số các khoá kết hợp với NSD x do đó là số các khoá kết hợp với lược đồ R(1,j,r) nhân với ! Độ dài quảng ba bang số các thông báo được truyền trong lược đồ R(i,j,r) nhân với I.m.l“
Khẳng định 6 Lược đỗ nói trên là lược đỏ k-bằn vững
4.2 Các lược đồ quảng bá tốt
1.2.4 Các lược đồ quảng bá thực sự
Trong các lược đồ chia sẻ bí mật, mỗi bên giữ một phần của bí mật Đối với lược đồ
Trang 16có bậc k-1 Để đơn giản, giả sử S là hãng số trong P Khi đó mỗi một trong n phần là một điểm phân biệt trên đồ thị của P Rõ ràng là, k bên bất kỳ có thể phối hợp các phần của họ
để suy ra P và tìm được S
Trong hệ thống quảng bá bí mật, các bên được cho các giả phần, nghĩa là các phần trong một lược đồ "k trong n" chưa được tạo ra Trong ví dụ của chúng ta, giả phần là những điểm (x¡,y,) với các giá trị x¡ khác nhau Người quảng bá giữ một số phần chưa được gán để dùng riêng nhẫm đưa thêm mức độ ngẫu nhiên vào các thông báo của mình Nếu buộc phải truyền lại một bí mật tới một bộ phận đặc biệt của các bên thì anh ta có thể tạo
một thơng báo hồn tồn khác để truyền Để quảng bá cho k bên đặc quyền:
* Chon j20
+ Tao ra luge dé chia sé bí mật k+j+1 trong 2k+j+1 với a) Bí mật là S
b) Các giả phần của các bên đặc quyền như những phần thật sự
c) Các giả phần của các bên không đặc quyền không phải là những phần thật sự
đ) Người quảng bá giữ ¡ giả phần được chọn ngẫu nhiên và chưa được gán
* Quang bd k+j phần được chọn ngẫu nhiên - Tất cả hoàn toàn khác những cái được sử dụng trong bước 2
s - Mỗi thuê bao thêm giả phần của mình như một phần vào k+j phần nhận được a) Nếu giả phần này là một phần thật sự, như trong bước 2b), anh ta mở S b) Nếu không, như trong 2c), anh ta không mở được S
Đối với ví dụ đa thức:
= Chon j diém (x¡y,) với x¡ chưa dude gan
= Tim da thirc P bac k+j di qua: a) (0,S)
b) (x¡y¡) đối với k bên thực và j bên ảo thuộc về người quảng bá c) Không (x¡,y¡) nào cho những bên không thuộc đặc quyền
» Quảng bá k+j điểm khác trên đồ thị của P
KC.01.18.06 Xây dựng quy trình khai thác đảm bảo an ninh, an tồn hệ thơng hội nghị truyền hình
Trang 16/107
Trang 17Chương 1: Mật mã cho truyền thông quảng bá
Chú ý rằng, nếu tất cả y¡ = b với b cố định thì định lý Rolle bảo dam rang 2c) được thoả mãn Theo 2b), có k+j-1 khoảng mà ở các đầu mút của chúng P nhận giá trị b Như vậy, có k+j-1 cực trị địa phương Nếu ở một điểm khác P nhận giá trị b thì có nghĩa là có một điểm cực trị địa phương khác nữa của P Nhưng P có bậc k+j nên tồn tại nhiều nhất là k+j-1 cực trị địa phương Do đó, P không thể đi qua phần giả ngẫu nhiên bất kỳ khác với y: = b Tất nhiên, S không thể cũng bằng b (P = 5 khi x = 0, còn x;z+ 0) hoặc P là hàm hằng
số Cũng như, mỗi giả phần se quy về giá trị x¡ duy nhất Người quảng bá có thể thay đổi b
hàng ngày, thậm chí từ thông báo này đến thông báo khác nhưng vẫn còn phải kiểm tra xem có sự bất lợi nào về an toàn với việc chọn tất cả y¡ = b hay không
1.2.2 Hệ thống quảng bá dựa trên véc tơ
Trong ví dụ trên, k+j phương trình đầu tiên là như nhau đối với mỗi bên Chỉ có phương trình thứ k+j+1 là duy nhất đối với mỗi thuê bao Ý tưởng này cũng dẫn đến công thức véc tơ như sau:
= giả phần là các cặp (t,.y,), trong đó tập tất cả các véc tơ vị lập nên một tập độc lập » _ Lấy véc tơ ngẫu nhiên P (tương đương với các hệ số của đa thức Shamir) sao cho:
a) Pvi = y¡ đối với k phần giả ngẫu nhiên của các bên và j phần giả ngẫu nhiên của người quảng bá
b) Pv¡ # y, đối với các phần giả ngẫu nhiên của các bên không đặc quyền Lấy véc tơ ngẫu nhiên u với uv; 0 với bên bất kỳ
Quảng bá u và véc tơ Q = P+Su
Tính toán cuối củng là
T = (Qvi - yj(uvj) 1
Bên nhận không đặc quyền sẽ tính T, nhưng nó sẽ khác S miễn là đẳng thức Pv, = yi không tình cờ xảy ra đối với họ Đương nhiên, bên nhận đặc quyền sẽ nhận được T = S
Trang 18Có một cách để người quảng bá có thể bảo đảm rằng bên không đặc quyền không
thể tình cờ tìm được S Với định lý Rolle, họ chọn y¡ =b (b cố định) với mọi ¡ Trong lược đồ này sẽ cần đến khái niệm cắt đến độ dài k
a) Gia phần là các véc tơ vị được chọn sao cho tập bất kỳ của các hiệu {Vi-Vạ, Vi~V3, ,Vị~ vx}, khi bị cắt đến độ dài k, là độc lập và lập nên không gian không chứa v¡-v, khác
b) Nếu vị bị cắt đến độ dài k+j+1, người quảng bá có thể tìm P sao cho È, =v, )P =0 với
k bên thực và j bên ảo (i¡ cố định và m chạy từ 2 đến k+j+1) Có một không gian
nghiệm một chiều nên có thể chọn P mà v„P =b(b# 0) Khi đó v, P=b với tất cả k
bên
c) Phần còn lại của lược đồ thực hiện như trước với tất cả các thuê bao khi cắt các véc tơ của họ tới k+j thành phần
Định lý 1 Người nhận không đặc quyền với véc tơ r không thể mở được S
Chứng minh Già sử Pv, = b đối với bên không đặc quyền Khi đó(y, -v,}P=0 và
các véc tơ bị cắt v, -w,,v, -v,.„ v,T—v, và v, -v, là độc lập và tạo nên cơ sở của
không gian k+j+1 chiều Do đó P phải bằng 0 Nhưng v,P= b(b # 0)> Mau thuẫn! Vì vậy, Pv, # b
Định lý sau đây gợi y mét cach chon cac véc to v, sao cho chung cé cac tinh chat nêu trong bước 1
Định lý 2 Chọn véc tơ A một cách ngẫu nhiên trong không gian n chiều Cho
v= (x, ,x2 sex”) + A với các x¡ khác nhau Khi đó tập bắt ky cde hiéu {vi-v2, v1-V3, ,Vi-Vid, khi được cắt tới độ dài k, sé lập nên một không gian không chứa vị-v, khác
Trang 19Chương 1: Mật mã cho truyền thông quảng bá
Khai triển định thức thứ hai theo dòng thứ nhất sẽ cho định thức cấp kxk Định thức sau này khác không nên các cột của nó phải độc lập tuyến tính Rõ rằng là, những cột này chính là các véc tơ bị cắt Vị~v¿, Vị~V3, ,VịSVy VỀ Vị~Vị,
1.3 Tài liệu tham khảo
Trang 20CHUONG 2 LUOC DO PAY-PER-VIEW AN TOAN CHO DICH
VỤ VIDEO DỰA TRÊN WEB
Chúng tôi giới thiệu một công trình của Jianying Zhou va Kwok-Yan Lam đã được đăng trong tuyển tập PKC’99, LNCS 1560, pp.315-326, 1999 Cùng với sự phát triển của các mạng máy tính tốc độ cao, dịch vụ video trên Web có một tiềm năng thị trường lớn ở chỗ dịch vụ video có thể được cung cấp cho người thuê bao với thời gian lớn hơn và lịch trình mềm dẻo hơn so với hệ thống truyền hình cáp hiện tại Đối với lược đồ Pay-Per-View (PPV), những người thuê bao chỉ phải trả tiền cho những chương trình mà họ đã xem, Điểm quan trọng trong dịch vụ PPV là khả năng giải quyết tranh cãi đối với việc trả tiền dịch vụ Điều này đặc biệt quan trọng trong trường hợp truyền thông Internet có thể bị ngắt quãng (một cách vô tình hay hữu ý) ở giữa phiên xem hình Chương này đề xuất một giao thức tính tiền đúng (chỉ phải trả cho những gì đã xem) cho dịch vụ video dựa trên web Với giao thức này, dịch vụ video sẽ được chia thành nhiều đơn vị nhỏ, người thuê bao cần phải qui phục bằng chứng mật mã cho phép tính cước đúng dựa vào số đơn vị được cung cấp trong phiên xem Thêm vào đó, bằng cách thiết lập một liên kết hệ quả một chiều, tính đúng dan của bằng chứng được duy trì một cách hiệu quả mà không cần sự tham gia của một bên tin cậy thứ ba Lược đồ của chúng tôi là đơn giản theo quan điểm yêu cầu lưu trữ và công suất tính toán đối với các thuê bao, tức là người thuê bao có thể yêu cầu dịch vụ PPV một cách an toàn chỉ bằng thẻ smartcard mà không phụ thuộc vào vị trí vật lý của họ
21 Mở đầu
Truyền hình cab là phương tiện giải trí thông dụng trong cuộc sống hàng ngày của chúng ta Cơ chế thu tiền của truyền hình cab rất là đơn giản, các hãng truyền hình cáp cung cấp các kênh premium trên cơ sở hàng tháng cho các người thuê bao, họ phải trả một phí bằng nhau không phụ thuộc vào sở thích xem của họ Một thiết bị đặc biệt được biết như là một hộp set-top (STB) cần được lắp đặt bởi người thuê bao, nó nhận tín hiệu đã được mã hoá từ kênh được đánh giá cao, giải mã và giải nén tín hiệu video số đã được nén và chuyển tín hiệu đến tivi Hệ thống không cho phép đăng ký hay không đăng ký các kênh
này trước khi chỉ ra một chương trình cụ thể nào đó
Trang 21Chương 2: Lược đồ Pay-Per-View an toàn cho dịch vụ Video dựa trên Web
hàng với tính mềm dẻo hơn Với lược đồ PPV, khách hàng có thể chọn xem các chương trình mà họ thích vào bất cứ lúc nào, và chỉ phải trả cho các chương trình mà họ đã xem [6]
Vấn đề quan trọng đối với dịch vụ PPV là cần chuẩn bị để giải quyết các tranh chấp có thể đối với chỉ phí dịch vụ, đặc biệt là trong trường hợp khi mà đường truyền bị ngắt
giữa buổi xem (vô tình hay hữu ý) Để cho dịch vu PPV dựa trên web có thể được áp dụng rộng rãi, một điều quan trọng là các khách hàng không bị nộp tiền sai do cơ chế trả tiền phức tạp hơn qua một môi trường ít tin cậy hơn
Trong chương này chúng tôi đề xuất một giao thức tính tiền đẹp cho dịch vụ video PPV dựa trên web Với giao thức này, dịch vụ video sẽ được chia thành các đơn vị nhỏ, người khách hàng cần chấp nhận bằng chứng mật mã, bằng chứng này cho phép tính tiền đúng dựa vào số đơn vị được cung cấp trong phiên xem Thêm vào đó, bằng cách thiết lập một quan hệ hệ quả một chiều, tính đúng đẳn của bằng chứng sẽ được duy trì một cách hiệu quả mà không cần có sự tham gia của bên thứ ba tin cậy Lược đồ của chúng tôi là đơn giản về góc độ yêu cầu lưu trữ và công suất tính toán đối với các khách hàng, nó có thể được cài đặt vào một thiết bị tài nguyên hiếm như thẻ smart card
Phần còn lại của chương được tổ chức như sau Chúng tôi thiết lập mô hình dịch vụ PPV dựa trên web và chỉ ra các yêu cầu an toàn ở mục sau Trong phần 3, chúng tôi trình bày một giao thức tính tiền PPV đơn giản là phân tích điểm yếu của nó Trong phần 4, chúng tôi đề xuất một giao thức tính tiền PPV tốt và trình diễn giải quyết bài toán tính cước với bằng chứng thu được trong giao thức Trong phần 5, chúng tôi đưa ra một phương án hiệu quả để duy trì tính đúng đẳn của bằng chứng Trong phần 6, chúng tôi đánh giá khả năng cài đặt giao thức trong smart card và hỗ trợ tính di động của khách hàng Phần 7 kết luận chương
Các ký hiệu cơ sở sau được sử dụng trong suốt chương này: X, Y: nối hai văn bản X và Y
H(X): hàm băm một chiều của văn bản X eK(X): mã văn bản X bằng khoá K
sSA(X): chữ ký số của A lên văn bản X bằng khoá ký bí mật SA SA và PA: khoá ký bí mật của A và khoá kiểm tra công khai
Trang 22A->B:X: A gửi văn bản X tới B
2.1.1 2 M6 hinh dich vu PPV
Giả sử nhà cung cấp dịch vụ S đưa ra dịch vụ PPV trên web Nếu khách hàng C định nhận được dịch vụ PPV từ S, thì C cần phải đăng ký với S Sau đó, C sẽ nhận được hoá đơn theo chu kỳ từ S vì dịch vụ video mà C yêu cầu từ 5 trong từng giai đoạn thu tiền, Nói
chung, chúng ta có thể chia dịch vụ PPV thành 4 giai đoạn:
Đăng ký Chọn (browse) Yêu cầu và xem
Trả phí và giải quyết tranh chấp
Tại giai đoạn 1, C cần phải cung cấp chứng chỉ khố cơng khai của mình được cấp bởi một CA nào đó (CA) [5] mà được tin cậy bởi 5S, và địa chỉ mail để nhận được hoá đơn
Sau khi kiểm tra thông tin đăng ký của C, S sẽ mở tài khoản cho C Tài khoản này có thể
được duy trì cho đến khi C huỷ bỏ đăng ký của mình hoặc chứng chỉ khoá công khai hết
hạn
Tại giai đoạn 2, C có thể đọc lướt catalog của các chương trình video được cung cấp
bởi S nó bao gồm tên, tóm tắt, thời gian của mỗi chương trình cũng như giá cần trả để
xem mỗi chương trình trong danh sách Sau khi đã chọn, C bước vào giai đoạn 3 khi gửi yêu cầu xem tới S Yêu cầu chứa đủ thông tin để cho phép Š tính tiền dịch vụ vào tài khoản của C trước khi băng video được tải về C sẽ phải trả phí ở giai đoạn 4 cho những dịch vụ mà đã yêu cầu từ S
Để cung cấp dịch vụ PPV an toàn, trước hết chúng ta cần định ra những hiểm nguy mà mỗi bên có thể phải chịu S, nhà cung cấp dịch vụ PPV, có thể phải chịu những rủi ro
sau:
S1 dòng video có thể bị thu bởi một người không đăng ký
S2 C chối bỏ yêu cầu dịch vụ
Trang 23Chương 2: Lược đồ Pay-Per-View an toàn cho dịch vụ Video dựa trên Web
Về phía mình, người đăng ký C cũng bị chịu những rủi ro sau:
C1 hacker có thể đóng giả C để nhận được dịch vụ miễn phí
C2 C phải trả tiền cho những dịch vụ mà anh ta không yêu cầu C3 C phải trả tiền nhưng khơng nhận được tồn bộ dịch vụ C4 C phải trả quá tiền cho dịch vụ đã yêu cầu
Để bảo vệ chống lại các nguy cơ S1 và C1, cần phải thực hiện việc xác thực thực thể giữa S và C, hơn nữa dòng video cần phải được truyền ở dạng mã Các nguy cơ còn lại có
thể được tổng kết như là việc chối bỏ đối với việc tính cước
Việc chối bỏ được định nghĩa như là "việc chối bỏ của một trong những thực thể trong cuộc truyền thông đối với sự kiện đã tham gia vào một phần hay tất cả cuộc truyền thông” [8] Các dịch vụ không chối bỏ được bảo vệ các bên tham gia chống lại bất kỳ một chối cãi giả nào về một sự kiện hay một hành động nào đã xảy ra Các dịch vụ chống chối bỏ cơ sở là [15]:
- Chống chối bỏ nguồn gốc (Non-repudiation of Origin- NRO), nó cung cấp cho người nhận bản tin bằng chứng nguồn gốc của bản tin để bảo vệ chống lại bất cứ một cố gắng nào của người khởi tạo muốn chối từ giả tạo rằng không gửi bản tin đi
- Chống chối bỏ việc nhận (Non-repudiation of Receipt - NRR), nó cung cấp cho người khởi tạo nguồn tin một bằng chứng của việc nhận thông tin để chống lại bất cứ một cố gắng nào của người nhận muốn chối từ giả tạo rằng đã không nhận được thông tin
Trong trường hợp của dịch vụ PPV trên web, mong muốn rằng những thuê bao không thể chối cãi việc nhận được các dịch vụ đã yêu cầu Mặt khác, những thuê bao
không bị trả tiền sai do một lỗi tính cước nào hoặc một lỗ hổng an toàn nào trong mạng
dịch vụ Không chối bỏ của việc tính cước (Non-repudiation of Billing- NRB) là dịch vu an toàn được thiết lập giữa nhà cung cấp dịch vụ và những thuê bao để cho phép giải quyết các tranh chấp đối với tính chuẩn xác của việc trả tiền dịch vụ
NRB có thể được xây dựng trong NRR bằng cách yêu cầu bằng chứng của việc nhận
Trang 24chương trình thời gian thực (live program) được truyền đi trong khi đang xảy ra) hoặc nếu như phí dịch vụ là không liên quan đến nội dung của thông tin được truyền (ví dụ như cước phí điện thoại) Thay vào đó, tính không chối bỏ của việc tính cước cho các dịch vụ này chủ yếu dựa vào độ dài của phiên liên lạc được kết nối Dịch vụ PPV được cung cấp với kết nối thời gian thực giữa nhà cung cấp dịch vụ và thuê bao được phục vụ Chương này có mục đích đề xuất một giao thức tính cước PPV đẹp, nó đem lại tính đúng đẳn của việc thu phí dịch vụ PPV là không chối bỏ được
Khi thuê bao C yêu cầu chương trình video từ S, anh ta cần phải cung cấp cho S một
bằng chứng mà có thể được sử dụng để chứng minh rằng C phải trả tiền một cách đúng đẳn vì những dịch vụ đã được cung cấp S có trách nhiệm duy trì những bằng chứng này
cho đến khi C giải quyết các hoá đơn Nếu C nghi ngờ ở hoá đơn, C có thể trao khiếu nại
cho S và S có thể sử dụng bằng chứng để kiểm tra xem C có bị tính tiền sai hay không Nếu cả hai không thể tự họ đạt được thoả thuận, thì trọng tài có thể tham gia để giải quyết
tranh chấp về tính đúng đắn của hoá đơn Trọng tài có thể yêu cầu S trình bày bằng chứng
để chứng minh cho dịch vụ đã cung cấp cho C Nếu S không thể trình bày bằng chứng, C có thể khoái thác trả tiền Ngược lại, C cần phải trả tiền
2.2_ Một giao thức thanh toán cước PPV đơn giản —-SPPV
Tính an toàn của giai đoạn 3 là chìa khoá cho dịch vụ PPV được thành công Đỏ là do dịch vụ PPV có cơ chế thanh toán phức tạp và thuê bao được tính tiền tương ứng với các chương trình video được yêu cầu trong thời hạn tính cước Do tranh cãi có thể xảy ra liên quan đến tính đúng đẳn của hoá đơn, nên quan trọng cần thiết lập một bằng chứng nào đó
tại giai đoạn này để có thể giải quyết tranh chấp ở giai đoạn 4 Một bằng chứng như vậy
thông thường được thể hiện bởi chữ ký số [9, 16] Tại đây chúng tôi trình bảy một giao thức tính tiền PPV đơn giản là SPPV
Giả sử C là thuê bao của S, thế thì S lưu giữ chứng chỉ khố cơng khai của C Chúng ta giả thiết rằng chứng chỉ khố cơng khai của S được công bố công khai cho mọi thuê bao
Trang 25Chương 2: Lược đồ Pay-Per-View an toàn cho dịch vụ Video dựa trên Web
Trong giao thức trên, Id là định danh của chương trình video, Pr là giá để xem chương trình này, Tg là ngày và thời gian mà yêu cầu dịch vụ mà C iam, Ks la khoá phiên mà S chuyển tới C để giải mã dòng video được truyền đi
Giao thức SPPV là hiệu quả về mặt cài đặt Khi tạo ra yêu cầu dịch vụ, thuê bao C trước hết tạo ra chữ ký số trên yêu cầu của anh ta như là một bằng chứng và gửi yêu cầu đã được ký tới nhà cung cấp dịch vụ S ở bước 1 Sau khí kiểm tra yêu cầu của C, S đưa ra khoá phiên Ks cho C tại bước 2 Tại đó, tính bí mật của Ks được bảo vệ bởi khoá mã công
khai của C trong khi tính xác thực của Ks được đảm bảo bằng chữ ký số của S Ưu điểm ở
đây là C và S không cần thoả thuận bí mật trước (càng nhiều bí mật được chia sẻ, càng khó quản lý các bí mật này) Bằng cách kiểm tra chữ ký số của 5S, C có thể chac chan rằng yêu cầu dịch vụ của C đã thành công và Ks là khoá phiên được sử dụng để bảo vệ dòng video sau đó Phúc đáp từ C đến S tai bước 3 làm cho S tin rằng C đã nhận được khoá Ks
và sẵn sành tiếp nhận dịch vụ
Giao thức SPPV cung cấp một bảo vệ hạn chế cho tính đúng đẳn của việc tính tiền dịch vụ PPV Một khi S lưu giữ yêu cầu dịch vụ được ký bởi C, C không thể chối bỏ được phí dịch vụ Nói một cách khác, C buộc phải trả tiền trước khi được xem thực sự chương trình, cái đó là không tốt đối với C trong giao tác Sau khi đưa ra yêu cầu dịch vụ, C buộc phải đợi dịch vụ từ S Tuy nhiên, C có thể không nhận được dịch vụ một cách đầy đủ nếu như
truyền thông bị ngắt bất ngờ, ngoài khả năng của C để huỷ bỏ yêu cầu dịch vụ trong
trường hợp này Không có sự đồng ý của S, C buộc phải trả tiền vì bất kỳ một dịch vụ nào được yêu cầu, ngay cả khi dịch vụ khơng hồn thành Cái đó cần được quan tâm tiếp trong SPPV Mặt khác, C có thể chấm dút dịch vụ trước khi kết thúc và từ chối trả tiền nếu phát hiện rằng chương trình không thú vị hoặc anh ta có thể không xem chương trình vì một lý do nào khác
2.3 Giao thức thanh toán PPV tốt - FPPV
Như chúng tôi đã chỉ ra ở phần 3, giao thức SPPV không giải quyết được bài toán tính cước nếu có ngắt bất ngờ về truyền thông giữa phiên xem Hoàn cảnh như vậy đặt người thuê bao vào tình huống không đẹp, đặc biệt là không hay trong một mạng mà dải thông không được đảm bảo như Internet Phần này trình bày một giao thức tính tiền tốt
Trang 26Chuỗi băm một chiều được kiến thiết bởi cách áp dụng đệ qui chuỗi đầu vào bởi một
hàm băm một chiều [10], được ký hiệu như là Hi(x) = H(Hi-1(x)) (=1, 2, ) với H0(x) =x
Theo như tính chất của hàm một chiều, nếu x được chọn ngẫu nhiên và chuỗi băm được giữ bí mật, khi cho Hi(x) thì về mặt tính tốn khơng thé tìm được đầu vào Hi-1(x) trừ chính người bắt đầu chuỗi băm Điều này tạo nên cơ sở cho giao thức trả tiền PPV đẹp của chúng ta là FPPV Người thuê bao C có thể gộp giá trị băm một chiều được xếp chuỗi trong yêu cầu xem đã được anh ta ký Sau đó C phát hành các giá trị băm được xếp chuỗi tại những khoảng thời gian nhất định trong quá trình dịch vụ 5 chỉ cần lưu trữ giá trị băm cudi cling được phát hành bởi C như là bằng chứng để chứng minh về thời gian cung cấp dịch vụ cho Cc
2.31 Giao thức
Trong catalog các chương trình video được cung cấp bởi S, kích thước của đơn vị tính
cước L (ví dụ như 1 phút, 5 phút, hay 10 phút, ) và số các đơn vị m của mỗi chương trình
được chỉ ra Giả sử C đã xem catalog và chọn chương trình video để xem Khi C yêu cầu xem chương trình, trước hết C chọn một số ngẫu nhiên n, sau đó tạo ra m giá trị băm theo chuỗi như sau:
Hi(n) = H(Hi-1(n)) (i=1,2, , m)
vdi HO(n) = n C giữ H0(n), H1(n), , Hm-1(n) bí mật Sau đó C khởi tạo giao thức yêu cầu xem như sau:
1 C @®S: Id, Pr, L, m, Hm(n), Tg, sSC(S, Id, Pr, L, m, Hm(n), Tg)
2 S@C: ePC(Ks), sSS(C, Id, Ta, Ks)
3 C®S: H(C, S, Id, Tg, Ks)
Sau khi C tạo ra yêu cầu xem thành công, C sẽ công bố Hi(n) ( ¡ = m-1, m-2, ) cho S vào những khoảng thời gian định trước (cách nhau L}) trong quá trình nhận dịch vụ (C có thể sử dụng số các đoạn video mà anh ta nhận được từ S như là một cơ chế đếm) S sẽ
kiểm tra đằng thức H(Hi(n)) = Hi+1(n) Nếu đúng, S sẽ ghi đè các Hi+1(n) trước đó và ghi Hi(n) hiện tại như là một mẩu của bằng chứng, và cung cấp đơn vị tiếp theo của dịch vụ
Trang 27Chương 2: Lược đồ Pay-Per-View an toàn cho dịch vụ Video dựa trên Web
Nếu truyền thông bị ngắt đột ngột giữa chừng, dịch vụ có thể tiếp tục từ điểm mà
đã bị dừng sau khi đường truyền được khôi phục Giả sử dịch vụ bị ngắt sau khi C đã phát hành giá trị băm thứ j trong chuỗi là Hm-j(n) C chỉ cần khởi tạo giao thức kết nối lại như
sau:
1, C ® S: Id, Tg, j, Hm-j(n)
2 S ®C: ePC(Ks), sSS(C, Id, Tg, Ks) 3 C@®5S: H(C, S, Id, Tg, Ks)
Một giới hạn cuối cùng được định nghĩa cho yêu cầu kết nối lại hợp lệ trong chính sách dịch vụ Sau khi nhận được yêu cầu kết nối lại của C, 5 sẽ kiểm tra xem yêu cầu có được đưa ra trước giới hạn cuối cùng hay không và Hm-j(n) có trùng với giá trị băm cuối cùng trong chuỗi mà S nắm được Nếu thành cơng, khố phiên Ks sẽ được thiết tập lại (để tránh phải mã lại dòng video, S có thể chọn chính khoá phiên là khoá đã được sử dụng trước khi ngắt quãng), và S sẽ tiếp tục cung cấp dịch vụ từ đơn vị thứ j
Cơ chế trên có thể được hỗ trợ một chính sách tính tiền mềm dẻo hơn trong địch vụ
PPV Những người thuê bao có thể được phép chấm dứt dịch vụ trước khi kết thúc nếu họ thấy chương trình là không thú vị hoặc họ không thể xem hết chương trình vì một lý do gì khác, và họ chỉ phải trả tiền cho phần băng mà họ đã xem Lược đồ tính tiền này không cung cấp tính đẹp một cách đầy đủ vì đơn vị dịch vụ cuối cùng có thể vẫn bị tranh cãi nếu đường truyền bị ngắt trước khi kết thúc dịch vụ Tuy vậy, nếu như nhà cung cấp dịch vụ S chọn kích thước đơn vị trả tiền L thích hợp, thì việc mất có thể của một đơn vị dịch vụ phải
trả tiền có thể giới hạn ở mức không đáng kể
2.3.2 Giải quyết tranh chấp
S, nhà cung cấp dịch vụ PPV gửi hoá đơn đến thuê bao C theo định kỷ Nếu C nghỉ
ngờ về giá cước, C có thể gửi kiến nghị đến S và S sẽ sử dụng bằng chứng thụ được tại giai đoạn 3 để kiểm tra xem C có bị trả tiền sai không Nếu cả hai bên không thể tự thoả thuận
được, người trọng tài (bên thứ ba) có thể tham gia để giải quyết tranh chấp về tính đúng
đắn của hoá đơn Trọng tài có thể hỏi S để đưa ra bằng chứng để chứng minh về dịch vụ đã
Trang 28Bên cạnh yêu cầu xem được ký bởi C, giá trị bắm chuỗi cuối cùng được công bố bởi C trong dịch vụ PPV là quan trọng để giải quyết vấn đề thanh toán tiền Ví dụ, bằng chứng của dịch vụ đã kết thúc với độ dài L*m được cung cấp cho C là
S, 1d, Pr, L, m, Hm(n), Tg, sSC(S, Id, Pr, L, m, Hm(n), Tg), H0(n) Sau khi nhận được bằng chứng trên từ 5S, trọng tài sẽ kiểm tra
- hoặc chữ ký của C là sSC(S, Id, Pr, L, m, Hm(n), Tg) la dung
- hoặc Hm(H0(n)) = Hm(n) với H0(n) là giá trị băm chuỗi cuối cùng thu được bởi S
Nếu phép kiểm tra đầu tiên là đúng, trọng tài sẽ tin rằng C đã tạo ra yêu cầu xem video Nếu kiểm tra thứ hai là đúng, trọng tài sẽ kết luận rằng C đã được cung cấp dịch vụ trong thời gian L*m và C có trách nhiệm phải trả giá Pr tương ứng
Vì dịch vụ có thể bị ngắt (vô tình hay hữu ý) trước khí kết thúc, chính sách tính cước nên được hoạch định cho dịch vụ chưa hoàn thành Giả sử dịch vụ trên được ngắt sau khi S
nhận được giá trị băm thứ j trong chuỗi là Hm-j(n) từ C Trọng tài có thể làm kiểm tra
tương tự như trên xem có Hj(Hm-j(n)) = Hm(n) hay không Nếu có, trọng tài sẽ kết luận rằng C đã được cung cấp dịch vụ chưa đầy đủ trong khoảng L*j Phụ thuộc vào chính sách tính cước cho dịch vụ chưa xong, C sẽ phải trả tiên một cách tương ứng
2.4 Duy trì tính đúng đắn của bằng chứng
Để hỗ trợ hố đơn khơng chối được trong dịch vụ PPV, các chữ ký số được sinh ra và lưu giữ như bằng chứng không chối bỏ được trong các cơ chế SPPV và FPPV Do các khoá
chữ ký số có thể bị tổn thương và tính đúng đẳn của các chữ ký số có thể bị đặt câu hỏi,
các cơ chế an toàn thêm vào có thể được áp dụng cho các chữ ký số [17]
Biện pháp trực tiếp để đảm bảo tính không chối bỏ được của chữ ký số là yêu cầu người sử dụng tương tác với một thẩm quyền tem thời gian (time-stamping authority - TS) tin cậy trực tuyến, để nhận được mỗi chữ ký số mới được sinh ra đều có tem thời gian [1,
4, 11, 14] sao cho có bằng chứng thêm để chứng minh rắng chữ ký được sinh ra trước khi
Trang 29Chương 2: Lược đồ Pay-Per-View an toàn cho dịch vụ Video dựa trên Web
Phương án hiệu quả để đảm bảo các chữ ký số như là các bằng chứng không chối bỏ được đã được đề xuất trong [17], trong đó hai kiểu khác nhau của khoá chữ ký đã được
định nghĩa
- khoá ký có thể huỷ bỏ- chứng chỉ khoá kiểm tra tương ứng được phát hành
bởi CA và có thể bị huỷ bỏ một cách thông thường
- khố ký khơng bị huỷ bỏ- chứng chỉ khoá kiểm tra tương ứng được phát hành bởi chính người sử dụng và được đánh đấu thời gian bằng người thẩm quyền tem thời gian Các chứng chỉ như vậy không thể bị huỷ bỏ trước khi chúng hết hạn
Khoa ký có thể huỷ bỏ được sử dụng như là các khoá chủ thời gian dài để phát hành
các khoá kiểm tra không bị huỷ, trong khi các khố ký khơng bị huỷ được sử dụng như là các khoá tạm thời để ký các tài liệu điện tử Các chữ ký số được sinh ra theo cách như vậy sẽ còn giá trị cho đến khi các chứng chỉ khoá kiểm tra không bị huỷ tương ứng hết hạn, va
có thể được bỏ qua không đóng tem thời gian bởi nhà thẩm quyền tem thời gian trong các
giao dịch trực tuyến
Phương án thứ hai có thể cải tiến đáng kể tính hiệu quả của hàng loạt giao dịch trực tuyến Tuy nhiên, do việc sinh các cặp khoá kiểm tra/ký không bị huỷ bỏ cần nhiều tính toán và lưu trữ hơn, đường như không thể cài đặt chúng trong smard card được Bây giờ chúng tôi đưa ra một phương pháp mới để duy trì tính đúng đẳn của bằng chứng của các thuê bao đi kèm với smart card trong dịch vụ PPV
Ý tưởng đẳng sau phương án của chúng tôi là thiết lập một liên kết tuần tự một chiều cho các yêu cầu xem được ký bởi thuê bao C Liên kết tuần tự một chiều có tính chất
là một thay đổi bất kỳ đối với thứ tự các chữ ký của C hay việc chèn các chữ ký mới vào
liên kết sẽ bị phát hiện Nếu C muốn huỷ bỏ khoá kiểm tra của mình được sử dụng trong dịch vụ PPV, C chỉ cần yêu cầu nhà cung cấp dịch vụ S phê chuẩn yêu cầu xem được ký
cuối cùng bởi C Cùng với phê chuẩn của S, C có thể từ chối các yêu cầu xem khác mà đã
được ký bằng khoá đã huỷ bỏ của anh ta nhưng không ở trong liên kết đã được phê chuẩn Cho nên, S không chấp nhận yêu cầu xem của C được ký bởi khoá đã bị huỷ một khi S đã khẳng định yêu cầu huỷ bỏ của C
Trang 30S2 = sSC(Req2, H(s1))
Sỉ = sSC(Reqi, H(si-1))
Với 1 < j]J¡, S sẽ kiểm tra xem si có tính chất kết nối với si-1 hay không trước khi chấp nhận yêu cầu xem thứ j của C Chúng ta có các khẳng định sau
Khẳng định 1 s1, s2, si là tuần tự Điều đó có nghĩa là với 1 < j 1i, si được sinh ra sau so với si-1
Chứng minh: Vì H(si-1) là một phần của văn bản được ký trong si = sSC(Reqi, H(si- 1)), H(si-1) là giá trị cố định Theo như định nghĩa của hàm băm một chiều, sẽ là không thể tính được nếu tìm đầu vào của nó là si-1 Cho nên, si-1 cần phải được tạo ra trước khi sinh si Cũng với lý do đó, sj-1 (j = i-1, , 2) cần phải được sinh ra trước khi sinh sj Cho nên, s‡, s2 , , sỉ là tuần tự
Khẳng định 2 s1, s2, ., si là liên kết một chiều Điều đó có nghĩa là, với 1 < j ) ï, về mặt tính tốn khơng thể sinh ra chữ ký đúng s” được liên kết giữa sj và sj-1
Chứng minh Với 1 < j1 ¡, giả sử s” = sSC(Req”, H(sj-1)) là chữ ký được chèn vào giữa
Sj-1 = sSC(Reqj-1, H(sj-2)) và sj = sSC(Reqj, H(sj-1)) s“ cần thoả mãn điều kiện H(s’) = H(sj-1) trong khi sN9 sj-1 Theo định nghĩa của hàm băm một chiều, sé không thể tính được giá trị này Cho nén, s1, $2, ., si là liên kết một chiều
Nếu C nghĩ rằng khoá ký của anh ta SC có thể bị tổn hại, hoặc anh ta không muốn
yêu cầu dịch vụ từ S thêm nữa sau khi C đã làm yêu cầu xem thứ ¡, C có thể huỷ chứng chỉ khố cơng khai của mình và đệ trình tới S khi đăng ký bằng cách khởi tạo giao thức huỷ bỏ
sau:
1 C@®S:si 2 S ®C: sSS(si)
Trang 31Chương 2: Lược đồ Pay-Per-View an toàn cho dịch vụ Video dựa trên Web
Khi C nhận được hoá đơn từ S và khẳng định rằng sj là chữ ký giả mạo bởi ai đó bằng SC sau khi chứng chỉ khố cơng khai được huỷ tại S, nhưng S không đồng ý, C có thể cung cấp bằng chứng sSS(si) cho trọng tài để chứng minh rằng S đã công nhận yêu cầu huỷ bỏ của C Sau đó trọng tài sẽ yêu cầu S trình ra liên kết tuần tự một chiều của C là sk, sk+1 , , sỉ được sinh ra bằng SC từ đầu của quá trình tính cước để kiểm tra xem sj có là chữ ký trong liên kết hay không Nếu không, C có thể chối bỏ nó Ngược lại, C có tránh nhiệm phải trả phí tương ứng
Ưu điểm chính của phương án này là không có sự tham gia của bên tin cậy thứ ba trong quá trình huỷ khoá Cho nên, phương án này sẽ rất hiệu quả trong ứng dụng khi mà liên kết thứ tự một chiều của các chữ ký được thiết lập
2.5 Hỗ trợ khả năng di động của người thuê bao
Để thu hút các thuê bao sử dụng thường xuyên hơn dịch vụ video, cần tạo điều kiện để các thuê bao có thể yêu cầu dịch vụ PPV một cách an toàn mà không phụ thuộc vào vị trí vật lý của họ Bây giờ chúng tôi đánh giá yêu cầu lưu trữ và cơng suất tính tốn để thực hiện giao thức FPPV trong smart card
Thuê bao C cần phải lưu giữ:
- các khoá mật mã SC, P-C và VS (128 byte mỗi cdi), Ks (20 byte)
- các tham số yêu cầu xem: S (20 byte), Id (10 byte), Pr (5 byte), Tg (14
byte), L và m ( mỗi cái 2 byte)
Bộ nhớ được ước lượng cho các đại lượng trên là 457 byte Nhu cầu chính cho lưu
giữ là chuỗi băm được sinh ra khi làm yêu cầu xem Giả sử đơn vị trả tiền nhỏ nhất là L = 1
phút, cận trên của một chương trình video là 3 giờ, thì độ dài lớn nhất của chuỗi băm
m=180 Mỗi giá trị băm dài 20 byte, cho nên 180*20=3600 byte được yêu cầu để lưu giữ cả chuỗi băm, và bộ nhớ tổng cộng được yêu cầu trong giao thức FPPV là vào khoảng 457 + 3600 = 4057 byte Như vậy, yêu cầu lưu trữ là có thể đối với các smart card hiện tại với kích thước EEPROM trung bình từ 4 K đến 8 K byte
Thực ra, chúng ta có thể giảm việc lưu trữ chuỗi giá trị băm bằng cách trả giá bởi một công suất tính toán nào đó nếu chuỗi băm là rất dài Ví dụ, chúng ta có thể chỉ lưu trữ 9 giá trị băm là H0(n), H20(n), H40(n), ., H160(n) trong chuỗi giá trị băm trên Khi đó,
các giá trị băm khác có thể tính được dễ dàng Như thế, bộ nhớ cho chuỗi giá trị băm có
Trang 32Khi thuê bao C thi hành yêu cầu xem, công suất tính toán chính của anh ta sinh ra chuỗi giá trị băm và chữ ký số, thực hiện phép giải mã khố cơng khai và kiểm tra chữ ký Với công nghệ smart card hiện tại [12], các phép toán này cho độ dài video thông thường (giá trị m trung bình) có thể kết thúc trong vòng vài giây Sau khi tạo yêu cầu thành công,
C cần phải đưa ra giá trị băm chuỗi cho mỗi đơn vị trả tiền trong suốt thời gian hưởng dịch
vụ Dựa vào yêu cầu lưu trữ trên đối với chuỗi băm, C cần phải thực hiện nhiều nhất là 19 lần phép toán băm để nhận được giá trị băm cần thiết Ví dụ, nếu C cần đưa ra H179(n) thì có thể tính từ H160(n), cái này chỉ mất một vải mili giầy Như chúng ta giả thiết đơn vị trả tiền nhỏ nhất là L =1 phút, giá trị băm cần thiết luôn sẵn sàng được đưa ra trong quá trình hưởng dịch vụ
Các phân tích trên đây chỉ ra rằng giao thức FPPV là nhẹ nhàng và có thể cài đặt
trong smart card để hỗ trợ tính di động của các thuê bao PPV
2.6 Kêtluận
Dịch vụ video PPV trên web có những đặc tính sau so với truyền hình cáp hiện tại: - Các thuê bao có thể chọn xem các chươn trình mà họ quan tâm
Các thuê bao có thể xem các chương trình này vào thời gian bất kỳ
- Các thuê bao chỉ phải trả tiền cho những gì mà họ đã xem
Chương này đề xuất một lược đồ PPV an toàn cho dịch vụ video dựa trên web Các điểm nổi bật của lược đồ này là:
- Tính không chối bd cla hoa don - tinh dun dan clia hoa don la khdng phải ban cai
- Tính di động của thuê bao- các thuê bao có thể yêu cầu dich vu PPV một cách an toàn bởi việc sử dụng thẻ smart card của riêng họ
- Tính thực tế và tính hiệu quả- tính đúng đẳn của bằng chứng có thể được duy
trì mà không cần sự tham gia của bên tin cậy thứ ba
2.7 Tài liệu tham khảo
Trang 33Chương 2: Lược đồ Pay-Per-View an toan cho dich vu Video da trén Web
2 N Asokan, V Shoup and M Waidner Asynchronous protocols for optimistic fair exchange Proceedings of 1998 IEEE Symposium on Security and Privacy, pages 86-99, Oakland, California, May 1998
3 F Bao, R H Deng and W Mao Efficient and practical fair exchange protocols with off-line TTP Proceedings of 1998 IEEE Symposium on Security and Privacy, pages 77- 85, Oakland, California, May 1998
4 K S Booth Authentication of signatures using public key encryption Communications of the ACM, 24 (11):772-774, November 1981
5 CCITT Recommendation X.509: The directory- Authentication framework, November 1988
6 D Cunningham and O’Mahony Secure pay-per-view testbed Proceedings of 1995 IEEE International Conference on Multimedia Computing and Systems, May 1995
7 M Franklin and M Reiter Fair exchange with a semi-trusted third party Proceedings of 4th ACM Conference on Computer and Communications Security, pages 1-6, Zurich, Switzerland, April 1997
8 1SO 7498-2 Information processing systems- Open systems interconnection- Basic reference model- Part 2: Security architecture International Organization for Standardisation, 1989
9 ISO/IEC 13888-3 Information technology- Security techniques- Non- repudiation- Part 3: Mechanisms using asymmetric techniques ISO/IEC, 1997
10 L Lamport Password authentication with insecure communication Communications of the ACM, 24(11): 770-772, November 1981
11 A.J Menezes, P C van Oorschot and S A Vanstone Handbook of applied cryptography CRC Press, 1996
12 D Naccache and D M’Raihi Cryptographic smart cards IEEE Micro, 16(3): 14-24, June 1996
Trang 3414 B Schneiner Applied cryptography- Protocols, algorithms, and source code in C New York: John Wiley & Sons, 1996 (second edition)
15 J Zhou and D Gollmann A fair non-repudiation protocol Proceedings of 1996 IEEE Symposium on Security and Privacy, pages 55-61, Oakland, California, May 1996,
16 J Zhou and D Gollmann Evidence and non-repudiation Journal of Netwok and Computer Applications, 20 (3): 267-281, London: Academic Press, July 1997
Trang 35Chương 3: Chuẳn mã dữ liệu GOST 28147-89
CHUO'NG 3 CHUAN MA DU LIEU GOST 28147-89
3.1 Mô tả thuật toán
Tại Liên bang Nga có một chuẩn mật mã duy nhất cho các hệ thống thông tin Nó là bắt buộc cho các cơ quan nhà nước, tổ chức, xí nghiệp, ngân hàng và các công sở khác có
hoạt động gần liền với việc đảm bảo an tồn thơng tin quốc gia Đối với các tổ chức khác
hay cá nhân thì GOST 28147-89 mang tính khuyến cáo To Nz Ni a Te 4 32 vel 32 wl yy K Cc + Xo(Ko) Xi(Ki) 32 well se Ss | S; S |S, |S Xe(Ke) X7(Kz7) ỶỲ Ỳ C2 ® -4 >
Chuẩn này được thiết lập có tính đến kinh nghiệm trên thế giới, nói riêng, đã chú ý đến những điểm yếu và khả năng không thực hiện được của DES, vì vậy việc áp dụng chuẩn có tiện hơn Thuật toán mã hoá được xây dựng theo cấu trúc Feistel
Trang 36A [+] B - cộng theo modulo 232; A {+} B - cộng theo modulo 232-1;
Thuật toán có một số chế độ làm việc Trong mọi chế độ đều sử dụng khoá W có 256 bit, đó là 8 số có 32 bit: W=X(7)X(6)X(5)X(4)X(3)X(2)X(1)X(0)
Khi giải mã chúng ta cũng dùng khoá đó
Chế độ làm việc cơ sở của thuật toán là chế độ thay thế đơn giản Bây giờ chúng ta sẽ mô tả chế độ đó Các ký hiệu trên hình vẽ: N1, N2- các thanh ghi lưu 32 bit; S1- tổng theo modulo 232; S2- tổng theo modulo 2;
R- thanh ghi dịch vòng 32-bit;
K - thiết bị nhớ khoá gồm 256 bit được chia thành 8 từ 32-bit; S - khối thay thế gồm 8 hộp thế S1, , S8
Giả sử bản rõ được chia thành các khối có 64 bit, chúng được ký hiệu là TO Thủ tục mã gồm 32 vòng Đầu tiên, khoá k có 256 bit được đưa vào thiết bị nhớ khoá, tạo thành 8 khoá con ki: k=k7k6 k1
Day các bit của TO được phân thành hai nửa có 32-bit (trái và phải): TO =(a1(0), , a32(0), b1(0), ,b32(0)) Các bit trong mỗi nửa được lấy ra theo thứ tự ngược lại để tạo nên hai từ có 32 bit là a(0) và b(0): a(0) = (a32(0), a31(0), ,a1(0)), b(0) = (b32(0), b31(0), ,b1(0))
Hai vecto 32 bit a(0) và b(0) được đưa vào các thanh ghi lưu N1 và N2 trước vòng
mã thứ nhất a(0) trong N1 và b(0) trong N2
Giả sử a(J) = (a32(), a310), a1Q)), BÉ) = (b32(), b310), .,b10)) là nội
Trang 37Chương 3: Chuẩn ma di liệu GOST 28147-89 với j =1 24 4Q) = ƒ(4Œ—])*X;j—ttmods)) ® ðỢ ~ 0€) = aÚ—D với j=25 31 a(j) = f(a — +32— /(mods))® 0 ~ ) 0) = a~D với j=32 a(32) = a(31) b(32) = f(a(3l) + ko) 8 bG1)
Viéc tinh ham f trai qua 2 giai doan:
+ @ giai doan thứ nhất, tham số x có 32 bit được chia thành 8 vecto có 4 bit Bộ 4 bịt thứ ¡ được ánh xạ thành 4 bit nhờ các phép thé Sĩ (i=1 8) Sĩ là các
phép hoán vị của tập các số nguyên từ 0 đến 15 Như vậy S(x) là một vecto
cé 32 bit
« Giai đoạn thứ hai: nhờ thanh ghi R, S(x) được dịch vòng về bên trái 11 vị trí Kết quả của phép mã TO là TC được lấy ra từ các thanh ghi lưu N1 và N2 sau 32 vòng mã theo thứ tự từ trái qua phải
TC=(a1(32), a2(32), , a32(32), b1(32), b2(32), ,b32(32))
Chú ý: các S-box có thể được sử dụng làm khoá thời gian dài
3.1.1 So sánh GOST 28147-89 của Nga và Rijndael
Ngày 2 tháng 10 năm 2000, bộ thương mại Mỹ đã tổng kết cuộc thi tuyển chọn
Trang 38Đây là bài báo của hai tác giả người Nga, E A Primenko (Bộ mơn an tồn thơng tin, trường Đại học Tổng hợp Matxcơva) và A A Vinokurov (Bộ mơn tốn và lập trình bảo vệ thông tin, trường HUUE), được đăng tháng 2 và tháng 6 năm 2001
DES được thiết kế tại phòng nghiên cứu của hãng IBM vào nửa đâu những năm 70 của thế kỷ 20 và thuộc về họ các mã pháp khởi nguồn từ thuật toán Lucifer cũng được nghiên cứu tại nơi đó một số năm trước Kiến trúc này, có tên gọi là mạng Feistel có vị trí quan trọng trong mật mã học cho đến ngày hôm nay: phần lớn các mã pháp hiện đại đều có dạng này, trong đó có cả chuẩn mã của Nga GOST 28147-89 Trong bài viết này sẽ phân tích so sánh GOST 28147-89 và Rijndael, trên cơ sở đó tiến hành việc so sánh phương pháp cổ điển và hiện đại trong việc xây dựng mã khối [1]
Trước khi so sánh trực tiếp các mã pháp, cần phải chú ý đến giải pháp kiến trúc đặc trưng cho các mã pháp của những năm 70 đã nhắc tới ở trên Vào thời gian đó, công nghệ vi xử lý mới có những bước đi ban đầu trên con đường phát triển như hiện nay, khi đó mới có sản xuất công nghiệp những vi mạch có độ tích hợp nhỏ và vừa, vì vậy tiêu chuẩn chủ yếu trong thiết kế là đảm bảo độ bền vững chấp nhận được với các yêu cầu khắc nghiệt về
độ phức tạp khi thể hiện Vào thời điểm này, khả năng kỹ thuật cơ sở để thể hiện thuật
toán đã được tăng lên nhiều lần, và khả năng mã thám chúng cũng tăng lên với tỷ lệ đó Cho nên, các yêu cầu ban đầu về tính tiết kiệm khi thể hiện thuật tốn khơng còn quan trọng nữa, trong khi đó yêu cầu về tính bền vững lại tăng lên Chính trong ngữ cảnh đó xảy ra các thay đổi hiện đại trong các phương cách xây dựng mã khối có chìa khoá mật
Chỉ tiêu GOST 28147-89 Rijndael
Kích thước khối, bit 64 128, 192, 256
Trang 39Chương 3: Chuẳn mã dữ ligu GOST 28147-89 256)
Cấu trúc vòng Đơn giản Tương đối phức tạp
Các phép toán được sử dụng Chỉ có phép cộng, thay thế và Sử dụng rộng rãi các phép toán phép địch trên trường hữu hạn
Tính tương đương của biến đổi Chính xác đến thứ tự của các Chính xác đến vecto của các phần thuận và nghịch khoá vòng tử khoá, bảng các thay thế và
hãng số của thuật toán
Bảng 3-1 Các đặc tính so sánh được của các thuật toán GOST 28147-89 và Rijndael
3.1.1.1 So sánh các đặc tính chung của 2 thuật toán
Các đặc tính so sánh được của thuật toán GOST 28147-89 và Rijndael đã được dẫn ra ở Bảng 3-1 Khác với thuật toán của Nga, kích thước khối mã và kích thước khoá trong thuật toán Rijndael có thể thay đổi, điều này là do trong nó có sử dụng cấu trúc "hình vuông” Tính chất này cho phép thay đổi độ bền vững cũng như tốc độ thực hiện thuật toán theo sự phụ thuộc vào các yếu tố bên ngoài khi cài đặt trong một giới hạn nhất định, tuy nhiên không rộng lắm, đó là số các vòng, và cùng với nó là tốc độ trong các trường hợp khác biệt nhau nhất vào khoảng 1,4 lần
3.1.1.2 So sánh các nguyên tắc kiến trúc chung
Việc phân tích thuật toán GOST 28147-89 cũng như phần lớn các mã pháp thuộc thế hệ đầu tiên được thiết kế vào những năm 70 và nửa đầu những năm 80, được dựa trên
kiến trúc mạng Feistel cân bảng [2] Nguyên tắc chính của kiến trúc này là cả quá trình mã
gồm một loạt các vòng có kiểu giống nhau Tại mỗi vòng, khối được mã T được chia thành hai nửa (T0, T1), một trong chúng được thay đổi bằng phép cộng modulo 2 theo từng bit với giá trị được làm ra từ phần còn lại và bộ phận khoá vòng với sự giúp đỡ của hàm mã Giữa các vòng, hai phần của khối đổi chỗ cho nhau, như vậy, tại vòng sau, phần của khối thay đổi ở vòng trước sẽ không thay đổi và ngược lại Lược đồ thuật toán GOST 28147-89 ở
Hình 3-1 Kiến trúc như vậy cho phép dễ dàng nhận được phép giải mã từ một hàm mã
phức tạp, và có thể là không có ngược Đặc tính quan trọng của phương pháp này là tại
Trang 40o f(X,k) rs : oO WY f(X2,k2) ay WY £(X32,k32) a) ¥ T’ ky XI X2 k32 X32 T,T' - khối rõ và khối mã kị _ - thành phần khoá vòng NLT XI ị NLT X2 tí NLT’ XR b)
Xi - trạng thái của quá trình mã sau vòng thứ i
f(X,k)- hàm mã của thuật toán GOST
ị
ki
Kp
kR+i
NLT, NUT°- biến đổi phí tuyến thông thường và biến đổi phi tuyến cho vòng cuối cùng của
thuật toán Rijndael
R - số vòng của Rijndael (10, 12 hay 14)
Hình 3-1 Lược đồ biến đổi dữ liệu khi mã theo thuật toan GOST (a) va Rijndael (b)
Ma Rijndael có một kiến trúc khác về mặt nguyên tắc, nó được gọi là "hình vuông” theo tên của mã pháp đầu tiên có cấu trúc kiểu này cũng do chính các tác giả của Rijndael thiết kế ra một số năm trước đây Kiến trúc này dựa trên các biến đổi trực tiếp khối được mã khi được biểu diễn ở dạng ma trận của các byte Việc mã cũng gồm một loạt các bước
có kiểu giống nhau, đó là các vòng, nhưng tại mỗi vòng cả khối đều được biến đổi chứ
không có phần nào của khối được giữ nguyên Như vậy, sau một vòng cả khối được mã, cho nên, để đảm bảo độ phức tạp tương ứng và tính phi tuyến của biến đổi, số các bước yêu cầu như vậy sẽ ít hơn 2 lần so với cấu trúc Feistel Mỗi vòng bao gồm từng bit theo modulo 2 giữa trạng thái hiện tại của khối được mã và thành phần khoá vòng, sau đó là
một phép biến đổi phi tuyến phức tạp của cả khối, biến đổi phi tuyến này được kiến thiết từ