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

Nghiên cứu, xây dựng giải pháp đảm bảo truyền số liệu an toàn trong mạng điều hành giám sát công nghiệp tt

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 (934.4 KB, 28 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO

BỘ QUỐC PHÕNG

VIỆN KHOA HỌC VÀ CÔNG NGHỆ QUÂN SỰ

NGUYỄN ĐÀO TRƯỜNG

NGHIÊN CỨU, XÂY DỰNG GIẢI PHÁP ĐẢM BẢO
TRUYỀN SỐ LIỆU AN TOÀN TRONG MẠNG ĐIỀU
HÀNH GIÁM SÁT CÔNG NGHIỆP

Chuyên ngành:
Mã số:

Cơ sở toán học cho tin học
9 46 01 10

TÓM TẮT LUẬN ÁN TIẾN SĨ TOÁN HỌC

HÀ NỘI - 2018


Công trình được hoàn thành tại:
VIỆN KH&CN QUÂN SỰ - BỘ QUỐC PHÕNG

Người hướng dẫn khoa học:
1. PGS. TS Lê Mỹ Tú
2. TS Nguyễn Doãn Cường
Phản biện 1:


GS. TSKH Hồ Tú Bảo
Viện John von Neumann
Đại học Quốc gia Thành phố Hồ Chí Minh

Phản biện 2:

PGS. TS Nguyễn Hồng Quang
Học viện Kỹ thuật mật mã

Phản biện 3:

PGS. TS Nguyễn Thị Hoàng Lan
Đại học Bách khoa Hà Nội

Luận án sẽ được bảo vệ trước Hội đồng đánh giá luận án
cấp Viện, họp tại Viện KH&CNQS
Vào hồi
giờ
ngày tháng năm 2018
Có thể tìm hiểu luận án tại thư viện:
- Thư viện Viện Khoa học và Công nghệ quân sự
- Thư viện Quốc gia Việt Nam


1

MỞ ĐẦU
1.

Tính cấp thiết của đề tài luận án


Mạng điều hành giám sát công nghiệp (ĐHGSCN) được sử dụng
nhiều trong các cơ sở hạ tầng quan trọng của quốc gia như hệ thống
dẫn dầu, hệ thống kiểm soát dẫn khí đốt, trong các nhà máy điện, nhà
máy hạt nhân, các hệ thống điều khiển và kiểm soát giao thông, hệ
thống cung cấp nước, và các hệ thống tiện ích khác[1],[9],[50],[58],
[94]. Do nhu cầu kết nối rộng với bên ngoài thì bên cạnh những lợi ích
mà nó đem lại về mặt kết nối thì cũng tiềm ẩn nhiều nguy cơ mất an
toàn cho chính mạng này[9],[14],[50],[69].
Các hình thức tấn công như tấn công từ chối dịch vụ DoS, tấn công
giả mạo, tấn công phát lại, hiểm họa từ chính những nhân viên trong
hệ thống, lỗ hổng phần mềm, mật khẩu yếu, tấn công không chối bỏ
và cả các mã độc[22],[23],[42],[55],[87],[100].
Bài toán bảo mật trong quá trình truyền dữ liệu của mạng ĐHGSCN
đã và đang là chủ đề được nhiều nhà nghiên cứu, nhiều tổ chức khoa
học, nhiều quốc gia quan tâm. Trong các giải pháp đó thì vấn đề áp
dụng những tiến bộ về mật mã luôn là chủ điểm được xét đến. Mật mã
không chỉ giúp bảo mật dữ liệu truyền trên đường truyền mà nó giúp
các bên có thể xác thực dữ liệu truyền đó được chính xác từ đích
mong muốn.
2.

Mục tiêu, đối tượng, phạm vi nghiên cứu

Nghiên cứu mô hình truyền thông các tầng giao thức DNP3 mạng
điều hành giám sát công nghiệp trên mạng TCP/IP. Khả năng can
thiệp mật mã vào các tầng của giao thức DNP3. Phương pháp xác thực
dữ liệu an toàn, hiệu quả và phương pháp thiết lập khóa mật mã an
toàn trong mạng ĐHGSCN.
Luận án tập trung nghiên cứu các vấn đề đảm bảo an toàn quá trình

truyền dữ liệu của các thiết bị trong mạng điều hành giám sát công
nghiệp về ba khía cạnh: xác thực, an toàn và bảo mật dữ liệu, thiết lập
và quản lý khóa an toàn và hiệu quả.


2

3. Phương pháp nghiên cứu
Phương pháp quan sát khoa học; Thực nghiệm khoa học; Phân tích và
tổng kết các kết quả nghiên cứu; Thu thập số liệu từ các tài liệu tham
khảo và từ những thực nghiệm trong mô phỏng thực tiễn.
4. Nội dung nghiên cứu
Nghiên cứu đề xuất bổ sung tiêu chuẩn an toàn cho mật mã RSA để
đảm bảo tính an toàn phù hợp trong mạng ĐHGSCN; Đề xuất cải tiến
thuật toán mã hóa, giải mã AES phù hợp với môi trường truyền thông
mạng ĐHGSCN; Đề xuất cải tiến thuật toán thiết lập và quản lý khóa
an toàn, chống lại những tấn công phổ biến trong mạng ĐHGSCN; Đề
xuất giải pháp mã hóa xác thực an toàn, hiệu quả trong mạng
ĐHGSCN.
5. Cấu trúc luận án
Luận án gồm phần mở đầu, 04 chương, phần kết luận và hướng
phát triển, danh mục các công trình khoa học đã công bố và tài liệu
tham khảo.
Chương 1: Tổng quan về an toàn và bảo mật trong mạng điều hành
giám sát công nghiệp.
Chương 2: Ngưỡng an toàn tham số hệ mật RSA và cải tiến thuật toán
mã khối AES trong mạng ĐHGSCN
Kết quả của chương được công bố trong các bài báo số 2 và 7.
Chương 3: Giao thức thiết lập và quản lý khóa an toàn trong mạng
điều hành giám sát công nghiệp

Kết quả của chương được công bố trong các bài báo số 5, 6, 9 và 10.
Chương 4: Giải pháp truyền thông an toàn mạng điều hành giám sát
công nghiệp
Kết quả của chương được công bố trong các bài báo số 4 và 8.
Ý nghĩa khoa học và thực tiễn
Về mặt lý thuyết khoa học, qua quá trình nghiên cứu luận án cho
thấy những cơ sở khoa học và kỹ thuật của việc nghiên cứu, đề xuất
tham số an toàn phù hợp, đề xuất giải pháp ứng dụng những cải tiến
về mã hóa, giải mã và thiết lập, quản lý khóa an toàn trong truyền số
liệu của mạng ĐHGSCN.


3

Cải tiến nâng cao tính an toàn, chống lại những tấn công trong
mạng ĐHGSCN. Từ đó có những giải pháp bảo mật phù hợp cho
mạng này.
Chương 1: Tổng quan về an toàn và bảo mật trong mạng điều
hành giám sát công nghiệp.
Chương này gồm các nội dung chính sau:
Phần 1.1 trình bày các vấn đề cơ bản về mạng ĐHGSCN.
Phần 1.2 trình bày giải pháp bảo mật của các tầng giao thức DNP3
truyền trên mạng TCP/IP, vai trò của mật mã trong an toàn mạng,
trong các giao thức truyền thông.
Giải pháp bảo mật trong các tầng giao thức DNP3
Giao thức DNP3 (Distributed Network Protocol) được phát triển và
sử dụng trong các ngành hoặc lĩnh vực thời gian thực ngày càng tăng
trên toàn thế giới, đặc biệt hơn cả là ở Châu Mỹ, Châu Á, Châu Âu và
Châu Úc. Các cơ sở hạ tầng thời gian thực đã và đang triển khai giao
thức DNP3 rất rộng rãi trong lĩnh vực điều khiển, giám sát, và truy

cập dữ liệu trên các trạm hoặc thiết bị kết nối, với các công cụ có
những tính năng truyền thông cải tiến tạo ra hiệu suất cao trong hệ
thống hoặc trong mạng một cách thuận lợi và tin cậy[60], [73].
Hình 1.5 minh họa chi tiết các tầng trong giao thức DNP3 và luồng
thông tin đi giữa bên nhận và bên gửi trong quá trình truyền dữ liệu
trong mạng ĐHGSCN qua mạng TCP/IP[85].
Trong những công trình nghiên cứu trước đó cũng có những đề xuất
sử dụng mật mã [8],[79],[89],[95],[104] nhưng những công trình này
sử dụng những phương pháp mã hóa mà theo NIST thì không đảm bảo
an toàn trong môi trường mạng như hiện nay. Luận án tập trung giải
quyết những vấn đề hoàn thiện trong một giải pháp đảm bảo truyền số
liệu an toàn trong mạng ĐHGSCN. Để đảm bảo an toàn thì cần phải
giải quyết ba vấn đề quan trọng: Bảo mật thông tin bằng giải pháp mật
mã của riêng hệ thống; Thiết lập và quản lý khóa mật mã; Xác thực


4

Bên gửi

Bên nhận

Chương trình ứng
dụng người dùng

Chương trình ứng
dụng người dùng

Tầng ứng dụng DNP3
Tầng giả giao vận DNP3

Tầng liên kết dữ liệu
DNP3

Giải pháp mật mã

Giải pháp mật mã

tính chính xác của dữ liệu được truyền từ nguồn đến đích, trong mạng
ĐHGSCN.

Tầng ứng dụng DNP3
Tầng giả giao vận DNP3
Tầng liên kết dữ liệu
DNP3

TCP/UDP

TCP/UDP

IP

IP

Ethernet IEEE802.3

Ethernet IEEE802.3
Đường truyền

Hình 1.5 Mô hình truyền thông an toàn của giao thức DNP3 qua mạng
TCP/IP

Chương 2: Ngưỡng an toàn tham số hệ mật RSA và cải tiến thuật
toán mã khối AES trong mạng ĐHGSCN
Chương này gồm hai nội dung chính:
(i) Đề xuất tiêu chuẩn tham số cho hệ mật RSA
(ii) Đề xuất cải tiến thuật toán mã hóa AES trong mạng ĐHGSCN
2.1. Đề xuất tiêu chuẩn tham số cho hệ mật RSA
Theo [44], siêu máy tính mạnh nhất trên thế giới là Sunway
TaihuLight của Trung Quốc có tốc độ 93,01 petaflop/s. Như vậy, số
phép toán trong một năm mà siêu máy tính này thực hiện được theo
biểu thức (2.7).
93,019  244,8  292,4

(2.7)

Giả thiết 2.5: Ngưỡng an toàn trong lĩnh vực Kinh tế - Xã hội tại
thời điểm 2017, ký hiệu là A(2017) được cho bởi biểu thức (2.8).
A(2017) = 2103
(2.8)
Giả thiết 2.6: Sức mạnh tính toán của bộ vi xử lý được nhân đôi sau
mỗi một năm với giá thành không đổi.


5

Công thức xác định các ngưỡng an toàn cho đến năm y (y  2017):
A( y)  A(2017)  2 y 2017  2

( y  2017)
10


L  2n  

11

 A(2017)  210

L[2 ]
2
104
512

2(y 1999)
3

( y  2017)

(2.9)

A(y )

(2.10)
Bảng 2.3 Bảng giá trị ngưỡng an toàn theo các phương pháp
Phương
pháp

Năm

Độ an
toàn cho
khóa đối

xứng

Độ an
toàn cho
phân tích
số (RSA)
21772924

Độ an
toàn
cho
DLP

Độ an
toàn
cho
ECC

Độ an
toàn cho
hàm
băm

Luận án

20172026

103-112

Lenstra&

Verhuel

2017

83

1717

147

159

166

ECRYPT II
(Châu Âu)

20162020

96

1776

192

192

192

NIST (Mỹ)


20112030

112

2048

224

224

224

BSI (Đức)

2016

128

2000

250

250

256

ANSSI
(Mỹ)


20142020

100

2048

200

200

200

Phương pháp mã hóa liên tiếp và tiêu chuẩn cho tham số công
khai
Ngưỡng an toàn tính toán (thường được xét đến một thời điểm cụ
thể) là một con số, ký hiệu là A, sao cho mọi tổ chức, cá nhân đều
không thể thực hiện được A phép tính cho đến thời điểm được xét.
Bài toán RSA. Cho bản mã C được mã hóa bởi hệ mật RSA với
tham số công khai (N, e). Hãy tìm M sao cho M e  C (mod N ) .
Tấn công mã hóa liên tiếp[52],[70] nhằm tìm ra bản rõ M từ bản mã
C theo hệ mật RSA với bộ tham số công khai (N, e) được thực hiện
theo thuật toán 2.1.
Thuật toán 2.1. (Mã hóa liên tiếp giải bài toán RSA)
Input: C, (N, e)
Ouput: M thỏa mãn M e  C (mod N )
1. M  C;
e
2. X  M  mod N  ;



6

3. while (X  C) do
3.1 M  X;
3.2 X  M e  mod N  ;
4. return M;

Mệnh đề 2.1. Thuật toán 2.1 sẽ dừng sau đúng ord ( N )e  1 vòng lặp
ở bước 3.
Hệ quả 2.1. Chi phí tính toán của thuật toán 2.1 là ord ( N )e phép lũy
thừa với số mũ e trong

N

.

Thuật toán 2.2. (Mã hóa liên tiếp phân tích modulo N)
Input: (N, e) là bộ tham số khóa công khai RSA;
Ouput: p là ước nguyên tố của N;
1. X  random(1, N); Y  X;
2. p  gcd(X, N);
3. while (p  {1, N}) do
3.1 X  Xe mod N;
3.2 p  gcd(X  Y, N);
4. return p

Mệnh đề 2.2. Giả sử N = pq và nếu các điều kiện sau đây được thỏa
mãn:
ord ( p)e  ord ( q)e
(2.21)

Giá trị Y lấy trong bước 1 thỏa mãn
Y u  Y (mod q) víi u  e

ord ( p )e

(mod  (q))

(2.22)
thì thuật toán 2.2 sẽ dừng với đầu ra là ước nguyên tố p của N.
Hệ quả 2.2. Chi phí tính toán của thuật toán 2.2 là
m  min ord ( p )e, ord ( q )e phép lũy thừa với số mũ e và m phép tìm
ước chung lớn nhất của hai số nguyên trong N .
Tiêu chuẩn đề xuất: Số mũ công khai e thỏa mãn điều kiện (2.30)
Bổ đề 2.1. Cho N là một số nguyên dương, r là ước nguyên tố của
 ( ( N )) . Khi đó nếu
ed mod  ( N )  1 víi d   ( ( N )) / r

thì ord ( N )e là bội của r với r ||  ( ( N )) .
m

m

(2.31)


7

2.2 Đề xuất cải tiến thuật toán mã hóa AES trong mạng ĐHGSCN
Khóa bí mật được phân bổ ki , j  ki0, j ki1, j ...kit, j là phần tử khóa có độ dài
8 bit, 0  i  3;0  j  3;0  t  7;

Cải tiến hàm SubBytes
4
5
6
7
4
5
6
7
4
5
6
7
g0  k2,0
k2,0
, g1  k2,0
k2,0
, g2  k2,1
k2,1
, g3  k2,1
k2,1
, g4  k2,2
k2,2
, g5  k2,2
k2,2
,
4
5
6
7

g6  k2,3
k2,3
, g7  k2,3
k2,3
.

Những bit này được nhóm thành 4 nhóm: g0g4,

g1g5, g2g6, g3g7 trong đó g0, g1, g2 và g3 lần lượt là số hàng và g4, g5, g6
và g7 lần lượt là số cột của ma trận trạng thái. Dữ liệu ở vị trí M(g0,
g4) được thay thế từ S-box. Phép thay thế được thực hiện tương tự như
hàm SubBytes của AES. Thực hiện tương tự với các vị trí còn lại
M(g1, g5), M(g2, g6) và M(g3,g7).
Cải tiến hàm ShiftRows:
0 1
2
3
4
5
6
7
0 1
2 3
4 5 6 7
a0  k0,0
k0,0 k0,0
k0,0
, a1  k0,0
k0,0
k0,0

k0,0
, a2  k0,1
k0,1k0,1
k0,1 , a3  k0,1
k0,1k0,1k0,1 ,
0 1
2 3
4 5 6 7
0 1 2 3
4 5 6 7
a4  k0,2
k0,2 k0,2
k0,2 , a5  k0,2
k0,2 k0,2 k0,2 , a6  k0,3
k0,3k0,3k0,3 , a7  k0,3
k0,3k0,3k0,3 . Các bit
của a0 được XOR với những bit của a7 để có được một kết quả 4 bit
nhị phân của P, P  a0  a7 . Tương tự như vậy Q, R và S được tạo ra
từ các nhóm còn lại [a1, a6], [a2, a5] và [a3, a4] tương ứng, Q  a1  a6 ,
R  a2  a5 , S  a3  a4 . Các bit của P và R được sử dụng để xác định
chỉ số hàng còn các bit của Q và S xác định số lần dịch vòng trái. Hai
bit đầu tiên của P cho biết chỉ số hàng được dịch vòng trái.
Cải tiến hàm MixColumns
0
1
2
3
4
5
6

7
0 1
2 3
4 5 6 7
b0  k1,0
k1,0
k1,0
k1,0
, b1  k1,0
k1,0
k1,0
k1,0
, b2  k1,1
k1,1k1,1
k1,1 , b3  k1,1
k1,1k1,1k1,1 ,
0 1
2 3
4
5
6
7
0
1
2
3
4 5 6 7
b4  k1,2
k1,2 k1,2
k1,2 , b5  k1,2

k1,2
k1,2
k1,2
, b6  k1,3
k1,3
k1,3
k1,3
, b7  k1,3
k1,3k1,3k1,3.

Sau đó được nhóm lại, b0b7 , b1b6 , b2b5 , b3b4 , những nhóm này chuyển
đổi thành giá trị thập phân tương ứng và tính mod với 4 cho mỗi nhóm
(ví dụ b0b7  01010010  8210 , r  82%4  2 tức là cột thứ ba). Phần dư
r sẽ luôn luôn nằm trong phạm vi từ 0 đến 3 (nghĩa là 0 ≤ r ≤ 3. 0, 1,
2 và 3) tương ứng cột đầu tiên, thứ hai, thứ ba và thứ tư. Các biến đổi
MixColumns của thuật toán ban đầu được thực hiện trên các cột đã
chọn. Số cột tối đa được trộn trong bước này là 4.


8

Kết quả thử nghiệm được thể hiện trong bảng 2.5.
Bảng 2.5 Hiệu ứng thác đổ trong các AES khác nhau
Hiệu ứng thác đổ
Khóa mã (Hex)
123456789ABCDEF0123456789ABCDEF0

AES_Mod

AES[6]


AES_std

53,13%

52,34%

50,00%

47,66%

51,56%

48,44%

55,47%

51,56%

47,66%

53,13%

50,78%

46,09%

023456789ABCDEF0123456789ABCDEF0
123456789ABCDEF0123456789ABCDEF0
123456789ABCDEF1123456789ABCDEF0

123456789ABCDEF0123456789ABCDEF0
123456789ABCDEF0123456789ABCDEF1
123456789ABCDEF0123456789ABCDEF0
123456689ABCDEF0123456789ABCDEF0

Vì các cải tiến được thực hiện trên thuật toán AES ban đầu nên tính
an toàn của thuật toán AES gốc được gữ nguyên. Do đó, để dò quét
khóa mã cần thực hiện ít nhất 2128 khả năng. Điều này về lý thuyết là
không thể. Vì vậy, tấn công vét cạn sẽ không thực hiện được trên AES
cải tiến. Mặt khác, những cải tiến trong luận án thực hiện trên thuật
toán AES nhằm mục đích không tạo ra một khuôn mẫu cố định nào
trong các bước của thuật toán. Việc cải tiến đảm bảo thuật toán có tính
xáo trộn và khuếch tán rất lớn. Bởi vậy, các phân tích thống kê về bản
mã khó thành công trong thuật toán AES cải tiến.
Nâng cao hiệu năng mã hóa và giải mã của AES
Kết quả thiết kế mã khối AES cải tiến trên FPGA

Hình 2.19 Kết quả mô phỏng thời gian mã hóa AES cải tiến trên ISIM


9

Chương 3: Giao thức thiết lập và quản lý khóa an toàn trong
mạng ĐHGSCN
Chương này trình bày các nội dung chính sau:
(i) Cấu trúc OFT
(ii) Đề xuất hai giao thức thiết lập và quản lý khóa mật mã trong
mạng ĐHGSCN
3.1 Giao thức OFT
OFT là một giao thức quản lý khóa nhóm được Sherman và cộng sự

đề xuất trong [10],[31]. Nó dựa trên kiến trúc LKH[19],[32] và sử
dụng hàm một chiều trong quản lý khóa[56]. Nhóm trưởng duy trì một
cây nhị phân, mỗi nút x của cây gắn với hai khóa mật mã gồm khóa
của nút,
và khóa mù của nút,
. Khóa mù của nút x là
đầu ra của hàm một chiều với đầu vào là khóa của nó, .
Các khóa của nút bên trong, i được xác định theo quy tắc
( (

)

(

)). Trong đó,



là ký

hiệu con trái và con phải của nút x.
Root

...

...

I”
I’


R”

R

L

...

...
...

R’

I

... ...

A

...
...

...
F

E
C

B


D

Hình 3.3. Tấn công thông đồng trong OFT
Tấn công thông đồng trong OFT
Trong [39], Horng đã chỉ ra lỗ hổng các tấn công thông đồng trong
OFT. Sau đó, ông ta kết luận rằng OFT không bảo toàn bí mật trước
và bí mật sau.
Mệnh đề 3.1. (Mệnh đề 1 của Xu, [99]).
Trong hình 3.3, A và C thông đồng với nhau chỉ tìm được các khóa
gồm: - kI trong khoảng thời gian [tBmax, tDmin]


10

- kI’ trong khoảng thời gian [tBmax, tDmin]([tA, tEmin][tEmax, tC])
- kI” trong khoảng thời gian [tBmax, tDmin]([tA, tEmin][tEmax,
tC])([tA, tFmin][tFmax, tC])
... cứ tiếp tục như vậy lên đến nút gốc.
Tấn công thông đồng tổng quát:
Mệnh đề 3.2 (Mệnh đề 2 của Xu, [99]).
Một cặp A và C thông đồng với nhau cũng không thể tìm ra bất kỳ
khóa nào mà chúng không được biết theo giao thức OFT, nếu
- A bị trục xuất sau khi C gia nhập nhóm.
- A và C cùng gia nhập nhóm.
- A và C cùng bị trục xuất ra khỏi nhóm.
Mệnh đề 3.3 (Mệnh đề 3 của Xu, [99])
Chọn bất kỳ trong các nút bị trục xuất và các nút gia nhập nhóm mà
tạo thành cặp có thể thông đồng với nhau để tìm ra một số khóa nút
chưa biết khi và chỉ khi cặp nút đó thông đồng với nhau để cùng tìm ra
khóa nút.

Điều kiện tấn công thông đồng:
Định lý 3.1 (Định lý 1, [101])
Trở lại hình 3.3, các khóa nút mà User_A và User_C có thể thông
đồng với nhau để tìm ra là:
- kI trong khoảng thời gian [tBMax, tDMin],
- kI’ trong khoảng thời gian [tBMax, tDMin]([tA, tEMin][
, tDMin]
[tEMax, tC]),
- xI’’ trong khoảng thời gian [tBMax, tDMin]([tA, tEMin][
, tDMin]
[tEMax, tC])([tA, tFMin][
, tDMin][tFMax, tC]),
Và cứ tiếp tục như vậy cho đến nút gốc.
Định lý 3.2 (Định lý 2, [101])
Nếu cặp người dùng User_A và User_B thông đồng nhau để tìm ra
bất kỳ khóa nào từ giao thức OFT thì phải thỏa mãn các điều kiện sau:
- User_C gia nhập nhóm sau khi User_A rời khỏi nhóm hoặc User_A
gia nhập nhóm sau khi User_C rời khỏi nhóm.
- Có đủ số lượng người dùng trong B và D.


11

3.2 Đề xuất giao thức thiết lập và quản lý khóa mật mã trong
mạng ĐHGSCN
Giao thức đề xuất OFT-1
Cấu trúc này gồm hai tập, MT và RT. Cấu trúc khóa cho mỗi tập này
được xây dựng theo thuật toán 3.3 và 3.6. MTU đóng vai trò nhóm
trưởng chung cả nhóm, khóa nhóm tại đây được sử dụng để truyền
giữa MTU với các SUB-MTU. SUB-MTU đóng vai trò là nhóm

trưởng của nhóm con, khóa ở đây gọi là khóa nhóm con được sử dụng
để trao đổi dữ liệu giữa các RTU với MTU hoặc các RTU với các
SUB-MTU còn lại trong nhóm mà MTU quản lý.
MT0

Trong đó:
h=log2m

K 0,1

MT2
Kh,2
K20,1

Kh,1
K10,1

....

....

MT1

MTm-1

....

Kh,m-1
Km-10,1


RT22

K11,2 K21,1 K21,2 Km-11,1

...

...

...

MTm
Kh,m
Km0,1

RT21

K11,1

OFT-1
mức
MTU

K 1,2

K1,1

RT23

RT24


Km-11,2 Km1,1 Km1,2

OFT-1
mức
RTU

K22,1 K22,2 K22,3 K22,4
RT17

RT18

RT19

RT20

K14,1 K14,2 K14,15 K14,16
RT1

RT2

RT15

RT16

SubOFT-1/ tập con RT

Hình 3.9 Cấu trúc giao thức đề xuất OFT-1
Thêm một SUB-MTU hoặc RTU vào hệ thống
Khi bổ sung thêm một thành viên mới vào hệ thống trong OFT-1
được thực hiện theo hai giai đoạn: Giai đoạn thứ nhất, thời hạn của

khóa nhóm chưa hết thì để đảm bảo các liên lại được liên tục thì sẽ
thực hiện theo thuật toán 3.7; Giai đoạn thứ hai, thời hạn của khóa
nhóm đã hết, theo thuật toán 3.8. Hình 3.10 mô tả chi tiết quá trình
cập nhật khóa khi kết nạp thêm một SUB-MTU/ RTU vào hệ thống.


12

Thuật toán 3.7: UpdateKeyAddnewMemKeyinvalid()
B(Thành viên mới)

Gold (Nhóm cũ)

Gold có khóa nhóm cũ là kGold và B có khóa mới k B .

Initiation

KDC



B
yB  g  k B  ;



yGold  g kGold ;

sB  signB ( yB );


sGold  signKDC ( yGold );

Pha I

 yGold , sGold 


B
 B B
KDC 
y ,s

KDC
Pha II

if (ver (sB , yB )  true)then

B
if (ver (sGold , yGold )  true)then

kGnew  f kGold , yB ;

kGnew  f kB , yGold ;










return kGnew



    

'
'
K0,1 K 0,1
 f g K1,1 , g K1,2

MT0

'
K1,2

K1,1

K 2,1





'
'
K1,2
 f g  K 2,3  , g  K 2,4





K 2' , 4

K 2,3

K 2,2

MT7
MT1

MT2

MT3

MT4

MT5

MT6

K 3,1

K 3,2

K 3,3

K 3,4


K 3,5

K 3,6
MT8 ra
khỏi hệ
thống

MT0

K 0,1
K 1,2

K1,1

K 2,1

K 2,3

K 2,2

K2,4

MT1

MT2

MT3

MT4


MT5

MT6

MT7

MT8

K 3,1

K 3,2

K 3,3

K 3,4

K 3,5

K 3,6

K 3,7

K 3,8

MT9 gia
nhập hệ
thống
MT0




'
'
'
K 0,1
 f g  K1,1  , g  K1,2

K 0,1

K

MT1

MT2

K 3,1

K 3,2



 f  g  K  , g  K 

'
'
'
K1,2
 f g  K 2,3  , g  K 2,4


K1,2

K1,1

K 2,1



K 2,2

K 2,3

'
2,4

K

3,7

'
2,4

MT3

MT4

MT5

MT6


MT7

K 3,3

K 3,4

K 3,5

K 3,6

K 3,7



'
3,8

'
K3,8
 f g  K 4,1  , g  K 4,2 



'
K 3,8

MT8

MT9


K 4,1

K 4,2

Hình 3.10 Cập nhật thành viên trong OFT-1


13

Trục xuất một SUB-MTU hoặc RTU ra khỏi hệ thống
Khi trục xuất một SUB-MTU ra khỏi hệ thống, cấu trúc khóa của tập
MT thay đổi và khóa nhóm mới chỉ là với những SUB-MTU còn lại và
khóa này phải được tính lại và phân phối đến các SUB-MTU theo
thuật toán 3.9. Quá trình trục xuất một RTU ra khỏi hệ thống cũng
được thực hiện tương tự như trục xuất một SUB-MTU nhưng ở mức
RTU và việc cập nhật lại khóa được hiệu chỉnh lên đến tận MT0.
Giao thức đề xuất OFT-2
Cấu trúc quản lý khóa giống như trong OFT-1 nhưng trong quá trình
cập nhật (bổ sung thành viên mới, trục xuất một thành viên ra khỏi hệ
thống) sẽ có những điều chỉnh sao cho chống tấn công thông đồng.
MT0



'
'
K 0,1
 f g  K1,1  , g  K1,2



'
K 0,1

K 1,' 2

K1,1
'
1,2

K
K 2,1



'
 f g  K 2,3  , g  K 2,4




K 2' , 4

K 2,3

K 2,2



MT7
MT1


MT2

MT3

MT4

MT5

MT6

K 3,1

K 3,2

K 3,3

K 3,4

K 3,5

K 3,6

MT0

MT8 ra
khỏi hệ
thống

K 0,1

K 1,2

K1,1

K 2,1

K 2,3

K 2,2

K2,4

MT1

MT2

MT3

MT4

MT5

MT6

MT7

MT8

K 3,1


K 3,2

K 3,3

K 3,4

K 3,5

K 3,6

K 3,7

K 3,8
MT9 gia
nhập hệ
thống

MT0

'
'
'
K 0,1
 f  g  K1,1  , g  K1,2

K 0,1

'
K1,2


K1,1





'
'
'
K 2,3
 f g  K 3,5
 , g  K3,6'  K 2,4

K 2,1
MT1

K 3,1

MT2

K 3,2

K 2,2
MT3

K 3,3

MT4

K 3,4




'
S K 2,3

M K

'
3,7

'
K 2,4

'
K3,5
 f g  K 4,1  , g  K 4,2 

'
K 3,5



 f  g  K  , g  K 

'
'
K1,2
 f g  K 2,3
 , g  K 2,4' 


'
3,6

MT5

MT6

MT7

K4,1

K4,2

K4,3



K

K
'
3,7

'
3,7

S’




'
3,8

 f g  K 4,3  , g  K 4,4 
'
K 3,8





'
K3,8
 f g  K 4,5  , g  K 4,6 

M’
K4,4

MT8

K4,5

MT9

K4,6

Hình 3.11 Cập nhật thành viên trong OFT-2





14

Khi thêm một SUB-MTU hoặc RTU vào hệ thống, hệ thống thực
hiện theo hai giai đoạn tương tự như OFT-1: Giai đoạn thứ nhất, khi
khóa nhóm chưa hết hạn sử dụng thì sẽ thực hiện theo thuật toán 3.7;
Giai đoạn thứ hai, khi khóa nhóm hết hạn sử dụng KDC sẽ tiến hành
tìm một nút gần nút gốc nhất để bổ sung thêm nút mới này tương tự
như OFT-1. Tuy nhiên, có thêm một số nút ảo S và M để tránh trùng
lặp lại OFT-1. Để cây không phát triển quá lớn thì khi cập nhật khóa,
nếu khóa của nút anh em với M thì M và S sẽ bị xóa khỏi cây và nút
con trái của S sẽ thay thế vị trí của S.
Khi trục xuất một RTU hoặc SUB-MTU ra khỏi hệ thống thì cũng
cần phải cập nhật lại toàn bộ các khóa liên quan tới RTU hoặc SUBMTU bị trục xuất đó. Quá trình thực hiện tương tự như OFT-1. Hình
3.11 mô tả quá trình cập nhật thành viên trong OFT-2.
Bảng 3.1 So sánh giao thức thiết lập và quản lý khóa đề xuất với các
giao thức khác
Giao thức
(1)

MITM
(2)

Khóa
nhóm
còn
OFT-1 hạn

OFT-2 Khóa

nhóm
hết
hạn



ROFT,
NOFT
[101]

Không

AC
(3)



RA
(4)

Tổng thời gian
truyền thông
của KDC (bổ
sung;trục xuất)
(5)

Thời gian tính toán của
KDC (bổ sung;trục xuất)
(6)


1;

t g  t f  tsign  tver  tE  tD ;

h 1

(h  1)  tE  (h  1)  t g



2h  1;

h 1




OFT [10],
[31]

Không Không Không

Ku và cộng
sự [98]

Không



Không


(2h  1)  t E  (2h  1)  t g 
t g  t f  tsign  tver  tE  tD ;

(h  1)  tE  (h  1)  tg

Tổng thời gian
tính toán của các
thành viên (bổ
sung;trục xuất)
(7)

t g  t f  tsign  tver 
tE  tD ;

tD  2h  tg
2tD  (2h  1)  t g ;

tD  2h  tg

2h  1;

(2h  1)  tE  (2h  1)  t g ;

2tD  (2h 1)  tg ;

h 1

(h  1)  tE  (h  1)  tg


t D  2h  t g

2h  1;

(2h  1)  tE  (h 1)  tg ;

2tD  h  t g ;

h 1

(h  1)  tE  h  tg

tD  h  t g

2h  1;

(2h  1)  tE  (h 1)  tg ;

2tD  h  t g ;

h 1

(h  h  1)  tE  (h  h)  tg

h  tD  (1/ 2)h2  tg

2

2



15

Xu và cộng
sự [99]

Không



Không

2h  1;

(2h  1)  tE  (h  1)  t g ;

2tD  h  t g ;

h 1

(h  1)  tE  (h  2)  tg

tD  h  t g

(2h  1)  tE   2S  h  1  tM

2h  1;
HOFT [51]

Không




Không

h 1

(h  S  h  1)  t f ;

(h  1)  tE   h  2   tM
(h  1)t f

1  h   tg  2h  tM 
( h  S  h)  t f ;

tD  (h  1)  tM  h  t f

Tổng thời gian thực hiện của giao thức ( T Total ) khi cập nhật thành
viên của nhóm được tính như sau:
- Thời gian thực hiện của giao thức đề xuất khi bổ sung thêm một
Total
KDC
KDC
nodes
thành viên mới vào nhóm là Tadd
 ttrans
 max  tadd
, tadd
.
- Thời gian thực hiện của giao thức đề xuất khi trục xuất một thành

Total
KDC
KDC
nodes
viên gia khỏi nhóm là Tdel
 ttrans
 max  tdel
, tdel
.
Hàm
ở đây là do khi thực hiện cập nhật thành viên trong giao
thức đề xuất thì việc tính toán, lưu trữ của nhóm trưởng và các thành
viên trong nhóm được thực hiện đồng thời.
Chứng minh tính an toàn của các giao thức đề xuất
Định nghĩa 3.3
Giao thức đề xuất OFT-1 là đúng đắn nếu với t 0, dãy đơn ⃗⃗⃗⃗⃗⃗ ,
i  S(t) thì i chỉ biết các khóa của những nút trong đường dẫn từ nút
lá của nó đến nút gốc và các khóa mù của nút anh em trên đường dẫn
này và không biết các khóa bí mật hoặc khóa mù khác trong T(t).
Định nghĩa 3.4
Giao thức đề xuất OFT-1 được gọi là an toàn chống tấn công người
dùng đơn nếu với t 0, dãy đơn ⃗⃗⃗⃗⃗⃗ , i  S(t) thì i không bao giờ
có thể khôi phục lại bất kỳ khóa của nút nào trong T(t) từ Ki và những
thông điệp thu hồi khóa.
Định nghĩa 3.5
Giao thức đề xuất OFT-1 được gọi là an toàn chống các tấn công
thông đồng nếu với t 0, dãy đơn ⃗⃗⃗⃗⃗⃗⃗ , tập người dùng bất kỳ U =


16


{i|iS(t)}, U không thể khôi phục lại bất kỳ khóa bí mật nào trong T(t)
từ {Ki|iU} và những thông điệp thu hồi khóa.
Bổ đề 3.1
Giao thức đề xuất OFT-1 đúng và an toàn chống tấn công người
dùng đơn.
Bổ đề 3.2
Cặp người dùng thông đồng User_A và User_C bất kỳ không thể
tính ra bất kỳ khóa chưa biết nào từ giao thức đề xuất OFT-1.
Bổ đề 3.3
Giao thức đề xuất OFT-1 là an toàn chống lại tấn công thông đồng.
Ngoài ra, giao thức đề xuất OFT-1 bảo toàn bí mật trước và bảo toàn
bí mật sau nhờ vào quá trình cập nhật lại khóa ngay sau khi khóa
nhóm hết hạn trong trường hợp bổ sung một thành viên mới và cập
nhật lại khóa ngay khi một thành viên trong nhóm bị trục xuất. Giao
thức OFT-1 chống tấn công bên ngoài dưới dạng MITM dựa vào sử
dụng chữ ký số và quá trình xác thực chữ ký số. Ở đây khi kẻ thứ ba
xen vào để có thể lấy được thông tin khóa hoặc các thông tin liên quan
đến khóa là không thể vì khi thiết lập khóa cho thành viên mới khi gia
nhập hệ thống cần phải xác thực chữ ký.
Việc chứng minh tính an toàn của giao thức đề xuất OFT-2 trước các
tấn công cũng tương tự như chứng minh OFT-1.
Chương 4: Giải pháp truyền thông an toàn trong mạng điều hành
giám sát công nghiệp
Chương này trình bày các nội dung chính sau: Một là, sửa đổi cấu trúc
bên trong giao thức DNP3; Hai là, mã hóa xác thực gói tin DNP3 sử
dụng các tham số an toàn tương ứng với các mức an toàn của những
mối nguy hiểm trước các cuộc tấn công mạng.
i) Đề xuất sửa đổi cấu trúc bên trong giao thức DNP3
ii) Đề xuất mã hóa xác thực sử dụng nhiều tham số an toàn, nhiều

khóa bí mật


17

Sửa đổi cấu trúc bên trong giao thức DNP3
Tầng giả giao vận

NH

Tối đa 2048 byte

Data

KSN

Tầng liên kết dữ liệu
(tối đa 292 byte)

OH
Data
OH

Data

KSN

OH

Data


NH

KSN

OH

Data

NH

KSN

OH

Data

PD

PD

CRC cải tiến
NH

KSN

Trong đó:
NH: New Header
KSN: Key Sequence Number
OH: Original Header

PD: Padding
CRC: Cyclic Redundancy Check
TS: TimeStamp

Tầng vật lý

OH

Data

PD

CRC TS

AES
algorithm

NH

KSN

OH

Data

PD

CRC TS

NH


KSN

OH

Data

PD

CRC TS

Hình 4.2 Cấu trúc bên trong của giao thức MoDNP3
Đề xuất mã hóa xác thực sử dụng nhiều tham số an toàn, nhiều
khóa bí mật
Bên gửi

Bên nhận
KDC (Key
Distributed
Central)

Original
Data

Look up Hash Table
(key=SECP[i-1],
Value=encKey[i], SECP[i])

Original
Data


encKey[i]
(i=1,...,k)
Footer
(SECP[i]
(i=1,...,k))

AES
Decryption

Footer[i]
AES
Encryption

Body

Footer

Transmitted Data

AES
Encryption
Header
(SECP[0])

Drop

encKey[k]

AES

Encryption

Header

No

Yes and
=
i=k

GPK (Group
Private Key)

AES
Decryption
Header

Body

Footer

Received Data
AES
Decryption

GPK (Group
Private Key)

Header


Yes
=

No
Drop

Look up in Hash Table
(key=SECP[0])

Hình 4.5 Mô hình mã hóa xác thực nhiều tham số an toàn và nhiều
khóa bí mật, k (k ≥3).
Việc thử nghiệm được thực hiện trên hai máy trong hệ thống
ĐHGSCN giả lập, một máy coi như MTU, còn máy kia coi như RTU.
Máy MTU là một máy tính chạy Windows 7 bộ vi xử lý Intel Core i5
Dual Core 2,4GHz*2,4GHz, RAM 4GB và máy còn lại chạy
Windows 7 bộ vi xử lý Intel Core i5 2,4GHz, RAM 2GB đóng vai trò
là RTU. Hai máy này được nối mạng với nhau qua 2 Switch Planet và
02 Router Cisco như hình 4.6.


18

Hình 4.6 Mô hình mô phỏng truyền thông an toàn giữa MTU và RTU
Một số kết quả thực nghiệm với giải pháp đề xuất
Thực nghiệm được thực hiện truyền một file text đơn giản có kích
thước 16B trên máy đóng vai trò MTU truyền sang máy khác đóng vai
trò RTU. Các khóa bí mật được sử dụng để mã hóa và giải mã bằng
AES cải tiến (chương 2) có kích thước là 16, 24 và 32 MB tương ứng
với AES-128, 192, 256. Các file chứa tham số bí mật có kích thước
thay đổi từ 16B đến 1KB để làm các bí mật SECP[i] (i =0,...,k-1).

Bảng 4.3Thời gian xác thực với các mức an toàn và độ dài khóa khác
nhau
Kích thước
khóa (bit)

128

192

256

Kích thước
tham số bí mật
(byte)

3 tham
số bí mật

4 tham
số bí mật

5 tham
số bí mật

6 tham
số bí mật

7 tham
số bí mật


16
32
64
128
256
512
1,024
16
32
64
128
256
512
1,024
16
32
64
128
256
512
1,024

46
47
62
62
62
125
327
47

47
60
62
62
125
328
62
62
62
62
63
125
343

46
47
62
63
109
203
483
47
47
62
62
109
203
499
62
62

63
63
109
203
499

46
47
62
63
109
218
671
47
62
62
62
109
218
686
63
62
63
63
125
218
671

47
62

62
63
109
312
874
47
62
62
62
109
312
873
63
62
63
78
125
312
874

62
62
62
63
109
328
1,124
47
63
63

78
109
328
1,123
63
63
63
78
125
327
1,107


19
Thời gian (ms)

16
32
64
128
256
512
1,024

1,200
1,000
800
600
400
200

0
3 bí mật 4 bí mật 5 bí mật 6 bí mật 7 bí mật

Số lượng tham
số ant oàn

Hình 4.11 Thời gian truyền thông của các mức an toàn khác nhau với
độ dài tham số an toàn từ 16 đến 1024 byte
Thời gian (ms)

3 tham số an toàn

16

400

32

350

64

300

128

250
200

256


150

512

100

1,024

50
0
128 bit

192 bit

256 bit

Độ dài khóa

Hình 4.12 Thời gian truyền thông ba tham số an toàn với các khóa
AES và độ dài tham số an toàn khác nhau
Thời gian (ms)

5 tham số an toàn

16
32

800
700

600
500
400
300
200
100
0

64
128
256
512
1,024
Độ dài khóa
128 bit

192 bit

256 bit

Hình 4.13 Thời gian truyền thông năm tham số an toàn với các khóa
AES và độ dài tham số an toàn khác nhau


20

Thời gian (ms)

7 tham số an toàn


16

1,200

32

1,000

64

800

128

600

256
512

400

1,024
200
Độ dài khóa

0
128 bit

192 bit


256 bit

Hình 4.14 Thời gian truyền thông bảy tham số an toàn với các khóa
AES và độ dài tham số an toàn khác nhau
Kết quả thử nghiệm truyền thông an toàn nhiều tham số an toàn
Bảng 4.4 Thời gian xác thực trung bình với các mô hình xác thực khác
nhau
Mô hình xác thực thử nghiệm với DNP3 mô
phỏng
Không sử dụng các giải pháp an toàn
Kích thước tham số bí mật < 4098

bit
hình
đề
Kích thước tham số bí mật < 4098
xuất
bit
SSL/TLS với RSA
SSL/TLS với Diffie-Hellman

Thời gian trễ
trung bình (ms)

47
<400
>400
2663
2497.6


Bảng 4.4 cho thấy thời gian xác thực trung bình sử dụng SSL là
2497.6 ms dùng Diffie-Hellman làm thuật toán trao đổi khóa công
khai và 2663 ms khi sử dụng RSA làm thuật toán trao đổi khóa công
khai, thời gian trung bình truyền thông điệp sử dụng phương pháp xác
thực hai khóa bí mật-hai tham số bí mật sử dụng AES cải tiến có thời
gian trung bình là nhỏ hơn 400ms với những tham số bí mật ngắn
(≤512 byte), còn thời gian gửi nhận trung bình với những file bí mật
lớn hơn (> 512 byte) là trên 400ms.


21

Bảng 4.5 Thời gian truyền thông giữa hai bên gửi và nhận dữ liệu
Kích
thước
khóa (bit)

Kích thước
tham số bí
mật (byte)

16
32
64
128
256
512
1,024
16
32

64
128
256
512
1,024
16
32
64
128
256
512
1,024

128

192

256

Thời gian (ms)

3 tham
số bí
mật

77
79
108
113
122

200
448
80
82
99
112
126
209
467
93
109
109
108
125
219
514

4 tham
5 tham
6 tham
số bí
số bí
số bí
mật
mật
mật
Thời gian gửi và nhận (ms)

78
79

109
117
182
285
634
81
84
106
114
176
295
650
93
109
110
110
187
297
671

78
79
109
117
182
317
856
84
101
106

117
179
312
875
109
109
110
110
203
343
874

94
109
109
125
183
428
1,098
85
103
110
123
184
426
1,108
110
109
110
140

203
437
1,108

Key =128 bit

7 tham
số bí
mật

109
109
109
125
184
457
1,390
86
107
117
142
193
457
1,390
110
110
125
140
203
452

1,435
16
32
64
128
256
512
1,024

1,600
1,400

1,200
1,000
800
600
400
200

Số lượng tham
số an toàn

0
3 bí mật

4 bí mật

5 bí mật

6 bí mật


7 bí mật

Hình 4.15 Thời gian truyền thông sử dụng AES-128


22

16
32
64
128
256
512
1,024

Key =192 bit

Thời gian (ms)

1,600
1,400
1,200
1,000
800
600
400
200
0
3 bí mật


4 bí mật

5 bí mật

6 bí mật

7 bí mật

Số lượng tham
số an toàn

Hình 4.16 Thời gian truyền thông sử dụng AES-192
Key =256 bit

Thời gian (ms)

16
32
64
128
256
512
1,024

1,600
1,400
1,200
1,000
800

600
400
200

Số lượng tham
số an toàn

0
3 bí mật

4 bí mật

5 bí mật

6 bí mật

7 bí mật

Hình 4.17 Thời gian truyền thông sử dụng AES-256


23

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
An ninh, an toàn trong mạng ĐHGSCN là một đòi hỏi bắt buộc vì
những ảnh hưởng của mạng này đối với đời sống người dân, đối với
an ninh của một quốc gia trong thời đại công nghiệp hóa, hiện đại hóa
và nền công nghệ phát triển như ngày nay. Với mục tiêu đặt ra là quá
trình truyền số liệu trong mạng ĐHGSCN an toàn Luận án đã có một
số kết quả và đóng góp sau:

Các kết quả đạt được của Luận án:
- Nghiên cứu cơ sở lý thuyết về an toàn mạng ĐHGSCN, vai trò của
mật mã trong bảo vệ bí mật dữ liệu truyền trong mạng công cộng.
- Phân tích tấn công trong mạng ĐHGSCN và các tấn công về mặt
mật mã từ đó đề xuất bổ sung tiêu chuẩn cho tham số e của hệ mật
RSA đảm bảo an toàn cho hệ mật này khi áp dụng.
- Phân tích các tấn công trong giao thức thiết lập, quản lý khóa và
những hạn chế của những giao thức hiện có để từ đó đề xuất hai giao
thức thiết lập và quản lý khóa tập trung phù hợp với môi trường mạng
ĐHGSCN có những yêu cầu khắt khe về năng lực tính toán và lưu trữ
hạn chế của nó.
- Nghiên cứu, đề xuất giải pháp mã hóa xác thực an toàn và hiệu quả
dựa trên những tham số bí mật, khóa bí mật đáp ứng yêu cầu trong
môi trường mạng ĐHGSCN.
- Xây dựng chương trình mã hóa xác thực với nhiều mức an toàn từ
đó đánh giá thời gian trễ trong quá trình truyền số liệu trên mạng qua
mô hình thực nghiệm mô phỏng.
Những đóng góp mới của Luận án:
- Đề xuất bổ sung tiêu chuẩn an toàn cho tham số e của hệ mật khóa
công khai RSA và cải tiến mã khối AES dựa trên tiêu chuẩn hiệu ứng
thác đổ nâng cao tính bảo mật trong mạng điều hành giám sát công
nghiệp. (Bài báo số 2 và 7)


×