Tải bản đầy đủ (.pdf) (25 trang)

Nghiên cứu một số phương pháp đảm bảo an toàn hệ thống thông tin bằng kiểm soat truy nhập

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 (798.3 KB, 25 trang )



HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG



Nguyễn Minh Hiển



NGHIÊN CỨU MỘT SỐ PHƯƠNG PHÁP
ĐẢM BẢO AN TOÀN HỆ THỐNG THÔNG TIN
BẰNG KIỂM SOÁT TRUY NHẬP

Chuyên ngành: Truyền dữ liệu và mạng máy tính
Mã số: 60.48.15


TÓM TẮT LUẬN VĂN THẠC SĨ








HÀ NỘI - 2013




Luận văn được hoàn thành tại:
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG


Người hướng dẫn khoa học: PGS. TS. Trịnh Nhật Tiến


Phản biện 1: ……………………………………………………………………………

Phản biện 2: …………………………………………………………………………




Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc sĩ tại Học viện Công nghệ Bưu
chính Viễn thông
Vào lúc: giờ ngày tháng năm

Có thể tìm hiểu luận văn tại:
- Thư viện của Học viện Công nghệ Bưu chính Viễn thông















HÀ NỘI - 2013


1

MỞ ĐẦU
Trong những năm gần đây, sự bùng nổ của cách mạng thông tin đang diễn ra
nhanh chóng trên phạm vi toàn thế giới. Sự phổ biến rộng rãi của Internet đã kết nối
mọi người trên thế giới lại với nhau, trở thành công cụ không thể thiếu, làm tăng hiệu
quả làm việc, tăng sự hiểu biết, trao đổi, cập nhật các thông tin một cách nhanh chóng
và tiện lợi.
Tuy nhiên, Internet là một mạng mở, nó cũng chứa đựng nhiều hiểm họa đe
dọa hệ thống mạng, hệ thống máy tính, tài nguyên thông tin của các tổ chức, cá nhân.
Ví dụ, những tin tức quan trọng nằm ở kho dữ liệu hay đang trên đường truyền có thể
bị tấn công, xâm nhập và lấy cắp thông tin. Do vậy, nảy sinh yêu cầu nghiên cứu các
phương pháp kiểm soát an ninh hệ thống thông tin như: kiểm soát truy nhập hệ thống
thông tin, kiểm soát luồng dữ liệu, kiểm soát suy diễn, kiểm soát tấn công hệ thống
thông tin nhằm mục đích ngăn chặn và hạn chế rủi ro đối với hệ thống và thông tin.
Trong khóa luận này, tôi chú trọng tìm hiểu cơ sở lý thuyết của an toàn thông
tin, một số phương pháp kiểm soát truy nhập hệ thống thông tin kèm theo thử nghiệm
ứng dụng minh họa. Luận văn bao gồm các nội dung cụ thể sau:
Chƣơng 1: Tổng quan về an toàn thông tin, nêu lên những vấn đề về an toàn
thông tin, những lý thuyết toán học cơ bản mà bất kỳ bài toán an toàn thông tin nào
cũng cần tới, các khái niệm cơ bản về mã hóa, hàm băm, ký số.
Chƣơng 2: Một số phƣơng pháp kiểm soát truy nhập hệ thống thông tin,
trình bày tổng quan về kiểm soát truy nhập và một số phương pháp kiểm soát truy

nhập hệ thống thông tin.
Chƣơng 3: Thử nghiệm dùng chữ ký số RSA để kiểm soát truy nhập hệ
thống thông tin, trình bày bài toán và chương trình ký số RSA kèm theo hướng dẫn
sử dụng chương trình.


2

Chƣơng 1 - TỔNG QUAN VỀ AN TOÀN THÔNG TIN
1.1. Vấn đề an toàn thông tin
1.1.1. Mở đầu về an toàn thông tin
1.1.2. Một số khái niệm về an toàn thông tin
1.1.3. Một số bài toán trong an toàn thông tin
1.1.4. Các yêu cầu về đảm bảo an toàn thông tin
1.2. Một số giải pháp đảm bảo an toàn thông tin
1.2.1. Mã hóa
1.2.1.1. Khái niệm mã hóa dữ liệu
Để đảm bảo an toàn thông tin lưu trữ trong máy tính (ví dụ: giữ gìn thông tin
cố định) hay bảo đảm an toàn thông tin trên đường truyền tin (ví dụ: trên mạng máy
tính), người ta phải “che giấu” các thông tin này.
“Che” thông tin (dữ liệu) hay “mã hóa” thông tin là thay đổi hình dạng thông
tin gốc, và người khác “khó” nhận ra.
Nói cách khác “mã hóa” thông tin là “che” đi “ý nghĩa” của thông tin, và
người khác “khó” hiểu được (“khó” đọc được) thông tin đã mã hóa.
“Giấu” thông tin (dữ liệu) là cất giấu thông tin trong bản tin khác, và người
khác cũng “khó” nhận ra.
Việc mã hóa phải theo quy tắc nhất định, quy tắc đó gọi là hệ mã hóa.
1/. Hệ mã hóa
Hệ mã hóa được định nghĩa là bộ năm (P, C, K, E, D), trong đó:
 P là tập hữu hạn các bản rõ có thể

 C là tập hữu hạn các bản mã có thể
 K là tập hữu hạn các khóa có thể
 E là tập các hàm lập mã
 D là tập các hàm giải mã.
3

Với khóa lập mã k
e
 K, có hàm lập mã e
ke
 E, e
ke
:

P  C,
Với khóa giải mã k
d
 K, có hàm giải mã d
kd
 D, d
kd
: C  P
Sao cho d
kd
(e
ke
(x)) = x,  x  P.
Ở đây, x được gọi là bản rõ, e
ke
(x) được gọi là bản mã.

2/. Mã hóa và giải mã
Người gửi G muốn gửi bản tin T cho người nhận N. Để bảo đảm bí mật, G mã
hóa bản tin bằng khóa lập mã k
e
, nhận được bản mã e
ke
(T), sau đó gửi cho N. Tin tặc
có thể trộm bản mã e
ke
(T), nhưng cũng “khó” hiểu được bản ghi gốc T nếu không có
khóa giải mã k
d
.
Người N nhận được bản mã, họ dùng khóa giải mã k
d
để giải mã e
ke
(T), sẽ
nhận được bản ghi gốc T = d
kd
(e
ke
(T)).
1.2.1.2. Phân loại hệ mã hóa
1/. Hệ mã hóa khóa đối xứng
2/. Hệ mã hóa khóa phi đối xứng
Hệ mã hóa phi đối xứng là hệ mã hóa có khóa lập mã và khóa giải mã khác
nhau (k
e
≠ k

d
), nếu biết được khóa này cũng “khó” tính được khóa kia. Hệ mã hóa
này còn được gọi là hệ mã hóa khóa công khai, vì:
Khóa lập mã cho công khai, gọi là khóa công khai (public key).
Khóa giải mã giữ bí mật, còn gọi là khóa riêng (private key).
Một người bất kỳ có thể dùng khóa công khai để mã hóa bản tin, nhưng chỉ
người nào có đúng khóa giải mã thì mới có khả năng đọc được bản rõ.
a/. Đặc điểm của hệ mã hóa khóa phi đối xứng:
Ưu điểm: Thuật toán được viết một lần, công khai cho nhiều lần dùng, cho nhiều
người dùng, họ chỉ cần giữ bí mật khóa riêng của mình.
Khi biết các tham số ban đầu của hệ mã hóa, việc tính ra cặp khóa công khai và
bí mật phải là “dễ”, tức là trong thời gian đa thức.
4

 Người gửi có bản rõ P và khoá công khai, thì “dễ” tạo ra bản mã C.
 Người nhận có bản mã C và khoá bí mật, thì “dễ” giải được thành bản rõ P.
Người mã hoá dùng khóa công khai, người giải mã giữ khóa bí mật. Khả năng
lộ khóa bí mật khó hơn vì chỉ có một người giữ. Nếu thám mã biết khoá công khai, cố
gắng tìm khoá bí mật, thì chúng phải đương đầu với bài toán “khó”.
Nếu thám mã biết khoá công khai và bản mã C, thì việc tìm ra bản rõ P cũng là
bài toán “khó”, số phép thử là vô cùng lớn, không khả thi.
Hạn chế: Hệ mã hóa khóa phi đối xứng mã hóa và giải mã chậm hơn hệ mã hóa khóa
đối xứng.
b/. Nơi sử dụng hệ mã hóa khóa phi đối xứng:
c/. Một số hệ mã hóa khóa phi đối xứng:
Hệ mã hóa RSA.
Hệ mã hóa Elgamal.
1.2.2. Tổng quan về hàm băm
1.2.2.1. Khái niệm hàm băm
1.2.2.2. Đặc tính của hàm băm

1.2.2.3. Các tính chất của hàm băm
1.2.2.4. Một số hàm băm thông dụng
1.2.2.5. Một số ứng dụng của hàm băm
1.2.3. Chữ ký số
1.2.3.1. Khái niệm chữ ký số
Sơ đồ chữ ký số: là bộ năm (P, A, K, S, V), trong đó:
P là tập hữu hạn các văn bản có thể
A là tập hữu hạn các chữ ký có thể
K là tập hữu hạn các khóa có thể
S là tập các thuật toán ký
5

V là tập các thuật toán kiểm thử
Với mỗi k  K, có thuật toán ký sig
k
 S, sig
k
: P A,
và thuật toán kiểm thử Ver
k
 V, Ver
k
: P  A đúng, sai,
thỏa mãn điều kiện sau với mọi x  P, y  A:
Đúng, nếu y = sig
k
(x)
Ver
k
(x,y)=

Sai, nếu y ≠ sig
k
(x)
1.2.3.2. Một số sơ đồ chữ ký điện tử
1/. Sơ đồ chữ ký RSA
a/. Sinh khóa:
Chọn p, q là số nguyên tố lớn. Tính n = p*q,  (n) =(p-1) * (q-1).
Đặt P = A = Zn, K = ( a, b) / a*b  1 (mod  (n)). Bộ khóa k = (a, b).
Giá trị n và b là công khai, các giá trị a, p, q là bí mật, b là khóa công khai,
a là khóa bí mật.
b/. Ký số:
Với mỗi bộ khóa k = (a, b), định nghĩa:
Chữ ký trên x  P là y = sigk(x) = xa mod n, y  A. (R1)
c/. Kiểm tra chữ ký: Verk(x,y) = đúng  x  yb (mod n). (R2)
2/. Sơ đồ chữ ký Elgamal
3/. Chuẩn chữ ký số DSS (Digital Signature Standard)

6

1.3. Kết luận chƣơng
Nội dung chương 1 đã trình bày những khái niệm cơ sở về an toàn thông tin và
mật mã học. Dựa vào những lý thuyết số học người ta đã xây dựng lên các chương
trình mã hóa, giải mã, xác thực, nhận dạng, kiểm soát từ đó làm cơ sở cho một số
phương pháp kiểm soát truy nhập hệ thống thông tin.
Trong chương tiếp theo, tôi xin trình bày nội dung cơ bản về kiểm soát truy
nhập hệ thống thông tin và nêu một số phương pháp kiểm soát hệ thống thông tin. Từ
đó, đem đến cái nhìn tổng quan về kiểm soát truy nhập hệ thống thông tin và tiếp cận
hiểu sâu hơn về các phương pháp kiểm soát hệ thống thông tin.

7


Chƣơng 2 - MỘT SỐ PHƢƠNG PHÁP KIỂM SOÁT TRUY NHẬP
HỆ THỐNG THÔNG TIN
2.1. Tổng quan về kiểm soát truy nhập hệ thống thông tin
2.1.1. Khái niệm kiểm soát truy nhập hệ thống thông tin
Kiểm soát truy nhập là việc “đáp ứng” các truy nhập đến đối tượng hệ thống
thông tin nhằm hạn chế những nguy cơ mất an toàn đối với hệ thống. Kiểm soát truy
nhập tuân theo phương pháp và chính sách bảo vệ dữ liệu.

Hình 2.1. Hệ thống kiểm soát truy nhập
Cần xây dựng hệ thống có nhiệm vụ kiểm soát mọi truy nhập của người dùng
và tiến trình, các chủ thể này khai thác dữ liệu, chương trình thông qua các phép toán.
Hệ thống kiểm soát truy nhập gồm ba phần chính:
 Các chính sách an ninh và quy tắc truy nhập: Đặt ra kiểu khai thác thông tin
lưu trữ trong hệ thống
 Các thủ tục kiểm soát (cơ chế an ninh): Kiểm tra yêu cầu truy nhập, cho phép
hay từ chối các yêu cầu khai thác
 Các công cụ và phương tiện thực hiện kiểm soát truy nhập

8

2.1.2. Chính sách an ninh
2.1.2.1. Chính sách kiểm soát truy nhập
Chính sách kiểm soát truy nhập thiết lập khả năng, chỉ ra cách để chủ thể và
đối tượng trong hệ thống được nhóm lại, để dùng chung kiểu truy nhập nào đó, cho
phép thiết lập việc chuyển quyền truy nhập
Chính sách kiểm soát truy nhập liên quan đến thiết kế và quản lý hệ thống cấp
quyền khai thác. Cách thông thường để đảm bảo an ninh hệ thống là định danh các
đối tượng tham gia hệ thống và xác định quyền truy nhập của chủ thể tới đối tượng.
Định danh (Identifier): Gán cho mỗi đối tượng một tên gọi theo một cách thống

nhất, không có sự trùng lặp các định danh
Ủy quyền (Authorization): Ủy quyền khai thác một phép toán của một chủ thể
trên một đối tượng.
2.1.2.2. Chính sách giới hạn quyền truy nhập
Để trả lời câu hỏi: Có bao nhiêu thông tin có thể được truy nhập cho mỗi chủ
thể là đủ ? Có 2 chính sách cơ bản:
 Chính sách đặc quyền tối thiểu: Các chủ thể sử dụng lượng thông tin tối thiểu
cần thiết cho hoạt động
 Chính sách đặc quyền tối đa: Các chủ thể sử dụng lượng thông tin tối đa cần
thiết cho hoạt động. Tuy nhiên phải đảm bảo thông tin không bị xâm phạm quá
mức cho phép. Có 2 kiến trúc kiểm soát truy nhập:
o Hệ thống đóng: Chỉ các yêu cầu có quyền truy nhập mới được phép.
o Hệ thống mở: Các truy nhập không bị cấm thì được phép.
2.1.2.3. Chính sách quản lý quyền truy nhập
Chính sách quản lý quyền truy nhập có thể được dùng trong kiểm soát tập
trung hoặc phân tán, việc lựa chọn này cũng là một chính sách an ninh, có thể kết hợp
để có chính sách phù hợp.
9

 Phân cấp ủy quyền: Cơ chế kiểm soát được thực hiện tại nhiều trạm, tập trung
kiểm soát các trạm. Ví dụ: Tổ chức các trạm như các nút trên cây
 Chọn người sở hữu: Mô tả quan hệ, mô tả người sở hữu và đảm bảo quyền khai
thác thông tin của họ
 Quyết định tập thể: Tài nguyên có thể do một nhóm sở hữu, khi có yêu cầu truy
nhập tài nguyên này, cần được sự đồng ý của cả nhóm.Ví dụ: Chia sẻ khóa bí
mật
2.1.2.4. Chính sách phân cấp
Đó là chính sách kiểm soát luồng thông tin, ngăn ngừa luồng thông tin đi tới
các đối tượng có mức phân loại thấp hơn. Hệ thống có các mức phân loại sau:
0: Bình thường (Unclassified - U)

1: Mật (Confidential - C)
2: Tối mật (Secret - S)
3: Tuyệt mật (Top Secret - TS)
2.2. Hệ thống kiểm soát truy nhập
2.2.1. Hệ thống kiểm soát truy nhập trực tiếp
2.2.1.1. Xác thực dựa vào thông tin biết trước của người dùng
2.2.1.2. Xác thực dựa vào thông tin sở hữu của người dùng
1/. Thẻ thông minh
2/. Chữ ký số
Hiện nay, ở tất cả các nước phát triển cũng như đang phát triển, mạng máy tính
đang ngày càng đóng vai trò thiết yếu trong mọi lĩnh vực hoạt động của toàn xã hội
và nhu cầu bảo mật thông tin được đặt lên hàng đầu. Điển hình là việc mã hoá bảo
mật các thông tin số của doanh nghiệp, dùng chữ ký số xác thực email trao đổi thông
tin, kiểm soát truy cập vào các sàn thương mại điện tử, hệ thống thông tin và các đơn
đặt hàng, ngân hàng điện tử, kê khai thuế điện tử, mua sắm trực tuyến
10


Hình 2.4. Sử dụng chữ ký số trong kê khai thuế điện tử
3/. Thiết bị USB Token
2.2.1.3. Xác thực dựa vào thông tin đặc trưng của người dùng
2.2.2. Hệ thống kiểm soát truy nhập tự động
2.2.2.1. Tường lửa (firewall)
2.2.2.2. Mạng riêng ảo (Virtual Private Network - VPN)
2.2.2.3. Hạ tầng cơ sở mật mã khóa công khai PKI
1/. Tổng quan cơ sở hạ tầng khóa công khai
Dựa trên ứng dụng của mật mã khóa công khai và chữ ký điện tử, một PKI
chính là bộ khung gồm các chính sách, dịch vụ và thuật toán mã hóa, đáp ứng nhu
cầu bảo mật của người sử dụng khi gửi đi những thông tin quan trọng qua Internet và
các mạng khác.

Mật mã khóa công khai bảo đảm độ tin cậy đối với các thông tin, thông điệp
quan trọng bằng cách sử dụng một cặp khóa, một khóa dùng để mã hóa dữ liệu và
một khóa để giải mã chúng. Trong mật mã công khai, người sử dụng nhận được phần
mềm mã hóa đặc biệt và một cặp khóa, trong đó có một khóa công khai (Public key)
để có thể sử dụng dịch vụ, còn lại là khóa bí mật (Private key) mà người sử dụng phải
giữ bí mật. Hai khóa này có liên quan mật thiết đến nhau, sao cho một thông điệp
11

được mã hóa bởi một khóa công khai thì chỉ giải mã được bởi một khóa bí mật tương
ứng.
Tổ chức hay cơ quan cấp giấy chứng nhận (CA) là một thành phần chính của
PKI. Nó là một tổ chức thứ ba đáng tin cậy chịu trách nhiệm phát hành giấy chứng
nhận điện tử gọi là chứng chỉ số và quản lý chúng trong thời hạn có hiệu lực.
Chứng chỉ (Certificate) là một thuật ngữ chỉ phương tiện bảo vệ thông tin mật
như thông tin cá nhân hoặc các thông tin cần bảo mật cao khác. Chứng chỉ, bạn có thể
hiểu đơn giản như chứng minh nhân dân, trên chứng minh nhân dân các thông tin về
bạn sẽ được mã hoá bởi một cơ quan công quyền có nghĩa là họ nắm phần thông tin
công khai hay gọi là khóa công khai đối với chứng chỉ. Trong trường hợp bị kiểm tra
chỉ có bạn mới có thể trả lời chính xác các thông tin của bạn (như vậy bạn được cho
là nắm phần khóa bí mật) đối với sự thẩm tra của một cơ quan công quyền, như vậy
tất cả các thông tin của bạn sẽ được giải mã sau khi khóa bí mật và khóa công khai
của bạn được so sánh.
Chứng chỉ số là những tập tin điện tử chứa các chìa khóa mật mã công khai và
các thông tin nhận dạng đặc biệt về người sử dụng. Các giấy chứng nhận này có "dán
tem" xác nhận (được CA ký bằng chữ ký điện tử của họ) và không thể làm giả được.
2/. Cách thức hoạt động của PKI
Bob và Alice muốn liên lạc với nhau qua Internet, dùng PKI để chắc chắn rằng
thông tin trao đổi giữa họ được bảo vệ. Bob đã có chứng chỉ số, nhưng Alice thì
chưa. Để có nó, cô phải chứng minh được với Tổ chức cấp giấy chứng nhận cô thực
sự là Alice. Một khi các thông số nhận dạng của Alice đã được Tổ chức cấp giấy

chứng nhận thông qua, họ sẽ phát hành cho cô một chứng chỉ số. Chứng nhận điện tử
này có giá trị thực sự, giống như tấm hộ chiếu, nó đại diện cho Alice. Nó gồm có
những chi tiết nhận dạng Alice, một bản sao chìa khóa công cộng của cô và thời hạn
của giấy chứng nhận cũng như chữ ký điện tử của Tổ chức chứng nhận. Alice cũng
nhận được khóa bí mật kèm theo khóa công khai. Khóa bí mật này được lưu ý là phải
giữ bí mật, không được chia sẻ với bất cứ ai.
12

Khi Alice đã có chứng chỉ số, Bob có thể gửi cho cô những thông tin quan
trọng được ký bằng chữ ký điện tử của mình. Bob có thể xác nhận với cô là thông
điệp đó xuất phát từ anh ta cũng như được bảo đảm rằng nội dung thông điệp không
bị thay đổi và không có ai khác ngoài Alice đọc nó.
Để thực hiện việc này, phần mềm tại máy trạm của Bob tạo ra một chữ ký điện
tử và mã hóa thông điệp có chứa chữ ký đó. Phần mềm sử dụng khóa bí mật của Bob
để tạo ra chữ ký điện tử và dùng khóa công khai của Alice để mã hóa thông điệp. Khi
Alice nhận được thông điệp có chữ ký của Bob đã được mã hóa bằng khóa công khai
của mình, phần mềm sẽ dùng khóa bí mật của cô để giải mã thông điệp. Vì chỉ có duy
nhất chìa khóa bí mật của Alice mới có thể giải mã thông điệp đã được mã hóa bằng
chìa khóa công khai của cô, cho nên độ tin cậy của thông tin hoàn toàn được bảo
đảm. Sau đó, phần mềm dùng khóa công khai của Bob xác minh chữ ký điện tử, để
đảm bảo rằng chính Bob đã gởi thông điệp đi, và thông tin không bị xâm phạm trên
đường truyền.
Ưu điểm của PKI là vừa tạo ra được các chức năng mã hóa, giải mã và xác
thực với người sử dụng như Bob và Alice vừa bảo đảm tính riêng tư và an toàn cho
giao dịch giữa họ giống như một cuộc gặp gỡ trực tiếp.
2.2.3. Hệ thống kiểm soát truy nhập chuyên dụng
2.2.3.1. Hệ thống phát hiện và ngăn chặn xâm nhập hệ thống thông tin
2.2.3.2. Hệ thống kiểm soát thông tin “lừa đảo”
2.3. Chính sách kiểm soát truy nhập hệ thống thông tin
2.3.1. Kiểm soát truy nhập bắt buộc (MAC)

Là chính sách truy cập do hệ thống quyết định, không phải do cá nhân sở hữu tài
nguyên quyết định. Nó được sử dụng trong các hệ thống đa tầng, tức là những hệ thống xử
lí các loại dữ liệu nhạy cảm như các thông tin được phân hạng về mức độ bảo mật trong
chính phủ hay quân đội.


13

1/. Nhãn hiệu nhạy cảm (Sensitivity Label)
Chỉ định một nhãn hiệu cho mỗi chủ thể và mỗi đối tượng trong hệ thống. Nhãn hiệu
nhạy cảm của một chủ thể xác định mức tin cẩn cần thiết để truy cập. Để truy cập một đối
tượng nào đấy, chủ thể phải có một mức độ nhạy cảm tương đồng hoặc cao hơn mức độ của
đối tượng yêu cầu.
2/. Xuất và nhập dữ liệu (Data Import and Export)
Kiểm soát việc nhập thông tin từ hệ thống khác, và xuất thông tin sang hệ thống khác
(bao gồm cả các máy in), là một chức năng trọng yếu trong các hệ thống sử dụng kiểm soát
truy cập bắt buộc. Nhiệm vụ của việc xuất, nhập thông tin phải đảm bảo các nhãn hiệu nhạy
cảm được giữ gìn một cách đúng đắn, các thông tin nhạy cảm phải được bảo vệ trong bất kỳ
tình huống nào.
Các phương pháp thường dùng để áp dụng kiểm soát truy cập bắt buộc là: kiểm soát
truy cập dùng theo luật (Rule Base Access Control) và kiểm soát truy cập dùng lưới (Lattice
Base Access Control).
3/. Kiểm soát truy nhập dùng theo luật
Định nghĩa thêm điều kiện cụ thể đối với việc truy cập một đối tượng, nhằm quyết
định cho phép hay từ chối yêu cầu truy cập, bằng cách đối chiếu: nhãn hiệu nhạy cảm của
đối tượng, nhãn hiệu nhạy cảm của chủ thể
4/. Kiểm soát truy nhập dùng lƣới
Mô hình lưới là một cấu trúc toán học, nó định nghĩa giá trị cận dưới lớn nhất và cận
trên nhỏ nhất cho những cặp nguyên tố, chẳng hạn như cặp nguyên tố gồm 1 chủ thể và 1
đối tượng.

2.3.2. Kiểm soát truy nhập tùy quyền (DAC)
Là chính sách truy cập mà chủ nhân thông tin hay tài nguyên tự quyết định xem ai là
người được phép truy cập vào nó, và những quyền nào mà người đó được phép thi hành.
Hai khái niệm trong truy nhập tùy quyền là: sở hữu thông tin, quyền và phép truy cập thông
tin.

14

Sở hữu thông tin nghĩa là chính sách truy cập các đối tượng do chủ nhân tài nguyên
quyết định
Quyền và phép truy cập là quyền khống chế những tài nguyên, do chủ nhân tài
nguyên chỉ định cho mỗi người hoặc nhóm người.
Kỹ thuật được dùng trong kiểm soát truy cập tùy quyền là danh sách kiểm soát truy
cập (Access Control List - ACL): Định danh các quyền và phép được chỉ định cho một chủ
thể hoặc một đối tượng. Đây là phương pháp linh hoạt để áp dụng DAC.
2.3.3. Kiểm soát truy nhập dựa trên vai trò (RBAC)
Chỉ định tư cách nhóm người dùng dựa trên vai trò của tổ chức hoặc chức năng của
vai trò. Chính sách này giúp tối giảm việc điều hành quản lí quyền và phép truy cập. Nó sẽ
hạn chế người dùng bất hợp pháp truy cập hệ thống.
Trong an ninh với hệ thống máy tính, kiểm soát truy cập trên cơ sở vai trò là một
trong số các chính sách kiểm soát và đảm bảo quyền sử dụng cho người dùng.
Trong nội bộ tổ chức, các vai trò (roles) được kiến tạo để đảm nhận các chức năng
công việc khác nhau. Mỗi vai trò được gắn liền với một số quyền hạn cho phép nó thao tác
một số hoạt động (permissions). Mỗi người dùng trong hệ thống được phân phối một vai trò
riêng, và qua việc phân phối đó họ tiếp thu được một số quyền hạn, cho phép họ thi hành
những chức năng cụ thể trong hệ thống.
Do người dùng không được cấp phép một cách trực tiếp, họ chỉ tiếp thu được những
quyền hạn thông qua vai trò của mình. Vì vậy, việc quản lí quyền hạn người dùng trở nên
đơn giản, và chỉ cần chỉ định những vai trò thích hợp cho người dùng. Việc chỉ định các vai
trò này đơn giản hoá những công việc thông thường như thêm một người dùng vào hệ

thống.
RBAC khác với các danh sách kiểm soát truy cập (ACLs) được dùng trong DAC, nó
chỉ định các quyền hạn tới từng hoạt động cụ thể với ý nghĩa trong cơ quan tổ chức, thay vì
tới các đối tượng dữ liệu hạ tầng. Ví dụ, ACL có thể cho phép hoặc từ chối quyền truy cập
viết một tập tin hệ thống (system file), song nó không cho ta biết phương cách cụ thể để
thay đổi tập tin đó. Trong hệ thống dùng RBAC, một thao tác có thể là việc một chương
trình ứng dụng tài chính kiến tạo một giao dịch trong “tài khoản tín dụng” (credit account
transaction) [4].
15

2.4. Kết luận chƣơng
Nội dung chương 2 đã trình bày khái niệm kiểm soát truy nhập, các hệ thống
kiểm soát truy nhập và chính sách kiểm soát truy nhập hệ thống thông tin. Đặc biệt,
nội dung nhấn mạnh vào phương pháp kiểm soát truy nhập dựa trên nhận dạng, xác
thực đối tượng tham gia vào hệ thống thông tin.
Có ba phương pháp chính để kiểm soát thực thể truy nhập hệ thống thông tin
dựa trên thông tin biết trước của người dùng, thông tin sở hữu của người dùng và
thông tin đặc trưng của người dùng.
Trong nội dung luận văn này, tôi tập trung vào tìm hiểu cách thức sử dụng chữ
ký số và cơ sở hạ tầng khóa công khai để thực hiện việc kiểm soát truy nhập hệ thống
thông tin. Đây cũng là nội dung chính sẽ được giới thiệu ở trong chương 3.

16

Chƣơng 3 - THỬ NGHIỆM DÙNG CHỮ KÝ SỐ
ĐỂ KIỂM SOÁT TRUY NHẬP HỆ THỐNG THÔNG TIN
3.1. Bài toán
Với bài toán kiểm soát truy nhập hệ thống thông tin, chức năng nhận dạng thực
thể (đối tượng) cần truy nhập vào hệ thống thông tin là rất quan trọng. Nó quyết định
chính đến hiệu quả của việc kiểm soát truy nhập hệ thống thông tin.

Có nhiều phương pháp kiểm soát truy nhập hệ thống thông tin khác nhau, trong
chương 3 này tôi lựa chọn cài đặt và thử nghiệm chương trình dùng chữ ký số để
kiểm soát truy nhập hệ thống thông tin. Chữ ký số thuộc loại thông tin: người dùng
biết cái gì. Người dùng muốn truy nhập vào hệ thống thông tin phải biết chữ ký số,
tức là phải có khóa bí mật để thực hiện việc ký số. Quản trị hệ thống thông tin sẽ cho
phép người dùng vào hệ thống nếu xác minh đúng chữ ký của người được phép vào
hệ thống thông tin.
Trong phần thử nghiệm ứng dụng, tôi sử dụng thuật toán hàm băm SHA1, mã
hóa DES, thuật toán ký số RSA trong thư viện mã nguồn mở OpenSSL để cài đặt
chương trình. Ứng dụng thực hiện việc ký số văn bản kết hợp mã hóa tập tin trước
khi gửi, và giải mã tập tin nhận được cùng việc xác nhận chữ ký dựa trên khóa cặp
khóa bí mật, công khai của người gửi, nhận. Chỉ người dùng có khóa bí mật mới có
quyền truy nhập và thao tác với văn bản. Những người dùng khác không có khóa bí
mật sẽ không thể truy nhập vào tập tin đã bị mã hóa.







17

3.2. Cài đặt chƣơng trình ký số RSA
3.2.1. Cài đặt chức năng ký số
3.2.1.1. Hàm sinh khóa bí mật và khóa công khai
private: RSA* generateKey (String^ klen){
r = RSA_new();
int len = Convert::ToInt32(klen);
r = RSA_generate_key(len, RSA_F4, NULL , NULL);

priKey = gcnew String(BN_bn2dec(r->d));
unsigned char* next1;
unsigned char* buffer1;
int len1 = i2d_RSAPrivateKey(r,0);
buffer1 = next1 = (unsigned char* )malloc(len1);
i2d_RSAPrivateKey(r,&next1);
String^ pri = uncharArrtoStrASCII(buffer1,len1);
StreamWriter^ sw = gcnew StreamWriter(txtPriv->Text);
sw->Write(pri); sw->Close();
unsigned char* next;
unsigned char* buffer;
len = i2d_RSAPublicKey(r,0);
buffer = next = (unsigned char* )malloc(len);
i2d_RSAPublicKey(r,&next);
String^ pubFile = txtPubKey->Text;
sw = gcnew StreamWriter(pubFile);
String^ pub = uncharArrtoStrASCII(buffer,len);
sw->Write(pub); sw->Close(); return r; }
18

3.2.1.2. Hàm thực hiện việc ký văn bản
private: void hSign(RSA* r ){
r = generateKey(keySize);
String^ iFile = inputFile->Text;
String^ oFile = sigFile->Text;
//Đọc nội dung vào 1 mảng wchar_t
long int numOfElems;
String^ ext = iFile->Substring(iFile->Length - 3);
wchar_t* buffer = NULL;
if( fileIsLocked(iFile) == false ){

if ( ext == "doc"){
buffer = readFileDoc(inputFile->Text, numOfElems); }
else{
buffer = readFileText(inputFile->Text, numOfElems); }
String^ mesStr = wchartoUni(buffer, numOfElems);
unsigned char* buf = (unsigned char*) str2Char(mesStr)
unsigned int slen;
unsigned char* signature = (unsigned char*) malloc(RSA_size(r));
unsigned char hash[20];
if (SHA1(buf, mesStr->Length,hash)){
int i = RSA_sign(NID_sha1,hash, 20,signature, &slen, r); //Ky
signature[RSA_size(r)] = '\0';
//Ghi giá trị băm ra file thập phân
String^ digestDec = uncharArrtoStrASCII(hash,20);
StreamWriter^ sw = gcnew StreamWriter(txtDig->Text);
sw->Write(digestDec);
19

sw->Close();
//Ghi chữ ký ra file dưới dạng thập phân
String^ sigDec = uncharArrtoStrASCII(signature,slen);
sw = gcnew StreamWriter(oFile);
sw->Write(sigDec);
sw->Close(); }
MessageBox::Show( "Ký thành công !!!");
}}
3.2.2. Cài đặt chức năng xác thực chữ ký số
3.3. Cấu hình hệ thống
3.4. Hƣớng dẫn sử dụng chƣơng trình
3.4.1. Chức năng ký số


Hình 3.1. Giao diện chức năng ký số
Chương trình sẽ sinh ra khóa RSA ngẫu nhiên có độ dài 512 bit hoặc 1024 bit
(theo lựa chọn cỡ khóa của người dùng). Sau đó ghi khóa bí mật và khóa công khai ra
các file tương ứng. Trước khi ký, văn bản sẽ được băm theo thuật toán SHA1.
Người sử dụng lựa chọn các thông tin sau:
 Cỡ khóa (có 2 lựa chọn 512 bit và 1024 bit)
 File văn bản: đường dẫn tuyệt đối của văn bản cần ký
20

 File khóa công khai: đường dẫn tuyệt đối của file sẽ lưu khóa công khai
 File khóa bí mật: đường dẫn tuyệt đối của file sẽ lưu khóa bí mật
 File chứa bản băm: đường dẫn tuyệt đối của file sẽ lưu đại diện của văn bản
 File chứa chữ ký: đường dẫn tuyệt đối của file chứa chữ ký
Trong chương trình, khóa công khai, khóa bí mật, đại diện văn bản, chữ ký
được biểu diễn dưới dạng 1 xâu chứa mã ASCII của các ký tự.
3.4.2. Chức năng xác thực chữ ký số RSA

Hình 3.2. Xác thực chữ ký số trên văn bản
Người nhận nhập vào các thông tin sau để xác thực văn bản
 File văn bản: đường dẫn chứa file văn bản
 File chứa chữ ký: đường dẫn chứa file chữ ký của người gửi
 File chứa khóa công khai: đường dẫn chứa khóa công khai của người gửi
Kết quả trả về là Chữ ký đúng nếu file văn bản không bị chỉnh sửa hoặc Chữ
ký sai nếu file văn bản bị chỉnh sửa
3.4.3. Chức năng mã hóa
3.4.4. Chức năng giải mã




21

3.5. Kết luận chƣơng
Nội dung chương 3 đã trình bày cách xây dựng, cài đặt và hướng dẫn sử dụng
chương trình ký số trong kiểm soát truy nhập hệ thống thông tin. Chương trình mô
phỏng việc sử dụng cặp khóa bí mật, công khai để ký và mã hóa cũng như giải mã và
xác thực thông tin. Việc ứng dụng cơ sở hạ tầng khóa công khai trong các giao dịch
thương mại điện tử, đăng nhập hệ thống, xác minh danh tính của chủ thể, kê khai các
hồ sơ điện tử….ngày càng phổ biến và phát triển nhanh chóng. Với sự cải tiến của
các thuật toán mã hóa nhằm nâng cao độ phức tạp tính toán của chương trình sẽ ngày
càng đem lại cho người dùng sự an toàn, tin tưởng hơn nữa vào việc sử dụng chữ ký
số và hạ tầng cơ sở khóa công khai trong công việc, giao dịch hàng ngày của mình.
22

KẾT LUẬN
Luận văn tập trung nghiên cứu một số phương pháp kiểm soát truy nhập hệ
thống thông tin. Đây là nội dung bao quát nhiều vấn đề quan trọng trong bảo mật và
đảm bảo an toàn thông tin trong điều kiện người sử dụng tích hợp nhiều thiết bị mới
như máy tính bảng, điện thoại thông minh,… vào các máy tính cá nhân kết nối mạng.
Luận văn dành chương 1 để giới thiệu tổng quan về an toàn thông tin bao gồm:
khái niệm, các yêu cầu và các giải pháp đảm bảo an toàn thông tin. Chương 2 tập
trung vào bài toán cụ thể là tìm hiểu một số phương pháp kiểm soát truy nhập hệ
thống thông tin. Phần phương pháp luận được mô tả chi tiết trong hai chương này là
cơ sở cho cài đặt thử nghiệm ở chương 3 với bài toán dùng chữ ký số để kiểm soát
truy nhập hệ thống thông tin. Toàn bộ nội dung của luận văn là những đóng góp
chính của tác giả dưới sự hướng dẫn trực tiếp của PGS.TS. Trịnh Nhật Tiến. Luận
văn đã đạt được hai kết quả chính sau:
1. Nghiên cứu tài liệu để Hệ thống lại các vấn đề:
Tổng quan về an toàn thông tin
Một số phương pháp Kiểm soát truy nhập Hệ thống thông tin

2. Thử nghiệm dùng Chữ ký số để NHẬN DẠNG đối tượng truy nhập Hệ thống
thông tin.
Đảm bảo an toàn và bảo mật thông tin trong môi trường truyền thông đa
phương tiện hiện nay là vấn đề cốt lõi trong cuộc chiến tranh mạng nóng bỏng mang
tầm vóc quốc gia. Những tìm hiểu ban đầu của luận văn hy vọng sẽ được nhiều chỉ
dẫn để tiếp tục sớm cập nhật nhanh hơn nữa các mô hình tiên tiến mới trong kiểm
soát truy nhập.


23

DANH MỤC TÀI LIỆU THAM KHẢO
Tiếng Việt
[1] GS. Phan Đình Diệu (2006), Lý thuyết mật mã và an toàn thông tin, nhà
xuất bản Đại học Quốc gia Hà Nội.
[2] PGS. TS. Trịnh Nhật Tiến (2008), Giáo trình An toàn dữ liệu.
Tiếng Anh
[3] Access Control in Support of Information Systems (2008), Developed by
DISA for the DoD
[4] Barkley J.(1997), “Comparing Simple Role Based Access Control Models
and Access Control Lists”, Proceeding Second ACM Workshop on Role-Based
Access Control, page 127-132.
[5] Doublas Stinson, Cryptography: Theory and Practice – CRC Press
03/17/95.
[6] Hu V., “The Policy Machine For Universal Access Control”, Doctoral
Dissertation, University of Idaho, May 23, 2002.
[7] William Stallings, Cryptography and Network Security Principles and
Practices, Fourth Edition, November 16, 2005.
[8] D. Ferraiolo and R. Kuhn (1992), “Role-based access controls”, In Proc. of
the 15th NIST-NCSC Naional Computer Security Conference, pp. 554–563.

×