
1
B GIÁO DC VÀ ĐÀO TO
ĐI HC ĐÀ NNG
NGUYN CU TH ÁNH MAI
NGHIÊN CU GII PHÁP
BO MT CƠ S D LIU SQL SERVER
BNG PHƯƠNG PHÁP MÃ HÓA
Chuyên ngành: Khoa hc máy tính
Mã s: 60.48.01
TÓM TT LUN VĂN THC SĨ K THUT
Ngưi hưng dn khoa hc: PGS.TSKH. TRN QUC CHIN
ĐÀ NNG, 2010
2
Công trình ñưc hoàn thành ti
ĐI HC ĐÀ NNG
Ngưi hưng dn khoa hc: PGS.TSKH. TRN QUC CHIN
Ph n bi!n 1: TS. NGUYN THANH BÌNH
Ph n bi!n 2: TS. TRƯƠNG CÔNG TU"N
Lun văn ñưc bo v ti Hi ñng chm Lun văn tt nghip thc sĩ
k thut hp ti Đi hc Đà Nng vào ngày 15 tháng 10 năm 2010.
* Có th tìm hiu lun văn ti
- Trung tâm Thông tin - Hc liu, Đi hc Đà Nng
- Trung tâm Hc liu, Đi hc Đà Nng

3
M ĐU
1. Lý do chn ñ$ tài
Thông tin luôn là mt tài sn vô giá ca doanh nghip và cn
ñưc bo v bng mi giá. Tuy nhiên, vi nhng ñòi hi ngày càng
gt gao ca môi trưng kinh doanh yêu cu doanh nghip phi năng
ñng chia s thông tin ca mình cho nhiu ñi tưng khác nhau qua
Internet hay Intranet, vic bo v thông tin tr nên ngày càng quan
trng và khó khăn hơn bao gi ht.
Hu ht các doanh nghip ngày nay ñu s d ng các h qun
tr! cơ s d liu (CSDL) ñ" lưu tr tp trung tt c các thông tin quý
giá ca mình. H thng này s# là tiêu ñi"m tn công ca nhng k
xu. $ m%c ñ nh&, các tn công s# làm h thng CSDL b! hng hóc,
hot ñng không 'n ñ!nh, mt mát d liu làm cho các giao d!ch hàng
ngày ca doanh nghip b! ñình tr. Nghiêm trng hơn, các thông tin
sng còn ca doanh nghip b! tit l (như chin lưc kinh doanh, các
thông tin v khách hàng, nhà cung cp, tài chánh, m%c lương nhân
viên,…) và ñưc ñem bán cho các doanh nghip ñi th. Có th" nói
là thit hi ca vic thông tin b! rò r( là vô cùng kinh khng. Đó s# là
mt ñòn chí mng ñi vi uy tín ca doanh nghip ñi vi khách
hàng và các ñi tác.
Vì vy vn ñ bo mt CSDL tr nên cp bách và rt cn thit cho
tt c mi ngưi và nht là ñi vi các cơ quan lưu tr nhng d liu
quan trng. Mt trong nhng cách bo mt CSDL là s d ng phương
pháp mã hóa. Đây cũng là lý do tôi chn ñ tài: “Nghiên cu gii pháp
bo mt cơ s d liu SQL Server bng phương pháp mã hóa”.
4
2. M%c tiêu và nhi!m v%
Nghiên c%u, tìm hi"u h qun tr! CSDL SQL Server
2008 nhm tìm ra các gii pháp bo mt ca h qun tr!
CSDL ñ" gii quyt ba vn ñ cơ bn là tính bí mt,
tính toàn v&n ca d liu và tính sn sàng ca h thng
d liu.
Nghiên c%u các tính năng mã hóa trong SQL Server
2008.
D*a trên các tính năng này xây d*ng chương trình th*c
hin ch%c năng mã hóa CSDL, xây d*ng cơ ch phân
quyn ñi vi d liu ñã ñưc mã hóa, th*c hin các
thao tác ñiu khi"n d liu.
Tính năng mã hóa trong SQL Server 2008 ch( có th" mã
hóa t+ng ct. Điu này khin cho vic mun bo mt
thông tin ca mt ñi tưng nào ñó thì bt buc phi mã
hóa toàn b các ct lưu tr d liu ca tt c các ñi
tưng trong bng. Đ" khc ph c khuyt ñi"m này tôi có
ý tưng xây d*ng chương trình th*c hin mã hóa dòng
d liu ca bng. Ch( nhng dòng d liu cn ñưc che
du s# ñưc th*c hin bng cách mã hóa, d liu còn li
v,n hi"n th! bình thưng.
3. Đi tư&ng và ph'm vi nghiên c(u
Đi tưng trng tâm ca ñ tài là mô hình mã hóa vi nhng
ni dung c th" ca nó gm: các k thut mã hóa và phương hưng
mã hóa cho CSDL lưu trong SQL Server 2008.
Phm vi nghiên c%u ca ñ tài bao gm nghiên c%u lý thuyt
và xây d*ng chương trình mã hóa CSDL SQL Server 2008. Gii hn

5
nghiên c%u %ng d ng trong phm vi ca h qun tr! CSDL SQL
Server 2008.
4. Phương pháp nghiên c(u
Vi các m c tiêu trên tôi chn phương pháp nghiên c%u lý thuyt
kt hp th*c nghim. Đ tài d* ñ!nh tin hành theo các bưc sau:
Nghiên c%u lý thuyt v k thut mã hóa trong SQL
SERVER 2008.
Nghiên c%u phương pháp xây d*ng tng mã hóa s d ng
cơ ch có sn trong CSDL SQL SERVER 2008.
Nghiên c%u các thut toán mã hóa ñưc s d ng trong
các k thut mã hóa ca SQL Server 2008.
Nghiên c%u gii pháp mã hóa d liu m%c %ng d ng,
gii pháp này x lý mã hóa d liu trưc khi truyn d
liu vào CSDL SQL SERVER 2008.
Cài ñ-t chương trình mã hóa dòng d liu bng ngôn
ng lp trình Java.
5. Ý nghĩa khoa hc và th+c ti,n c-a ñ$ tài
Các k thut mã hóa ca SQL Server 2008 to nên mt mô
hình tng mã hóa. Mô hình này truy xut d liu t+ bng o và lưu d
liu mã hóa vào bng gc.
Ngoài cách s d ng cơ ch có sn trong SQL Server 2008, mô
hình tng mã hóa này còn ñưc th*c hin bng cách mã hóa d liu
bi %ng d ng trưc khi lưu d liu vào CSDL SQL Server 2008.
Vic mã hóa d liu trong CSDL là mt gii pháp ca tương
lai. Đn mt lúc nào ñó chúng ta s# không còn lưu d liu ti mt
máy c ñ!nh mà hưng ñn vic lưu tt c d liu trên mng Internet,
vic mt mát và ñ" l thông tin là ñiu không tránh khi. Vì vy ch(
6
mt gii pháp ñó là mã hóa chúng ñ" bt c% ai cũng không ñc ñưc
thông tin này.
Các nghiên c%u ca lun văn góp phn chuy"n ti thông tin v
các k thut mã hóa d liu ñn ngưi xây d*ng %ng d ng qun lý
CSDL. Giúp ci thin tư duy bo mt d liu ca bn thân, vn d ng
có hiu qu cách th%c ñm bo an toàn d liu.
6. B c%c lu.n văn
Lun văn ñưc b c c trong ba chương.
Chương 1: Mã hóa d liu trong SQL SERVER 2008.
Trình bày các tính năng mã hóa trong SQL Server 2008. M.i tính
năng có cách th*c hin và ưu nhưc ñi"m riêng. Ngoài ra trong chương
này còn trình bày v mô hình tng mã hóa trong SQL Server 2008.
Chương 2: Thut toán mã hóa d liu trong SQL SERVER
2008.
Mô t các thut toán mã hóa d liu ñưc s d ng trong SQL
Server 2008.
Chương 3: ng dng mã hóa dòng d liu vi java.
Trình bày lý thuyt mã hóa ca Java và ý tưng v mã hóa
dòng d liu ñưc lưu tr trong SQL Server 2008.
CHƯƠNG 1
MÃ HÓA D LIU TRONG SQL SERVER 2008
1.1. Các khái ni!m cơ b n c-a mã hóa d0 li!u trong SQL
Server
Trong bi cnh bo mt d liu, quá trình mã hóa ñưc s
d ng ñ" chuy"n ñ'i ho-c mã hóa d liu gc thành d liu không th"

7
ñc ñưc gi là văn bn mã sau ñó gii mã nó tr li thành mt ñ!nh
dng có th" ñc ñưc gi là văn bn rõ.
Phn này trình bày v các khóa ñưc s d ng ñ" th*c hin
ch%c năng mã hóa trong SQL Server và mi quan h gia các khóa
vi nhau trong h thng khóa cp bc. Các khóa này phi ñm bo
rng chúng cung cp mt m%c ñ bo v nht quán, lâu dài ñng thi
luôn luôn an toàn vi quá trình sao lưu d liu.
1.1.1. Khóa
Thành phn chính ca mã hóa là khóa. M.i khóa ch%a thut
toán, trình t* th*c hin ch%c năng mã hóa khác nhau do SQL Server
cung cp ñ" mã hóa và gii mã d liu.
1.1.2. H thng phân cp khóa mã hóa
Hình 1.1. H thng khóa phân cp.
Khóa ch
CSDL
(DMK)
Khóa ch
d!ch v
(SMK)
Windows
Data
Protection
API
Ch%ng
nhn
Khóa bt
ñi x%ng
Khóa ñi
x%ng
Khóa mã
hóa d
liu
(DEK)
8
H thng phân cp này cung cp mt cơ s bo mt cao cho d
liu nhy cm. Ti phía trên cùng ca h thng phân cp này là khóa
ch d!ch v SMK, khóa này th*c hin bo v khóa ch CSDL DMK
ti m.i %ng d ng CSDL trong SQL Server. Khóa ch CSDL DMK
ñưc s d ng ñ" mã hóa các khóa riêng như khóa bt ñi x%ng và
ch%ng nhn trong CSDL. Khóa bt ñi x%ng, ch%ng nhn ñưc s
d ng ñ" bo v khóa riêng tư khác, ñó là khóa ñi x%ng và d liu
ch%a trong CSDL. Các khóa ñi x%ng trong CSDL ñưc s d ng ñ"
bo v các khóa ñi x%ng khác cũng như d liu trong CSDL.
1.1.2.1. Khóa ch dch SMK
1.1.2.2. Khóa ch cơ s d liu DMK
1.1.2.3. Khóa bt ñi xng
1.1.2.4. Chng nhn
1.1.2.5. Khóa ñi xng
1.1.2.6. Khóa mã hóa d liu DEK
1.1.2.7. Mt khu
1.1.3. Bo v khóa
Khóa mã hóa và mt kh/u bo v khóa ñm bo tính năng bo
mt d liu nhy cm. Thưng xuyên bo v các khóa và mt kh/u
làm gim s* xut hin ca vic phá hy d liu mã hóa thông qua s*
theo dõi các giá tr! mã hóa ca tin t-c. S* bo v này ñưc ñiu khi"n
thông qua mt vòng ñi ca m.i khóa, minh ha trong hình 1.2 sau
ñây.

9
Hình 1.2. Vòng ñi ca khóa
1.1.4. Sao lưu khóa
1.2. Các thu.t toán mã hóa d0 li!u ñư&c s1 d%ng trong
SQL Server
1.2.1. Thut toán ñi xng
1.2.1.1. Thut toán DES (Data Encryption Standard)
1.2.1.2. Thut toán AES (Advanced Encryption Standard)
1.2.2. Thut toán bt ñi xng RSA
1.2.3. Thut toán băm
1.3. Mã hóa c2t
1.3.1. Cơ bn mã hóa ct
$ cp ñ ô, m%c ñ tt nht ca mã hóa, m.i ô ch%a d liu mã
hóa ñưc bo v bi mt khóa c th" do ngưi dùng th*c hin mã hóa.
Gii mã ñưc th*c hin thông qua vic s d ng cùng mt khóa ho-c
mt khóa công khai tùy thuc vào phương pháp mã hóa ñưc áp d ng.
Ch(
Gii mã
Ch
x lý
Kt thúc V hưu Chm d%t
Mã hóa
Gii mã
Khóa
chưa
ñưc
s
d ng
Khóa
b! loi
b
Khóa
ñã ñưc
s d ng
Hot
ñng
10
Ngoài ra mã hóa ct là mã hóa tt c các ô trong mt ct duy
nht cùng vi khóa và cho phép gii mã vi khóa này sau ñó cp
quyn cho các thành viên vi vai trò ca CSDL.
1.3.2. Ưu và nhưc ñim ca mã hóa ct
1.3.2.1. Ưu ñim
Mã hóa ct cung cp mã hóa m%c ñ tt hơn nhiu so
vi mã hóa tp tin sao lưu d liu. Nó cung cp phương
tin ñ" mã hóa mt ct duy nht trong bng t+ mt ct
khác.
An toàn - yu t d liu ñưc mã hóa duy trì trng thái
ñó cho ñn khi nó gii mã.
Ngưi s d ng - ngưi s d ng có th" ñưc cp quyn
truy cp vào khóa mã hóa và gii mã d liu.
1.3.2.2. Nhưc ñim
Hn ch ki"u d liu - th*c hin mã hóa ct yêu cu sa
ñ'i ki"u d liu. Tt c các d liu mã hóa phi ñưc
lưu tr vi ki"u d liu varbinary.
Trong quá trình quét bng d liu, các giá tr! b! mã hóa
mt cách gưng ép. Khóa chính và ch( m c sau khi mã
hóa không còn s d ng ñưc.
T'ng chi phí x lý – các x lý cho quá trình mã hóa và
gii mã tn chi phí cao.
1.3.3. Mã hóa mt khi lưng ln d liu
1.3.4. Các bưc thc hin mã hóa ct