Tải bản đầy đủ (.doc) (4 trang)

Giải pháp đảm bảo an toàn cho hệ phân tán.DOC

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (75.47 KB, 4 trang )

Phát lại
Và ứng dụng trong ngân hàng
Sự phát triển mạnh mẽ của công nghệ cơ sở dữ liệu, công nghệ viễn thông,
công nghệ phần mềm, phần cứng.. đã tạo điều kiện thuận lợi cho việc ứng dụng
có hiệu quả các hệ phân tán. Vấn đề bảo đảm an toàn các hệ phân tán cũng đợc
nghiên cứu và ứng dụng một cách nghiêm túc. Đối với nhiều quốc gia, nhiều tổ
chức, việc xây dựng các Trung tâm thông tin dự phòng; trang bị nhiều máy chủ
server chạy ở chế độ song hành hoặc dự phòng; những quy định về chế độ quản
lý lu trữ, backup dữ liệu ... đều hớng tới mục đích bảo đảm an toàn hệ thống.
Phạm vi bài báo đề cập tới các cơ chế an toàn cho một hệ phân tán dựa trên việc
sử dụng 3 kỹ thuật: phơng pháp mật mã, phơng pháp xác minh, và kiểm soát
quyền truy cập, nhằm hạn chế những hành động phá hoại hệ thống do con ngời
gây ra.
I-Tác nhân phá hoạI
Hình 1 thể hiện mô hình kết nối client (khách)/ server (phục vụ) và các tác
nhân có thể xâm nhập phá hoại hệ thống:
- Truyền thông giữa một client hợp pháp
và một server hợp pháp bị nghe trộm, kết
quả là thông tin bị rò rỉ.
- Một ngời nào đó cố tình xâm nhập
mạng, lấy thông tin do client gửi server
sau một khoảng thời gian, anh ta gửi lại
thông tin đó, kết quả làm rối loạn tiến trình xử lý của server.
- Một server hợp pháp có thể bị công kích bởi một kẻ mạo danh client, anh ta
có thể truy nhập vào các chức năng dịch vụ của server mà không đợc phép, từ đó
truy nhập tới mọi thông tin riêng mà server nắm giữ.
- Một client hợp pháp bị công kích bởi một kẻ mạo danh server. Kẻ mạo danh
có thể truy nhập vào các thông tin riêng trong yêu cầu của client, kết quả làm
cho client tin rằng yêu cầu đó đã đợc server thực hiện.
- Ngoài ra, phải kể đến sự phá hoại của các loại Virus tin học lan truyền trong
hệ thống, c trú tại các trạm trên hệ thống, phá hoại cơ sở dữ liệu, làm hỏng các


phần mềm, thu lợm các thông tin mà chủ của chúng mong muốn.
Có thể loại bỏ các tác nhân trên bằng cách:
- Bảo vệ các kênh truyền thông để chống nghe trộm.
- Sử dụng các giao thức xác minh để xác nhận tính hợp pháp của client hoặc
server.
- Sử dụng kỹ thuật mật mã để bảo vệ dữ liệu.
Những giải pháp bảo đảm an toàn cho hệ phân tán
Thực hiện
hành động
Đợi
Tiếp ttục
Nhận yêu cầu
Gửi trả lời
Kẻ nghe trộm
replayer
Client Server
Hình 1 Những tác nhân gây hại trong kết nối
Client - server
Cơ sở dữ liệu
Khoá công khai
1- Có Ke
2- E(Ke,M) {M}
Ke
3- Gửi {M}
Ke
Gửi K
e
1- Tính Ke, Kd
2- Công khai Ke
3- Nhận {M}

Ke
4- D(Kd{M}
Ke
) M

II- Mật m và ứng dụng trong hệ phân tánã
1/ Mật mã:
Để mã hoá thông tin truyền đi, ngời ta chuyển đổi nó thành một dạng mà
không ai có thể hiểu đợc trừ ngời thực sự đợc nhận nó. Có hai cách tiếp cận
chung nhất tới kỹ thuật cơ sở mật mã máy tính đó là: phơng pháp mã hoá với
khoá bí mật (Secret-key) và phơng pháp mã hoá với khoá công khai (public-key).
Cả hai phơng pháp đều hữu ích và đợc ứng dụng rộng rãi cho các phơng pháp
xác minh và phơng pháp kiểm soát truy cập.
2/ Các phép biến đổi và khoá:
- Một thông tin đợc mã hoá bởi ngời gửi bằng cách áp dụng một số luật biến
đổi, biến nó từ một bản rõ (plain text) sang bản mật mã (cipher text), ngời nhận
phải biết luật chuyển đổi từ bản mật mã trở về bản rõ ban đầu. Những ngời khác
không thể giải mã đợc trừ khi họ biết luật chuyển đổi.
- Việc lập mã và giải mã đợc xác định với hai thành phần: một hàm (function)
và một khoá (key). Hàm xác định một
thuật toán lập mã để biến đổi dữ liệu từ
dạng bản rõ thành dữ liệu đợc mã hoá
bằng cách kết hợp chúng với khoá và
biến đổi chúng theo một số phép toán
mà kết quả phụ thuộc nhiều vào giá trị
của khoá.
Từ nay, ký hiệu {M}
K
có nghĩa là bản rõ M đợc mã hoá với một hàm mã thích
hợp và một khoá K.

3/ Phơng pháp lập mã với khoá bí mật:
Đây là phơng pháp mã hoá đợc sử dụng để chuyển thông tin bí mật từ những
thế kỷ trớc đây cho tới kỷ nguyên của máy tính, chỉ khác là sử dụng miền khoá
rộng hơn và hàm lập mã phức tạp hơn.
Thông tin đợc mã hoá bằng việc áp hàm mã với khoá bí mật vào bản rõ. Còn
giải mã là việc tiến hành áp hàm giải mã vào bản mã hoá với khoá giống nhau
để trả lại bản rõ ban đầu.
Hình 2 mô tả việc mã hoá bằng cách áp hàm mã f vào bản rõ M với khoá K.
Hàm giải mã f
-
1
áp vào bản mã hoá {M}
K
với cùng khoá K để đợc bản rõ ban đầu
M.
Hình 2. Truyền thông an toàn với lập
mã khoá bí mật

Cả hai ngời gửi và nhận phải cùng sở
hữu hàm lập mã và khoá bí mật. Thuật toán lập mã phải bảo đảm đủ an toàn,
1- Biết K
2- f (K,M) {M}
k
3- Gửi {M}k
Ngời gửi A Ngời nhận B
1- Biết K
2- Nhận {M}
k
3- f
-1

(K,{M}
k
)

M
{M}
k
Ngời nhận B
Yêu cầu K
e
{M}K
e
Ngời gửi A
ngăn mọi sự xâm nhập hệ thống để phá vỡ nó. Hầu hết các kiểu xâm nhập phá
vỡ mã là tạo ra một mẫu để đối sánh bản gốc với bản mã hoá, từ đó phát hiện ra
khoá. Vì vậy, nhiệm vụ của mật mã học là tạo ra một hàm xác định các luật
chuyển đổi đủ phức tạp sao cho khả năng phát hiện khoá là rất nhỏ.
Thuật toán lập mã DES [1977] (Data Encryption Standard) đợc phát triển bởi
IBM, đã đợc chọn làm chuẩn quốc gia của Mỹ và cho phép sử dụng trong Chính
phủ và các hoạt động kinh doanh. Tanenbaum [1988] đã mô tả chi tiết thuật toán
DES và đánh giá độ an toàn của nó.
4- Phơng pháp lập mã với khoá công khai:
Hình 3. Truyền thông an toàn với lập mã khoá công khai
Sơ đồ trên (hình 3) lần đầu tiên đợc đa ra bởi Diffie và Hellman [1976] và đợc
xem nh một phơng pháp mật mã học. Nó dựa trên việc sử dụng 2 số nguyên tố
rất lớn. Mỗi ngời có thể sở hữu một cặp khoá K
e
, K
d
với K

d
là khoá giải mã bí
mật. Khoá K
e
có thể công bố công khai cho bất kỳ ai muốn dùng nó để truyền
tin. Phơng pháp này dựa trên một hàm xác định quan hệ giữa hai khoá, mà rất
khó xác định K
d
khi biết K
e
. Đó là hàm một phía (One-Way) f(X) = Y, với X rất
khó tìm (tính toán rất phức tạp) khi biết giá trị của Y. Phơng pháp này gọi là ph-
ơng pháp mã hoá với khoá công khai, nó giúp cho những ngời muốn truyền,
nhận thông tin không phải trao đổi khoá bí mật với nhau. Phơng pháp dựa trên
hai hàm phân chia E và D và hai khoá phân chia K
e
và K
d
để lập mã và giải mã.
Chẳng hạn, B muốn nhận thông tin từ những ngời khác, B sử dụng cặp khoá K
e
,
K
d
- B công khai K
e
và giữ bí mật K
d
. Một ngời bất kỳ muốn gửi thông tin bí
mật M cho B, anh ta có thể sử dụng K

e
của B bằng cách yêu cầu dịch vụ cơ sở dữ
liệu khoá công khai (xem hình 3) cung cấp, sau đó áp hàm E(K
e
, M) để tạo ra
{M}
K
trớc khi gửi nó tới B. Và cũng chỉ có duy nhất B biết khoá K
d
để áp hàm
D(K
d
, {M}
K
} giải mã và nhận đợc bản rõ M.
Một số thuật toán sử dụng cặp khoá trong phơng pháp lập mã khoá công khai đ-
ợc đa ra. Chẳng hạn, Revest, Sharmir, và Adelman (RSA) [1978] thiết kế phơng
pháp dựa trên việc khó tìm các thừa số của các số lớn. Phơng pháp nh sau:
Để tìm cặp khoá e, d:
a- Chọn 2 số nguyên tố rất lớn P và Q (mỗi số > 10
100
) và lập N = P x Q; Z =
(P-1) (Q-1)
b- Chọn d nguyên tố với Z.
Chẳng hạn, giả sử P = 13, Q = 17; N = 221; Z = 192; Chọn d = 5.
c- Tìm e bằng cách giải phơng trình
e x d = 1 mod Z
với e x d là phần tử nhỏ nhất trong dãy Z+1, 2Z+1, 3Z+1.. . và chia hết cho d.
Chẳng hạn,
e x d = 1 mod 192

= 1, 193, 385,...
e = 385/5 = 77
Để mã hoá sử dụng phơng pháp RSA, bản rõ phải đợc chia thành các khối
bằng nhau, có độ dài k bits, ở đây 2
k
< N (k thờng chọn trong khoảng 256-512).
Trong ví dụ. K = 7 vì 2
7
= 128. Hàm mã hoá bản rõ M là:
E (e, N, M) = M
e
mod N
Hàm giải mã cho bản mã hoá c là:
D (d, N, c) = c
d
mod N
Revest chỉ ra rằng: E và D là nghịch đảo của nhau, nghĩa là
E (D(x) = D (E (x)) = x)
với mọi gía trị của P thoả 0 P N. Hai tham số e, N có thể xem nh một khoá
cho hàm lập mã và d, N là khoá cho hàm giải mã. Ta viết:
K
e
= < e, N > và K
d
= < d, N >
đồng thời ta có các hàm E, D đợc dùng nh mô tả ở hình 3.
Để kết thúc phần này, ta hãy so sánh phơng pháp lập mã khoá bí mật và lập mã
khoá công khai:
- Độ an toàn:
Cả hai phơng pháp bảo đảm đủ an toàn cho tất cả các mục đích thông thờng.

- Thuận tiện:
Phơng pháp dùng khoá mật mã công khai là thuận tiện hơn để thực hiện vì
không đòi hỏi việc phân phát các khoá qua các kênh bí mật
( Kỳ sau: Các phơng pháp xác minh và ứng dụng trong Ngân hàng)

×