Xác suất và thuật toán xác suất

Một phần của tài liệu Tài liệu Lý thuyết mật mã và An toàn thông tin pptx (Trang 34 - 40)

2.2.1. Khái niệm xác suất.

Ta xét một tập hợp Ω , đ−ợc gọi là không gian các sự kiện sơ cấp (hay không gian mẫu). Các phần tử của Ω, tức các sự kiện sơ cấp hay các mẫu, có thể đ−ợc xem nh− các kết quả có thể có (và loại trừ lẫn nhau) của một thực nghiệm nào đó. Về sau ta chỉ xét các không gian rời rạc, tức tập Ω là hữu hạn, giả sử Ω={s s1, ,...,2 sn}.

Một phân bố xác suất P trên Ω đ−ợc định nghĩa là một tập các số thực không âm P = { p1, p2,...,pn} có tổng ∑pi = 1. Số pi đ−ợc coi là xác suất của sự kiện sơ cấp si.

Một tập con E⊆ Ω đ−ợc gọi là một sự kiện . Xác suất của sự kiện E đ−ợc định nghĩa bởi p (E ) = ( )

s E

p s

∑ .

Giả sử E là một sự kiện trong không gian xác suất Ω. Ta định nghĩa sự kiện bù của E, ký hiệuE, là sự kiện gồm tất cả các sự kiện sơ cấp

trong Ω mà không thuộc E . Dùng các thuật ngữ của lý thuyết tập hợp, ta có thể định nghĩa cácsự kiện hợp E1 ∪E2 và sự kiện giao E1

∩E2 của hai sự kiện E1 và E2 bất kỳ. Và ta có:

1) Giả sử E là một sự kiện. Khi đó 0 ≤ p (E ) ≤ 1 và p(E) = 1 - p (E ). Ngoài ra, p (Ω) = 1 và p (∅) = 0.

2) Giả sử E 1 và E 2 là hai sự kiện. Nếu E1 ⊆E 2 thì p (E1) ≤ p (E2) . Và có p (E1∪E2) + p (E1 ∩E2) =p (E1) + p (E2) . Do đó p (E1∪E2) =p (E1) + p (E2) khi và chỉ khi E1 ∩E2 = ∅, tức là khi E1 và E2 là hai sự kiện loại trừ lẫn nhau.

Cho E1 và E2 là hai sự kiện, với p (E2) > 0. Ta định nghĩa xác suấ có điều kiện của E

t 1 khi có E2 , ký hiệu p E E( 1 2), là 1 2 1 2 2 ( ) ( ) ( ) p E E p E E p E . ∩ =

Từ định nghĩa ta suy ra công thức Bayes :

( ) ( )1 ( )( 2 1) 1 2 2 . . p E p E E p E E p E = .

Ta nói hai sự kiện E 1và E2 là độc lập với nhau, nếu p (E1 ∩E2) = p(E1).p(E2). Khi đó ta có: p E E( 1 2)=p E( )1 và p E E( 2 1)=p E( 2).

Giả sử Ω là một không gian mẫu với một phân bố xác suất P . Ta gọi một đại l−ợng ngẫu nhiên ξ trên Ω là một ánh xạ gán cho mỗi s ∈Ω

một số thực ξ (s ). Hiển nhiên, nếu ξη là các đại l−ợng ngẫu nhiên trên Ω, thì ξ+η, ξ.η đ−ợc định nghĩa bởi :

∀s ∈Ω: (ξ+η ) (s ) =ξ (s) +η (s ) , (ξ.η) (s) =ξ (s).η (s). cũng là các đại l−ơng ngẫu nhiên trên Ω .

Giả sử ξ là một đại l−ợng ngẫu nhiên trên không gian mẫu Ω. Điều đó có nghĩa là với mọi s ∈Ω, ξ lấy giá trị bằng ξ(s ) với xác suất p(s). Ta định nghĩa giá trị kỳ vọng (hay trung bình, hay kỳ vọng toán học) của ξp s ( ) ( ). ( ). s E ξ ξ s ∈Ω =∑

Ph−ơng sai của đại l−ợng ngẫu nhiên ξcó giá trị trung bình àđ−ợc định nghĩa là Var (ξ ) = E ((ξà )2 ).

Căn bậc hai không âm của Var (ξ )đ−ợc gọi là độ lệch chuẩn của ξ .

2.2.2. Tính bí mật hoàn toàn của một hệ mật mã.

Năm 1949, C. Shannon công bố công trình Lý thuyết truyền thông của các hệ bí mật , đ−a ra nhiều quan niệm làm cơ sở cho việc đánh giá tính bí mật của các hệ mật mã, trong đó có khái niệm tính bí mật hoàn toàn của một hệ mật mã đ−ợc định nghĩa nh− sau: Cho hệ mật mã S = (P ,C , K , E , D ). Giả thử trên các tập P ,C và K đ−ợc xác định t−ơng ứng các phân bố xác suất pP(.), pC(.) và pK(.). Nh−

vậy, với mọi x ∈P , y ∈C và K ∈K , pP(x), pC(y) và pK(K) t−ơng ứng là các xác suất để ký tự bản rõ là x, ký tự bản mã là y và khoá là K. Xác suất có điều kiện, chẳng hạn, xác suất của việc bản rõ là x khi bản mã là y, đ−ợc ký hiệu là pP(x⏐y). Một hệ mật mã đ−ợc gọi là bí mật hoàn toàn, nếu với mọi x ∈P , y∈ C có pP(x⏐y) = pP(x). Điều đó có nghĩa là việc biết xác suất bản rõ là x là nh− nhau dù biết hay không biết bản mã là y ; nói cách khác, có thông tin về bản mã

không cho ta biết gì thêm về bản rõ; bản rõ và bản mã, với t− cách các biến ngẫu nhiên, là độc lập với nhau. Ta có định lý sau đây:

Định lý 2.2.1. Giả sử S = (P , C , K , E , D ) là một hệ mật mã với điều kiện ⏐P ⏐ = ⏐C ⏐ = ⏐K⏐ , tức các tập P ,C , K có số các phần tử bằng nhau. Khi đó, hệ là bí mật hoàn toàn nếu và chỉ nếu mỗi khoá K ∈K

đ−ợc dùng với xác suất bằng nhau là 1/⏐K⏐ , và với mọi x ∈P , y∈C

có một khoá duy nhất K ∈K sao cho eK (x ) = y.

Chứng minh. a) Giả thử hệ S là bí mật hoàn toàn. Khi đó, với mọi x

∈P và y ∈C có pP(x⏐y) = pP(x). Ngoài ra ta có thể giả thiết pC(y) > 0 với mọi y∈C . Từ đó theo công thức Bayes ta có pC(y⏐x ) = pC(y) > 0 . Điều đó có nghĩa là có ít nhất một khoá K sao cho eK (x ) = y . Vì vậy, nếu cố định một x∈P thì ta có

⏐C ⏐ = ⏐{ eK(x ): K∈K }⏐≤⏐K⏐ .

Theo giả thiết của định lý, ⏐C ⏐ = ⏐K⏐ , do đó ⏐{ eK(x ): K∈K }⏐ = ⏐K⏐ .

Nh−ng điều này lại có nghĩa là không thể có hai khoá K1 ≠ K2 sao cho Vậy ta đã chứng minh đ−ợc với mọi x ∈P và y∈C có đúng một khoá 1 2 K sao cho e

( ) ( ). K K e x =e x K (x ) = y . Ký hiệu n = ⏐K⏐ và đặt K = {K1,..., Kn }. Cố định một y∈C và giả thử với P = {x ( ) i K i

e x =y 1,..., xn }, 1≤i≤n. Dùng công thức Bayes ta lại có ( ) ( ). ( ) ( ). ( ) ( ) ( ) C i P i . K i P i P i C C p y x p x p K p x p x y p y p y = =

Do giả thiết hệ là bí mật hoàn toàn, ta có pP(xi⏐y) = pP(xi). Từ đó suy ra với mọi i , 1≤ i ≤ n, pK (Ki ) = pC (y). Vậy các pK (Ki ) (1≤i ≤ n ) đều bằng nhau, và do đó đều bằng 1/⏐K⏐ .

b) Bây giờ ta chứng minh điều ng−ợc lại. Giả thiết pK(K) = 1/⏐K⏐ với mọi K ∈K , và với mọi x ∈P , y∈C có đúng một khoá K∈K sao cho eK (x ) = y . Ta tính: 1 ( ) ( ). ( ( )) ( ( )) 1 ( ( )). C K P K P K K K P K K p y p K p d y p d y p d y ∈ ∈ ∈ = = = = ∑ ∑ ∑ K K K K K

Khi K chạy qua tập khoá K thì dK (y ) chạy qua tập P , do đó P( K( )) P( ) 1 K x p d y p x ∈ ∈ , = = ∑ ∑ K P và ta đ−ợc pC (y )= 1/⏐K⏐ với mọi y∈C .

Mặt khác, gọi K là khoá duy nhất mà eK (x ) = y , ta có pC(y⏐x) = pK(K) = 1/⏐K⏐ .

Dùng công thức Bayes ta lại đ−ợc với mọi x ∈P , y∈C : ( ) ( ). ( ) ( ).1/ ( ) ( ) 1/ P C P P P C p x p y x p x p x y p x p y = = K = K .

Vậy hệ là bí mật hoàn toàn. Định lý đ−ợc chứng minh.

Khái niệm thuật toán mà ta th−ờng hiểu là thuật toán tất định, đó là một tiến trình thực hiện các phép toán trên dữ liệu đầu vào và cho kết quả ở đầu ra. Theo D.E. Knuth, thuật toán có 5 thuộc tính cơ bản: tính hữu hạn, thuật toán luôn kết thúc sau một số hữu hạn b−ớc; tính xác định, mỗi b−ớc của thuật toán phải đ−ợc xác định một cách chính xác; tập hợp đầu vào và đầu ra của mỗi thuật toán cũng đ−ợc xác định rõ ràng; và tính hiệu quả, mọi phép toán trong thuật toán phải là cơ bản, có thể đ−ợc thực hiện chính xác trong một thời gian xác định. Thuật toán là khái niệm cơ bản đối với việc lập trình trên máy tính, và đã đ−ợc sử dụng rất phổ biến. Nh−ng nh− ta biết, đối với nhiều bài toán trong thực tế, không phải bao giờ ta cũng tìm đ−ợc thuật toán giải chúng với độ phức tạp tính toán chấp nhận đ−ợc (ta sẽ xét qua vấn đề này trong một tiết sau). Vì vậy, cùng với các thuật toán tất định, đối với một số bài toán ta sẽ xét thêm các thuật toán xác suất, đó là những thuật toán mà cùng với dữ liệu đầu vào ta bổ sung thêm giá trị của một đại l−ợng ngẫu nhiên t−ơng ứng nào đó, th−ờng là các số ngẫu nhiên.

Các thuật toán xác suất th−ờng đ−ợc xây dựng cho các bài toán quyết định, tức các bài toán xác định trên một tập hợp dữ liệu sao cho ứng với mỗi dữ liệu bài toán có một trả lời có hoặc không . Ng−ời ta chia các thuật toán xác suất thành hai loại: loại thuật toán Monte Carlo và loại thuật toán Las Vegas . Thuật toán Monte Carlo luôn kết thúc với kết quả có hoặc không đối với mọi dữ liệu đầu vào bất kỳ; còn thuật toán Las Vegas tuy cũng kết thúc với mọi dữ liệu, nh−ng có thể kết thúc với một thông báo không có trả lời có hoặc không. Thuật toán Monte Carlo đ−ợc gọi là thiên về có, nếu nó cho trả lời có thì trả lời đó chắc chắn là đúng, còn nếu nó cho trả lời không thì trả lời đó có thể sai với một xác suất ε nào đó. T−ơng tự, một thuật toán Monte Carlo đ−ợc gọi là thiên về không, nếu nó cho trả lời không thì trả lời đó chắc chắn là đúng, còn nếu nó cho trả lời có thì trả lời đó có thể sai với một xác suất ε nào đó. Còn với thuật toán Las Vegas, nếu nó kết thúc với trả lời có hoặc không , thì trả lời đó chắc chắn đúng, và nó có thể kết thúc với thông báo không có trả

lời với một xác suất ε nào đó. Trong tiết 2.8 sau đây ta sẽ cho vài thí dụ cụ thể về một số thuật toán xác suất thuộc cả hai loại đó.

Một phần của tài liệu Tài liệu Lý thuyết mật mã và An toàn thông tin pptx (Trang 34 - 40)

Tải bản đầy đủ (PDF)

(168 trang)