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

Nghiên cứu giải pháp tích hợp chữ ký số cho ứng dụng dựa trên công nghệ sharepoint

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 (1.77 MB, 73 trang )

ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ

HOÀNG THẾ THẮNG

NGHIÊN CỨU GIẢI PHÁP TÍCH HỢP CHỮ KÝ SỐ
CHO ỨNG DỤNG DỰA TRÊN CÔNG NGHỆ SHAREPOINT

LUẬN VĂN THẠC SỸ CÔNG NGHỆ THÔNG TIN

Hà Nội – 2016


ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ

HOÀNG THẾ THẮNG

NGHIÊN CỨU GIẢI PHÁP TÍCH HỢP CHỮ KÝ SỐ
CHO ỨNG DỤNG DỰA TRÊN CÔNG NGHỆ SHAREPOINT
Ngành: Công nghệ thông tin
Chuyên ngành: Hệ thống thông tin
Mã số: 60480104

LUẬN VĂN THẠC SỸ CÔNG NGHỆ THÔNG TIN
NGƢỜI HƢỚNG DẪN KHOA HỌC:
TS. HỒ VĂN HƢƠNG - TS. NGUYỄN VIẾT THẾ

Hà Nội – 2016



LỜI CẢM ƠN
Đầu tiên, tôi xin gửi lời cảm ơn chân thành và sâu sắc tới Tiến sĩ Hồ Văn
Hƣơng và Tiến sĩ Nguyễn Viết Thế, những ngƣời đã trực tiếp hƣớng dẫn, tận
tình chỉ bảo giúp đỡ tôi trong suốt thời gian tôi thực hiện luận văn này.
Tôi cũng đƣợc gửi lời cảm ơn đến các thầy cô giảng viên trong và ngoài
trƣờng Đại học Công Nghệ - Đại học Quốc Gia Hà Nội, những ngƣời đã tận tâm
giảng dạy, cho tôi những kiến thức quý báu trong thời gian tôi học tập và nghiên
cứu tại trƣờng.
Cuối cùng, tôi xin gửi lời biết ơn sâu sắc tới gia đình, bạn bè luôn động viên,
tạo điều kiện tốt nhất giúp tôi có thể thực hiện đƣợc luận văn này.
Em rất mong nhận đƣợc ý kiến đóng góp từ Thầy, Cô giáo và các bạn quan
tâm để hoàn thiện và phát triển đề tài đi xa hơn nữa.
Xin trân trọng cảm ơn!

Hà Nội, ngày 27 tháng 10 năm 2016
Học viên

Hoàng Thế Thắng

i


LỜI CAM ĐOAN
Tôi xin cam đoan rằng những nghiên cứu đƣợc trình bày trong luận văn này
dƣới sự hƣớng dẫn của Tiến sĩ Hồ Văn Hƣơng và Tiến sĩ Nguyễn Viết Thế là
của tôi. Những gì tôi viết ra không sao chép từ các tài liệu, không sử dụng các
kết quả của ngƣời khác mà không trích dẫn cụ thể.
Tôi xin cam đoan chƣơng trình tích hợp chữ ký số vào Sharepoint trình bày
trong luận văn là do tôi tự phát triển, không sao chép mã nguồn của ngƣời khác.
Nếu sai tôi hoàn toàn chịu trách nhiệm theo quy định của Trƣờng Đại học Công

Nghệ - Đại học Quốc Gia Hà Nội.

Hà nội, ngày 27 tháng 10 năm 2016
Học viên

Hoàng Thế Thắng

ii


MỤC LỤC
LỜI CẢM ƠN ........................................................................................................ i
LỜI CAM ĐOAN.................................................................................................. ii
MỤC LỤC ............................................................................................................ iii
DANH MỤC HÌNH VẼ ....................................................................................... vi
DANH MỤC TỪ VIẾT TẮT ............................................................................. viii
MỞ ĐẦU ............................................................................................................... 1
CHƢƠNG I: TỔNG QUAN VỀ AN TOÀN BẢO MẬT THÔNG TIN VÀ
CÔNG NGHỆ SHAREPOINT ............................................................................. 3
1. An toàn bảo mật thông tin ............................................................................. 3
1.1. Tổng quan ............................................................................................... 3
1.2. Các nguy cơ mất an toàn bảo mật thông tin ........................................... 4
1.3. Hệ mật mã ............................................................................................... 5
1.3.1. Định nghĩa ........................................................................................ 5
1.3.2. Mã hóa khóa đối xứng ..................................................................... 6
1.3.3. Mã khóa khóa công khai .................................................................. 9
1.4. Hàm băm ............................................................................................... 13
1.5. Chữ ký số .............................................................................................. 14
1.5.1. Giới thiệu ....................................................................................... 14
1.5.2. Quá trình ký ................................................................................... 14

1.5.3. Xác thực chữ ký ............................................................................. 15
2. Công nghệ Sharepoint ................................................................................. 16
3.1. Windows Sharepoint Services (WSS) .................................................. 17
2.1.1. Tổng quan về WSS ........................................................................ 17
2.1.2. Kiến trúc của WSS ......................................................................... 17
2.1.3. Cấu hình WSS ................................................................................ 21
2.1.4. Máy chủ ảo và Web IIS ................................................................. 22
2.1.5. Site và Site Collection .................................................................... 24
2.2. Share point portal server (SPS) ............................................................ 26
iii


2.2.1. Tổng quan về SPS .......................................................................... 26
2.2.2. Kiến trúc của SPS .......................................................................... 28
2.3. Webpart ................................................................................................. 30
2.3.1. Tổng quan về Webpart ................................................................... 30
2.3.2. Kiến trúc ......................................................................................... 31
2.3.3. Tùy biến và cá nhân hóa Webpart.................................................. 32
2.4. Bảo mật trong Sharepoint ..................................................................... 32
CHƢƠNG II: NGHIÊN CỨU GIẢI PHÁP TÍCH HỢP CHỮ KÝ SỐ CHO
CÔNG NGHỆ SHAREPOINT ........................................................................... 36
1. Các giải pháp bảo mật thông tin cho Sharepoint ......................................... 36
1.1. Công nghệ phát hiện và ngăn chặn xâm nhập mạng IDS/IPS .............. 36
1.1.1. Khái quát chung ............................................................................. 36
1.1.2. Hoạt động ....................................................................................... 36
1.1.3. Hạn chế........................................................................................... 37
1.2. Mạng riêng ảo (VPN) ........................................................................... 38
1.2.1. Khái quát chung ............................................................................. 38
1.2.2. Các giao thức thƣờng dùng trong VPN ......................................... 38
1.2.3. Ƣu nhƣợc điểm của VPN ............................................................... 39

1.3. Bảo mật thông tin bằng thuật toán ........................................................ 39
1.3.1. Ƣu điểm.......................................................................................... 39
1.3.2. Nhƣợc điểm .................................................................................... 40
2. Lựa chọn giải pháp bảo mật cho ứng dụng văn phòng điện tử dựa trên công
nghệ Sharepoint ............................................................................................... 40
2.1. Lý do lựa chọn ...................................................................................... 40
2.2. Tính khả thi của giải pháp .................................................................... 41
CHƢƠNG III: XÂY DỰNG ỨNG DỤNG TÍCH HỢP CHỮ KÝ SỐ CHO ỨNG
DỤNG HỆ ĐIỀU HÀNH TÁC NGHIỆP VĂN PHÒNG ĐIỂN TỬ DỰA TRÊN
SHAREPOINT .................................................................................................... 43
1. Phân tích thiết kế ......................................................................................... 43
1.1. Xây dựng bài toán ................................................................................. 43
iv


1.2. Phân tích thiết kế................................................................................... 43
1.3. Xây dựng giải pháp ............................................................................... 45
1.3.1. Môi trƣờng cài đặt.......................................................................... 45
1.3.2 Thiết bị ký số................................................................................... 46
1.3.3. Quá trình ký số ............................................................................... 46
1.3.4. Quá trình xác thực .......................................................................... 48
2. Cài đặt thử nghiệm chƣơng trình demo ....................................................... 49
2.1. Cấu hình Sharepoint Server 2013 ......................................................... 49
2.2. Tích hợp ứng dụng vào Sharepoint....................................................... 53
KẾT LUẬN ......................................................................................................... 62
TÀI LIỆU THAM KHẢO ................................................................................... 63

v



DANH MỤC HÌNH VẼ
Hình 1: Quá trình mã hóa ...................................................................................... 5
Hình 2: Quá trình giải mã ...................................................................................... 6
Hình 3: Mã hóa khóa bí mật .................................................................................. 8
Hình 4: Mã hóa khóa công khai .......................................................................... 11
Hình 5: Xác thực thông tin .................................................................................. 11
Hình 6: Ký và mã hoá với khóa công khai.......................................................... 12
Hình 7:Lƣợc đồ ký .............................................................................................. 15
Hình 8: Lƣợc đồ xác thực.................................................................................... 16
Hình 9: Kiến trúc của WSS ................................................................................. 18
Hình 10:WSS cần một CSDL cấu hình và một hoặc nhiều CSDL nội dung...... 19
Hình 11: Khung nhìn mức cao về WSS .............................................................. 20
Hình 12: Server Farm .......................................................................................... 22
Hình 13: Mỗi Web site IIS có thể đƣợc cấu hình nhƣ là một máy chủ ảo chạy
WSS ..................................................................................................................... 23
Hình 14: Site collections ..................................................................................... 24
Hình 15: Kiến trúc của một SPS ......................................................................... 28
Hình 16: Webpart Page ....................................................................................... 32
Hình 17: Những nơi cần bảo mật trong Sharepoint ............................................ 34
Hình 18: Luồng công việc xử lý mã hóa, ký số và upload ................................. 44
Hình 19: Xác thực và giải mã.............................................................................. 45
Hình 20: Trang chủ Sharepoint ........................................................................... 54
Hình 21: Màn hình bảo mật ................................................................................ 54
Hình 22: Mở file muốn tải lên Sharepoint .......................................................... 55
Hình 23: Chọn menu Mã hóa .............................................................................. 55
Hình 24: Kết quả mã hóa..................................................................................... 56
Hình 25: Màn hình ký số ..................................................................................... 56
Hình 26: Chọn chứng thƣ số từ token ................................................................. 57
vi



Hình 27: Nhập mã PIN để ký số ......................................................................... 57
Hình 28: Ký số thành công.................................................................................. 58
Hình 29: Tải tài liệu lên Sharepoint .................................................................... 58
Hình 30: Danh sách các tài liệu đƣợc chia sẻ ..................................................... 59
Hình 31: Chọn chứng thƣ số từ token để xác thực ............................................. 59
Hình 32: Xác thực thành công............................................................................. 60
Hình 33: Chức năng giải mã ............................................................................... 60
Hình 34: Kết quả giải mã .................................................................................... 61

vii


DANH MỤC TỪ VIẾT TẮT

AES

Advanced Encryption Standard

BDC

Business Data Connectivity

CSDL

Cơ sở dữ liệu

IDS

Intrusion Detect System


IPS

Intrusion Prevent System

ISAPI

Internet Server Applications Program
Interface

PKI

Public key infrastructure

SPS

SharePoint Portal Server

VNCERT

Trung tâm Ứng cứu khẩn cấp máy tính
Việt Nam

VPN

Virtual Private Network

WSS

Windows SharePoint Service


viii


MỞ ĐẦU
Ngày nay công nghệ thông tin đang rất phát triền, chúng ta đang sống
trong một thế giới phẳng, chính bởi vậy một nhu cầu thiết thực là làm sao
trao đổi thông tin nhanh hơn, chính xác hơn, thuận tiện hơn và đặc biệt là an
toàn hơn. Từ đó, các nhà nghiên cứu liên tục đƣa ra các công nghệ mới nhằm
đáp ứng tốt hơn các đòi hỏi. Việc trao đổi thông tin trong các đơn vị hành
chính sự nghiệp không chỉ dừng lại ở việc trao đổi trực tiếp mà cần phải tiếp
cận nhanh hơn và điều khiển từ xa, chính bởi vậy, các hệ thống tác nghiệp
cho ứng dụng văn phòng đƣợc ra đời.
Hiện này có nhiều hệ thống tác nghiệp cho ứng dụng văn phòng nhƣ
eOffice, mOffice, Lotus Notes, Sharepoint, nhƣng những hệ thống này đều
chƣa có giải pháp đảm bảo an ninh, an toàn thông tin thực sự hiệu quả; nguy
cơ về mất an ninh, an toàn thông tin là rất thƣờng trực, dẫn đến việc đảm bảo
bảo mật thông tin là rất cần thiết.
An toàn thông tin bao gồm các nội dung sau:
 Tính bí mật: là tính kín đáo riêng tƣ của thông tin
 Tính xác thực của thông tin: là tính đảm bảo sự xác thực, nguồn gốc của
thông tin
 Tính trách nhiệm: để đảm bảo thông tin đƣợc đƣa ra luôn có ngƣời chịu
trách nhiệm với nó.
Khi thông tin đƣợc truyền trên mạng, để đảm bảo an toàn thông tin có
hiệu quả, ngoài việc sử dụng các công cụ mạng thì việc xác thực thông tin
của chính tác giả là rất quan trọng.
Có nhiều giải pháp để bảo mật thông tin, trong số đó, xác thực là một biện
pháp có độ tin cậy cao. Để xác thực thông tin, chữ ký số là một giải pháp tối
ƣu. Chữ ký số hiện nay có nhiều loại, nhiều thuật toán xây dựng và rất khó để

phá vỡ, nó có thể đƣợc hiểu nhƣ con dấu điện tử của ngƣời phát hành tài liệu
trong giao dịch điện tử. Chữ ký số đã đƣợc chứng minh về mặt kỹ thuật đảm
bảo an ninh, duy nhất và không thể giả mạo đƣợc. Chữ ký số đƣợc lƣu trữ
trong thiết bị đặc biệt (USB Token), bảo vệ bởi mật khẩu nên có mức đảm
1


bảo an ninh cao. Chính bởi vậy, tác giả đề xuất phƣơng pháp sử dụng chữ ký
số để giải quyết vấn đề đảm bảo an ninh, an toàn thông tin cho các hệ thống
tác nghiệp, đặc biệt là các hệ thống dựa trên công nghệ Share Point.
Luận văn chia làm ba chương:
Chƣơng I: Tổng quan về an toàn bảo mật thông tin và công nghệ SharePoint
Trình bày những vấn đề cơ bản trong An toàn bảo mật thông tin, các nguy
cơ mất an toàn thông tin, hệ mã hóa, hàm băm, chữ ký số. Tác giả cũng đƣa
ra các vấn đề cần nghiên cứu trong công nghệ Sharepoint, các thành phần
chính của Sharepoint, các lỗ hổng bảo mật của Sharepoint và cơ chế bảo mật
hiện có.
Chƣơng II: Nghiên cứu giải pháp tích hợp chữ ký số cho công nghệ
SharePoint
Trình bày một số phƣơng pháp bảo mật có thể áp dụng cho Sharepoint
nhƣ IDS/IPS, VNP, tích hợp chữ ký số; phân tích ƣu nhƣợc điểm của các
phƣơng pháp này, từ đó lựa chọn giải pháp tối ƣu nhất để áp dụng.
Chƣơng III: Xây dựng ứng dụng tích hợp chữ ký số cho ứng dụng hệ điều
hành tách nghiệp văn phòng điện tử dựa trên SharePoint
Tập trung phân tích thiết kế, xây dựng giải pháp và phát triển ứng dụng
thử nghiệm giải pháp tích hợp chữ ký số cho ứng dụng.

2



CHƢƠNG I: TỔNG QUAN VỀ AN TOÀN BẢO MẬT THÔNG
TIN VÀ CÔNG NGHỆ SHAREPOINT
1. An toàn bảo mật thông tin
1.1. Tổng quan
Khi nhu cầu trao đổi thông tin dữ liệu ngày càng lớn và đa dạng, các công
nghệ liên tục đƣợc phát triển thì các yêu cầu, biện pháp bảo vệ thông tin ngày
càng cấp thiết. Bảo vệ an toàn thông tin liên quan đến rất nhiều lĩnh vực đời
sống và các biện pháp bảo vệ cũng rất đa dạng, nhƣng có thể đƣợc quy tụ vào ba
nhóm sau1:
 Bảo vệ bằng các biện pháp hành chính
 Bảo vệ bằng các biện pháp kỹ thuật(phần cứng)
 Bảo về bằng thuật toán(phần mềm)
Thông tin có thể tồn tại ở nhiều loại môi trƣờng, nhƣng môi trƣờng khó bảo
vệ nhất và cũng là môi trƣờng đối phƣơng dễ xâm nhập nhất đó là môi trƣờng
mạng. Biện pháp hiệu quả nhất và kinh tế nhất hiện nay trên là biện pháp bảo vệ
bằng thuật toán.
An toàn thông tin gồm các nội dung sau:
 Tính bí mật
 Tính xác thực
 Tính trách nhiệm
Có hai loại hành vi xâm phạm thông tin dữ liệu đó là: vi phạm chủ động và vi
phạm thụ động. Vi phạm thụ động chỉ có thể lấy đƣợc thông tin nhƣng có thể ko
nắm đƣợc các thông tin bí mật, nhƣng vi phạm chủ động là dạng vi phạm có thể
làm thay đổi nội dung hoặc làm ảnh hƣởng đến gói tin tại thời điểm đó hoặc sau
đó. Vi phạm chủ động có thể dễ phát hiện nhƣng rất khó để ngăn chặn hiệu quả.
Tuy nhiên có thể có nhiều phƣơng pháp chống lại các hành vi vi phạm nhƣng
một thực tế là không có một phƣơng pháp nào là an toàn tuyệt đối.
1

Theo mục 1.1 của [6]


3


1.2. Các nguy cơ mất an toàn bảo mật thông tin
Các nguy cơ mất an ninh an toàn thông tin do nhiều nguyên nhân, đối tƣợng
gây hại rất đa dạng. Theo số liệu thống kê mới nhất về bảo mật thông tin của
Symantec, Việt Nam đứng thứ 11 toàn cầu về các hoạt động đe dọa tấn công
mạng2. Những xu hƣớng đe dọa bảo mật ngày càng gia tăng mà Việt Nam cần
phải quan tâm là: tấn công có chủ đích cao cấp, các mối đe dọa trên di động, các
vụ tấn công độc hại và đánh cắp dữ liệu.
Có 4 loại mối đe dọa an toàn:
 Đánh chặn (Interception): Chỉ những thành phần không đƣợc phép nhƣng
chặn dữ liệu trên đƣờng truyền để ―nghe trộm‖ thông tin.
 Đứt đoạn (Interruption): chỉ hình thức làm hƣ hỏng, sai khác dữ liệu,
không sử dụng đƣợc nữa.
 Thay đổi (Modification): chỉ hình thức thay đổi thông tin dữ liệu, làm dữ
liệu mang một ý nghĩa khác
 Giả mạo (Fabrication): chỉ hình thức thêm vào dữ liệu hoặc dịch vụ khác
để giả mạo đánh cắp thông tin.
Trong 9 tháng đầu năm 2015, VNCERT đã phát hiện 18.085 website bị
nhiễm mã độc và lây lan mã độc đến các máy tính trong mạng, trong đó có 88
website/cổng thông tin điện tử của các cơ quan Nhà nƣớc, 7.421 tấn công thay
đổi giao diện (deface), trong đó có 164 website/cổng thông tin điện tử của các cơ
quan Nhà nƣớc. Bên cạnh đó, hầu hết địa phƣơng không có bộ phận an ninh
thông tin, nhân sự chuyên trách cũng chỉ là một vị trí kiêm nhiệm của bộ phận
CNTT3
Khối doanh nghiệp cũng gặp phải rất nhiều khó khăn trong việc tránh khỏi
các mối đe dọa. Các hình thức ngày càng tinh vi hơn, từ việc gửi virus qua các
phần mềm online cho đến những cuộc tấn công có chủ đích, sử dụng phần mềm

độc hại đánh cắp thông tin. Họ phải chịu chi phí rất lớn cho việc bảo vệ đảm bảo
an toàn thông tin, đặc biệt là các thông tin nội bộ.

2

Theo nghiên cứu của voer.edu.vn năm 2015

3

Theo VNCERT năm 2015

4


Hiện nay, ngoài các cách trao đổi, lƣu trữ thông tin truyền thống, các đơn vị
hành chính sự nghiệp, các doanh nghiệp tƣ nhân đã ứng dụng văn phòng điện tử
nhƣ là một phần tất yếu. Các ứng dụng này đƣợc xây dựng dựa trên các công
nghệ mới, mang lại nhiều thuận lợi nhƣ Microsoft Share Point, IBM Lotus
Notes… Các hệ thống văn phòng điện tử giúp cơ quan, tổ chức trao đổi thông
tin, đƣa ra nhƣng quyết định không chỉ có tính đại chúng mà rất nhiểu thông tin
mật, chính vì vậy, việc xác thực và bảo mật thông tin trở nên rất cần thiết, đặc
biệt trong các tổ chức về an ninh, quốc phòng.
1.3. Hệ mật mã
1.3.1. Định nghĩa
Hệ mật mã là một hệ gồm 5 thành phần: M, C, K, E, D
M(message): tập các bản rõ
C(ciphertext): tập các bản mã
K(key): tập các khóa
E(encryption): tập các quy tắc mã hóa
D(decryption): tập các quy tắc giải mã

C = Ek(P) và P = Dk(C)
Sơ đồ

Hình 1: Quá trình mã hóa

5


Hình 2: Quá trình giải mã
1.3.2. Mã hóa khóa đối xứng
1.3.2.1. Khái niệm
Theo mục [1.6] của [6], Mã khóa đối xứng còn đƣợc gọi là mã hóa khóa bí
mật. Đây là phƣơng pháp mã hóa sử dụng cặp khóa đối xứng, ngƣời gửi và
ngƣời nhận sẽ dùng chung một khóa để mã hóa và giải mã thông điệp. Khóa
phải đƣợc giữ bí mật và chỉ hai ngƣời biết.
Ví dụ thuật toán AES:
AES đƣợc xây dựng trên nguyên lý thiết kế lƣới giao hoán – thay thế
(substitution-permutation network). Đây là một hệ mã có tốc độ tốt trong cả cài
đặt phần mềm cũng nhƣ phần cứng. AES không theo mẫu thiết kế mạng Feistel,
thay vào đó các thao tác cơ bản đƣợc thực hiện trên các khối ma trận dữ liệu 4*4
(bytes), đƣợc gọi là các trạng thái (state). Số vòng lặp của AES là một tham số
xác định trên cơ sở kích thƣớc khóa: 10 vòng lặp cho khóa 128 bit, 12 cho 192
bit, 14 cho 256 bit.
Quy trình mã hóa sử dụng bốn phép biến đổi chính:
 AddRoundKey: cộng mã khóa của chu kỳ vào trạng thái hiện hành. Độ
dài của mã khóa của chu kỳ bằng với kích thƣớc của trạng thái.
Các byte đƣợc thế thông qua bảng tra S-box. Đây chính là quá trình phi
tuyến của thuật toán. Hộp S-box này đƣợc tạo ra từ một phép biến đổi khả
nghịch trong trƣờng hữu hạn GF (28) có tính chất phi tuyến. Để chống lại
các tấn công dựa trên các đặc tính đại số, hộp S-box này đƣợc tạo nên

bằng cách kết hợp phép nghịch đảo với một phép biến đổi affine khả

6


nghịch. Hộp S-box này cũng đƣợc chọn để tránh các điểm bất động (fixed
point).
 SubBytes: thay thế phi tuyến mỗi byte trong trạng thái hiện hành thông
qua bảng thay thế (S-box).
Các hàng đƣợc dịch vòng một số bƣớc nhất định. Đối với AES, hàng đầu
đƣợc giữ nguyên. Mỗi byte của hàng thứ 2 đƣợc dịch vòng trái một vị trí.
Tƣơng tự, các hàng thứ 3 và 4 đƣợc dịch vòng 2 và 3 vị trí. Do vậy, mỗi
cột khối đầu ra của bƣớc này sẽ bao gồm các byte ở đủ 4 cột khối đầu
vào. Đối với Rijndael với độ dài khối khác nhau thì số vị trí dịch chuyển
cũng khác nhau
 MixColumns: trộn thông tin của từng cột trong trạng thái hiện hành. Mỗi
cột đƣợc xử lý độc lập.
Bốn byte trong từng cột đƣợc kết hợp lại theo một phép biến đổi tuyến
tính khả nghịch. Mỗi khối 4 byte đầu vào sẽ cho một khối 4 byte ở đầu ra
với tính chất là mỗi byte ở đầu vào đều ảnh hƣởng tới cả 4 byte đầu ra.
Cùng với bƣớc ShiftRows, MixColumns đã tạo ra tính chất khuyếch tán
cho thuật toán. Mỗi cột đƣợc xem nhƣ một đa thức trong trƣờng hữu hạn
và đƣợc nhân với đa thức: c(x) = 3x3 + x2 + x + 2(modulo x4 + 1)
 ShiftRows : dịch chuyển xoay vòng từng dòng của trạng thái hiện hành
với di số khác nhau.
Khóa con đƣợc kết hợp với các khối. Khóa con trong mỗi chu trình đƣợc
tạo ra từ khóa chính với quá trình tạo khóa con Rijndael; mỗi khóa con có
độ dài giống nhƣ các khối. Quá trình kết hợp đƣợc thực hiện bằng cách
XOR từng bít của khóa con với khối dữ liệu.
Quy trình mã hóa đƣợc tóm tắt lại nhƣ sau:

 Thực hiện thao tác AddRoundKey đầu tiên trƣớc khi thực hiện các chu kỳ
mã hóa.
 Nr – 1 chu kỳ mã hóa bình thƣờng, mỗi chu kỳ bao gồm bốn bƣớc biến
đổi liên tiếp nhau:SubBytes, ShiftRows, MixColumns, và AddRoundKey.
Thực hiện chu kỳ mã hóa cuối cùng: trong chu kỳ này thao tác MixColumns
đƣợc bỏ qua.
7


1.3.2.2. Ứng dụng
Độ an toàn của phƣơng pháp này phụ thuộc vào sự bí mật của khóa, nếu khóa
bị lộ ra ngoài, bất kỳ ai cũng có thể biết đƣợc thông tin dữ liệu.

Hình 3: Mã hóa khóa bí mật
Loại mã hóa này sử dụng trong môi trƣờng mà khoá dễ dàng đƣợc di chuyển
và môi trƣờng có thể tin cậy về độ an toàn, nhƣ một phòng ban, hay một nhóm
nhỏ.
1.3.2.3. Ƣu nhƣợc điểm của mã hóa khóa đối xứng
a. Ƣu điểm:
 Tốc độ mã hóa nhanh
b. Nhƣợc điểm
 Hai bên bắt buộc phải tiến hành thống nhất với nhau về khóa mật thì mới
có thể truyền thông an toàn.
 Việc phân phối khóa mật tới những ngƣời tham gia vào quá trình truyền
tin thông qua các kênh an toàn có thể dẫn đến việc bị lộ khóa.
 Nếu phải trao đổi thông tin với nhiều đối tác, mỗi đối tác sử dụng một
khóa mật thì việc quản lý số lƣợng lớn khoá mật là điều hoàn toàn không
dễ dàng.

8



1.3.3. Mã khóa khóa công khai
1.3.3.1. Khái niệm
Theo mục [1.6] của [6], Mã hóa khóa công khai là một dạng mã hóa cho
phép ngƣời sử dụng trao đổi các thông tin mật mã mà không cần phải trao đổi
các khóa chung bí mật trƣớc đó. Mã hóa khóa công khai sử dụng một cặp khóa,
một khóa bí mật chỉ một ngƣời biết, một khóa công khai đƣợc đƣa ra ngoài để
nhiều ngƣời có thể sử dụng. Trong hai khóa đó, một khóa dùng để mã hóa, một
khóa dùng để giải mã, và không thể tìm ra khóa bí mật nếu chỉ biết khóa công
khai.
Ví dụ
Thuật toán đƣợc Ron Rivest, Adi Shamir và Len Adleman (R.S.A) mô tả lần
đầu tiên vào năm 1977. Thuật toán mã hóa RSA thoả mãn 5 yêu cầu của một hệ
mã hiện đại:
 Độ bảo mật cao (nghĩa là để giải mã đƣợc mà không biết khoá mật thì
phải tốn hàng triệu năm).
 Thao tác nhanh(thao tác mã hoá và giải mã tốn ít thời gian).
 Dùng chung đƣợc.
 Có ứng dụng rộng rãi.
 Có thể dùng để xác định chủ nhân (dùng làm chữ ký điện tử).
Hoạt động:
Thuật toán RSA có hai khóa:
 Khóa công khai (Public key): đƣợc công bố rộng rãi cho mọi ngƣời và
đƣợc dùng để mã hóa
 Khóa bí mật (Private key): Những thông tin đƣợc mã hóa bằng khóa công
khai chỉ có thể đƣợc giải mã bằng khóa bí mật tƣơng ứng
Tạo khóa:
Bƣớc 1:B (ngƣời nhận) tạo hai số nguyên tố lớn ngẫu nhiên p và q
9



Bƣớc 2: Tính n=p*q và Φ(n) = (p-1)(q-1)
Bƣớc 3: Chọn một số ngẫu nhiên e (0< e < Φ(n)) sao cho ƢCLN(e,Φ(n))=1
Bƣớc 4: Tính d = e-1 bằng cách dùng thuật toán Euclide. Tìm số tự nhiên x sao
cho: d = (x * Φ(n) + 1)/e
Bƣớc 5:
 n và e làm khoá công khai (public key),
 d làm khoá bí mật (pivate key).
Mã hóa và Giải mã:
Bƣớc 1: A nhận khoá công khai của B.
Bƣớc 2: A biểu diễn thông tin cần gửi thành số m (0 <= m <= n-1)
Bƣớc 3: Tính c = me mod n
Bƣớc 4: Gửi c cho ngƣời nhận B
Bƣớc 5: Giải mã: tính m = cd mod n.

1.3.3.2. Bảo vệ thông tin với mật mã khoá công khai
a. Bảo vệ tính bí mật thông tin
Giả sử A muốn gửi cho B một thông điệp M, A sẽ phải:
 Mã hóa thông điệp M bằng khóa công khai của B.
 Gửi bản mã thông điệp cho B.
Khi B nhận đƣợc thông điệp đã đƣợc mã hóa của A, B sẽ sử dụng khóa riêng
của mình để giải mã thông điệp đó.

10


Hình 4: Mã hóa khóa công khai
Với phƣơng pháp này, chỉ có B là ngƣời có khóa bí mật mới giải mã đƣợc.
Tuy nhiên, ta không xác thực đƣợc thông tin đƣợc mã hóa là do ai gửi, vì khóa

công khai đƣợc nhiều ngƣời xử dụng.
b. Xác thực thông tin
A muốn mọi ngƣời biết đƣợc rằng tài liệu M là của chính A gửi, A có thể sử
dụng khóa riêng của mình để ký lên tài liệu M.
Khi B nhận đƣợc tài liệu, B sẽ sử dụng khóa công khai để xác thực chữ ký, vì
chỉ có A mới có khóa bí mật để tạo chữ ký ký lên tài liệu đó.

Hình 5: Xác thực thông tin

11


Nếu chỉ sử dụng chữ ký để xác thực thông tin, thì ngƣời khác vẫn xem đƣợc
nội dung của thông tin mặc dù không xác thực đƣợc chính xác thông tin là của
ai.
c. Bảo vệ bí mật và xác thực thông tin
Để đảm bảo thông tin vừa bí mật vừa xác thực, chúng ta phải thực hiện mã hóa
hai lần:
 Đầu tiên, A phải ký thông điệp bằng khóa riêng của mình để đảm bảo tính
xác thực
 Sau đó, A sử dụng khóa công khai của B để mã hóa tiếp thông điệp vừa
đƣợc mã hóa để đảm bảo tính bí mật
Sau đó, A gửi bản mã cuối cùng đến B. B nhận đƣợc, sẽ làm giải mã theo thứ tự
ngƣợc lại để lấy đƣợc bản tin rõ.

Hình 6: Ký và mã hoá với khóa công khai
1.3.3.3. Ƣu nhƣợc điểm của hệ mật mã khóa công khai
a. Ƣu điểm
 Tiện lợi do các bên không cần chia sẻ khóa
 Do chỉ có một ngƣời giữ khóa bí mật nên độ an toàn sẽ cao hơn rất nhiều


12


 Hỗ trợ công nghệ chữ kí số cùng với các kết quả trả về từ hàm băm đảm
bảo đƣợc tính xác thực nguồn, tính toàn vẹn dữ liệu và hỗ trợ chống chối
bỏ trách nhiệm.
b. Nhƣợc điểm
 Tốc độ mã hóa chậm nên khó đƣợc dùng một cách độc lập trong mật mã.
 Cần phải có một đơn vị đủ tin cậy đứng ra chứng thực ngƣời dùng với
khóa công khai tƣơng ứng.
1.4. Hàm băm
Hàm băm là giải thuật nhằm sinh ra các giá trị băm tƣơng ứng với mỗi khối
dữ liệu (có thể là một chuỗi kí tự, một đối tƣợng trong lập trình hƣớng đối
tƣợng, v.v...). Giá trị băm đóng vai gần nhƣ một khóa để phân biệt các khối dữ
liệu, tuy nhiên, ngƣời ta chấp hiện tƣợng trùng khóa hay còn gọi là đụng độ và
cố gắng cải thiện giải thuật để giảm thiểu sự đụng độ đó. Hàm băm thƣờng đƣợc
dùng trong bảng băm nhằm giảm chi phí tính toán khi tìm một khối dữ liệu trong
một tập hợp (nhờ việc so sánh các giá trị băm nhanh hơn việc so sánh những
khối dữ liệu có kích thƣớc lớn). Có 5 thuật toán băm an toàn SHA-1, SHA-2241
, SHA-256, SHA- 384 và SHA-512.
Một số tính chất của hàm băm:
 Hàm băm là hàm một chiều, nên rất khó để khôi phục lại thông điệp ban
đầu từ thông điệp rút gọn.
 Tuy nhiên hàm băm h không phải là một song ánh, tức là có thể xảy ra
việc trùng thông điệp rút gọn. Đây là một điểm yếu có thể bị lợi dụng.
 Hàm băm giúp xác định đƣợc tính toàn vẹn dữ liệu của thông tin: mọi
thay đổi, dù là rất nhỏ, trên thông điệp cho trƣớc đều làm thay đổi thông
điệp rút gọn tƣơng ứng. Tính chất này hữu ích trong việc phát sinh, kiểm
tra chữ kí điện tử, các đoạn mã chứng nhận thông điệp, phát sinh số ngẫu

nhiên, tạo ra khóa cho quá trình mã hóa…

13


1.5. Chữ ký số
1.5.1. Giới thiệu
Chữ ký là mô hình sử dụng các kỹ thuật mật mã để gắn với mỗi ngƣời sử
dụng một cặp khóa công khai - bí mật và qua đó có thể ký các văn bản cũng nhƣ
trao đổi các thông tin mật. Khóa công khai thƣờng đƣợc phân phối thông qua
chứng thực khóa công khai. Quá trình sử dụng chữ ký số bao gồm 2 quá trình:
tạo chữ ký và xác thực chữ ký.
Sử dụng chữ ký số trong truyền thông sẽ đảm bảo đƣợc các tính chất sau:
 Xác thực đƣợc định danh của ngƣời gửi và nguồn gốc của thông điệp
 Bất kỳ một sử đổi nào trên thông điệp làm cho kết quả xác minh chữ ký là
không chính xác nên đảm bảo đƣợc tính toàn vẹn của dữ liệu.
 Chỉ ngƣời giữ khóa bí mật mới có thể ký số, nên không thể chối bỏ trách
nhiệm
 Không thể tạo ra một văn bản với một chữ ký có sẵn chính vì vậy mà
không thể dùng lại chữ ký.
Bản chất của quá trình ký lên bản tin chính là sử dụng khóa bí mật của mình
để mã hóa bản tin. Nếu áp dụng đúng nghĩa nhƣ vậy thì sẽ nảy sinh một số vấn
đề khi bản tin lớn, vấn đề này xuất phát từ chính bản thân chữ ký số là sử dụng
mật mã khóa công khai. Chính vì vậy mà kỹ thuật sử dụng chữ ký số với hàm
băm đƣợc đề cập dƣới đây là giải pháp đƣợc sử dụng hiện nay.
1.5.2. Quá trình ký
Đƣa thông điệp qua hàm băm, kết quả thu đƣợc là một đoạn bit đƣợc gọi là
giá trị băm đảm bảo 2 tính chất:
 Tính duy nhất: mỗi thông điệp đƣa qua hàm băm đều thu về một đại diện
duy nhất

 Tính một chiều: không thể dịch ngƣợc từ thông điệp rút gọn để có văn bản
gốc
Đoạn bit đặc trƣng này đƣợc mã hóa bằng khóa bí mật của ngƣời gửi và đƣợc
đính kèm vào ―văn bản‖, rồi gửi đến ngƣời nhận – đoạn bit đƣợc mã hóa này
chính là chữ ký số (digital signature).
14


Hình 7:Lược đồ ký
1.5.3. Xác thực chữ ký
Quá trình xác thực sẽ thực hiện nhƣ sau:
 Đƣa dữ liệu gốc qua hàm băm để thu đƣợc thông điệp rút gọn
 Lấy đoạn bit đƣợc mã hóa, giải mã bằng khóa công khai để thu đƣợc
thông điệp rút gọn.
 So sánh hai thông điệp rút gọn vừa thu đƣợc ở hai bƣớc trên, nếu giống
nhau có thể kết luận:
o Dữ liệu nhận đƣợc có tính toàn vẹn
o Dữ liệu nhận đƣợc là do chính ngƣời gửi gửi đi
Nhƣ vậy tính chống chối bỏ và tính xác thực đƣợc kiểm tra và xác nhận. Lúc
này ngƣời nhận tin rằng, khóa công khai đó đại diện hợp pháp cho ngƣời gửi.
Lƣợc đồ xác thực chữ ký số đƣợc mô tả bằng hình vẽ dƣới đây:

15


×