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

Nghiên cứu một số thuật toán lọc thư rác và ứng dụng trong lọc email nội bộ

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 (2.02 MB, 58 trang )

i

ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & TRUYỀN
THÔNG

Khamchan PHOMTHAVONG

NGHIÊN CỨU MỘT SỐ THUẬT TOÁN LỌC THƯ
RÁC
VÀ ỨNG DỤNG TRONG LỌC EMAIL NỘI BỘ

Chuyên ngành: Khoa học máy tính
Mã số: 8 48 0101

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

Người hướng dẫn khoa học: TS. NGUYỄN HẢI MINH

THÁI NGUYÊN – 2019
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




ii

LỜI CẢM ƠN
Để hoàn thành chương trình cao học và viết luận văn, tôi đã nhận được sự
hướng dẫn, giúp đỡ góp ý nhiệt tình của quý thầy cô trường Đại học Công nghệ
Thông tin và Truyền thông - Đại học Thái Nguyên.


Trong quá trình học tập và rèn luyện tại trường Đại học Công nghệ Thông
tin và Truyền thông – Đai học Thái Nguyên, đến nay em đã kết thúc khóa học 2
năm và hoàn thành luận văn tốt nghiệp. Để có được kết quả này em xin chân
thành cảm ơn:
Ban Giám hiệu trường Đại học Công nghệ Thông tin và Truyền thông
cùng các thầy, cô giáo trong trường đã giảng dạy, quan tâm và điều kiện thuận lợi
để chúng em học tập và rèn luyện trong suốt thời gian theo học tại trường.
TS. Nguyễn Hải Minh người đã tận tình hướng dẫn, chỉ bảo, giúp đỡ em
trong suốt quá trình làm luận văn.
Và cuối cùng tôi xin gửi lời cảm ơn tới các đồng nghiệp, gia đình và bạn
bè những người đã ủng hộ, động viên tạo mọi điều kiện giúp đỡ để tôi có
được kết quả như ngày hôm nay.
Thái Nguyên, tháng …. năm 2019
Học viên

Khamchan PHOMTHAVONG

Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




iii

MỤC LỤC
LỜI CẢM ƠN ......................................................................................................... i
MỤC LỤC ............................................................................................................. iii
DANH MỤC HÌNH ẢNH ..................................................................................... v
DANH MỤC BẢNG ............................................................................................. vi
MỞ ĐẦU ................................................................................................................ 1

Chương 1. THƯ RÁC VÀ CÁC PHƯƠNG PHÁP LỌC THƯ RÁC ................... 2
1.1. Một số khái niệm cơ bản ............................................................................. 2
1.1.1. Định nghĩa thư rác ................................................................................ 2
1.1.2. Phân loại thư rác ................................................................................... 3
1.2. Các phương pháp lọc thư rác ...................................................................... 3
1.2.1. Lọc thư rác thông qua việc đưa ra luật lệ nhằm hạn chế, ngăn chặn
việc gửi thư rác. .............................................................................................. 3
1.2.2. Lọc thư rác dựa trên địa chỉ IP ............................................................. 5
1.2.3. Lọc dựa trên chuỗi hỏi/ đáp .................................................................. 6
1.2.4. Phương pháp lọc dựa trên mạng xã hội ................................................ 6
1.2.5. Phương pháp lọc nội dung .................................................................... 7
Chương 2. TỔNG QUAN CÁC THUẬT TOÁN NSA, PSA, PNSA TRONG
LỌC THƯ RÁC ................................................................................................... 11
2.1. Cơ sở lý thuyết về hệ miễn dịch nhân tạo. ................................................ 11
2.1.1. Khái niệm về hệ miễn dịch nhân tạo .................................................. 11
2.1.2. Phạm vi ứng dụng của hệ miễn dịch nhân tạo .................................... 11
2.1.3. Cấu trúc cơ bản của hệ miễn dịch nhân tạo ........................................ 11
2.2. Cơ sở lý thuyết về thuật toán chọn lọc tiêu cực (Negative Selection
Algorithms - NSA)........................................................................................... 16
2.3. Cơ sở lý thuyết về thuật toán chọn lọc tích cực (Positive Selection
Algorithms – PSA)........................................................................................... 17
2.4. Cơ sở lý thuyết thuật toán cải tiến chọn lọc thư rác (Positive and Negative
Selection Algorithms – PNSA) ........................................................................ 18
2.4.1. Một số định nghĩa ............................................................................... 18
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




iv


2.4.2. Thuật toán sinh tập bộ dò r-chunk ..................................................... 21
2.4.3. Thuật toán sinh tập bộ dò dạng r – contiguous ................................... 24
2.5. Các nghiên cứu gần đây ............................................................................ 27
Chương 3. CÀI ĐẶT CÁC THUẬT TOÁN ........................................................ 29
3.1 Tổng quan ứng dụng CNTT tại Bộ Tổng tham mưu Lào .......................... 29
3.2 Mô hình tổng quát cung cấp dịch vụ email nội bộ của đơn vị ................... 30
3.3 Mô hình thực tế ứng dụng lọc email Spam tại hệ thống email nội bộ của bộ
Tổng tham mưu Lào......................................................................................... 30
3.4 Ứng dụng hệ miễn dịch nhân tạo trong lọc thư rác .................................. 31
3.4.1 Phát biểu bài toán ................................................................................. 31
3.4.2 Cơ sở dữ liệu TREC'07 ........................................................................ 32
3.4.3 Phương pháp ........................................................................................ 32
3.4.4 Phân tích thuật toán ............................................................................ 33
3.4.5. Đánh giá .............................................................................................. 34
3.5. So sánh với các thuật toán trên WEKA .................................................... 36
3.5.1. Phát biểu bài toán................................................................................ 36
3.5.2. Cơ sở dữ liệu SpamBase ..................................................................... 36
3.5.3. Phần mềm WEKA .............................................................................. 39
3.2.4. Thiết kế phần mềm ............................................................................. 42
3.2.5 Phân tích thuật toán kết hợp chọn lọc tích cực và chọn lọc tiêu cực PNSA ..... 42
3.2.6 Giao diện chương trình và kết quả....................................................... 44
3.2.7. Đánh giá .............................................................................................. 47
KẾT LUẬN .......................................................................................................... 50
TÀI LIỆU THAM KHẢO .................................................................................... 51

Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN





v

DANH MỤC HÌNH ẢNH
Hinh 1.1: Tất cả các thư điện tử ............................................................................. 2
Hinh 1.2 : Mô tả tổng quan quá trình hoạt động của honeyd ................................. 8
Hình 2.1: Cấu trúc phân tầng của Hệ miễn dịch nhân tạo ................................... 12
Hình 2.2: Kháng thể nhận diện kháng nguyên dựa vào phần bù ......................... 13
Hình 2.3 Sơ đồ khối thuật toán chọn lọc tiêu cực ................................................ 17
Hình 2.4 Sơ đồ khối thuật toán chọn lọc tích cực ................................................ 18
Hình 3.1. Mô hình tổng quát của quá trình gửi và nhận thư điện tử .................... 30
Hinh 3.2 : Mô hình mạng nội bộ của bộ Tổng tham mưu Lào ............................ 30
Hinh 3.3.Giao diện phần mềm Weka ................................................................... 40
Hình 3.4 Giao diện Weka Explorer ...................................................................... 40
Hình 3.5 Giao diện Weka Explorer sau khi chọn CSDL Spambase .................... 41
Hình 3.6 Phân loại dữ liệu.................................................................................... 41

Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




vi

DANH MỤC BẢNG
Bảng 3.1. Kết quả khi chạy chương trình với 9 bộ test ........................................ 34
Bảng 3.2. So sánh kết quả .................................................................................... 36
Bảng 3.3. Kết quả thử nghiệm trên WEKA và PNSA ......................................... 45
Bảng 3.4. So sánh PNSA với một số phương pháp cho kết quả tốt hơn ............ 46
Bảng 3.5. So sánh PNSA với một số phương pháp cho kết quả thấp hơn .......... 47

Bảng 3.6. Kết quả so khớp với giá trị tham số r thay đổi ................................... 47

Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




1
MỞ ĐẦU
Mạng Internet ra đời đã mang lại cho con người những tiên ích hết sức to
lớn và quan trọng, một trong những tiện ích đó là dịch vụ thư điện tử. Vì, đó là
phương tiện giao tiếp đơn giản, tiện lợi, rẻ và hiệu quả giúp mọi người gắn kết và
liên lạc với nhau thường xuyên hơn. Tuy nhiên, lợi dụng tính mở của công nghệ
và cơ chế trao đổi thư mà hàng ngày người dùng nhận được một số thư ngoài
mong đợi đó là thư rác (Spam). Thư rác thường được gửi với số lượng rất lớn
thường vì mục đích quảng cáo, thậm trí là đính kèm mã độc dưới dạng Virus gây
phiền toài cho người dùng, làm giảm tốc độ xử lý của máy chủ mail server.
Thư rác (spam) là thư điện tử được gửi hàng loạt với nội dung mà người
nhận không mong đợi, không muốn xem, hay chứa những nội dung không liên
quan đến người nhận và thường được sử dụng để gửi thông tin quảng cáo. Do có
giá thành tương đối thấp so với các phương pháp quảng cáo khác, thư rác hiện
chiếm một tỷ lệ lớn và ngày càng tăng trong tổng số thư điện tử được gửi qua
Internet. Sự xuất hiện và gia tăng thư rác không những gây khó chịu và làm mất
thời gian của người nhận mà còn ảnh hưởng tới đường truyền Internet và làm
chậm tốc độ xử lý của máy chủ thư điện tử, gây thiệt hại lớn về kinh tế.
Xuất phát từ lý do đó, đề tài đặt vấn đề nghiên cứu một số thuật toán LỌC
THƯ RÁC, một trong những thuật toán mới được công bố gần đây để đề xuất
một mô hình thực nghiệm trên một dịch vụ email thực tế. Qua đó hướng tới xây
dựng ứng dụng bằng cách tích hợp thêm một số Module trong hỗ trợ sử dụng
dịch vụ sử dụng email.

Nội dung luận văn gồm có 3 chương:
Dự kiến nội dung báo cáo của luận văn gồm: Phần mở đầu, 3 chương
chính, phần kết luận, tài liệu tham khảo, phụ lục. Bố cục được trình bày như sau:
Phần mở đầu: Nêu lý do chọn đề tài và hướng nghiên cứu chính
Chương 1: THƯ RÁC VÀ CÁC PHƯƠNG PHÁP LỌC THƯ RÁC
Chương 2: TỔNG QUAN CÁC THUẬT TOÁN NSA, PSA, PNSA
TRONG LỌC THƯ RÁC.
Chương 3: CÀI ĐẶT CÁC THUẬT TOÁN.
Phần kết luận: Tóm tắt các kết quả đã đạt được và hướng phát triển tiếp
theo của đề tài.
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




2
Chương 1.
THƯ RÁC VÀ CÁC PHƯƠNG PHÁP LỌC THƯ RÁC
1.1. Một số khái niệm cơ bản
1.1.1. Định nghĩa thư rác
Có nhiều tranh cãi về việc đâu là định nghĩa chính xác của thư rác (spam
email), bởi vì thư rác mang tính cá nhân hóa nên khó mà nói lên được hết ý nghĩa
của thư rác. Nhiều ý kiến cho rằng thư rác là những “thư điện tử (email) không
mong muốn”. Định nghĩa này cũng không thực sự chính xác, như một nhân viên
nhận những thư điện tử về công việc từ sếp của họ, đây là những thư điện tử
người nhân viên không mong muốn nhưng chúng không phải là thư rác. Lại có ý
kiến khác cho rằng thư rác là những “thư điện tử thương mại không được yêu cầu
từ phía người nhận” những thư này bao gồm các thư điện tử quảng cáo về các
sản phẩm và thư điện tử lừa gạt. Nhưng định nghĩa này cũng không thực sự chính
xác, nó làm mọi người nghĩ rằng thư rác giống như là thư đáng bỏ đi (junk mail).

Sau đây sẽ đưa ra một định nghĩa thông dụng nhất về thư rác và giải thích các
đặc điểm của nó để phân biệt thư rác với thư thông thường [1,2]:
Thư rác (spam mail) là những bức thư điện tử không yêu cầu, không mong
muốn và được gửi hàng loạt tới người nhận.
Một bức thư nếu gửi không theo yêu cầu có thể đó là thư làm quen hoặc
thư được gửi lần đầu tiên, còn nếu thư được gửi hàng loạt thì nó có thể là thư gửi
cho khách hàng của các công ty, các nhà cung cấp dịch vụ. Vì thế một bức thư bị
coi là rác khi nó không được yêu cầu, và được gửi hàng loạt.
Hình vẽ sau sẽ thể hiện rõ định nghĩa của thư rác:

Hinh 1.1: Tất cả các thư điện tử
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




3
1.1.2. Phân loại thư rác
Có rất nhiều cách phân loại thư rác[1] .
- Dựa trên kiểu phát tán thư rác: Tính tới thời điểm hiện tại, thư rác có thể
bị gửi thông qua thư điện tử, nhóm thảo luận (newsgroups), điện thoại di động
(Short Message Service - SMS) và các dịch vụ gửi tin nhắn trên mạng (như
Yahoo Messenger, Windows Messenger...)
- Dựa vào quan hệ với người gửi thư rác: bao gồm người lạ mặt, bạn bè,
người quen và các dịch vụ quyên góp giúp đỡ…
- Dựa vào nội dung của thư rác: các kiểu nội dung phổ biến như thư về
thương mại, thư về chính trị, thư về công nghệ, chuỗi thư (chain e-mail) và các
loại khác (như thư phát tán virus...).
- Dựa trên động lực của người gửi: Thông thường, thư rác được gửi đi cho
những mục đích quảng bá thông tin. Ngoài ra, còn có một số loại thư rác được

gửi tới một người nhận xác định nào đó nhằm mục đích phá vỡ và gây cản trở
công việc của người nhận hay mạng của nhà cung cấp dịch vụ thư điện tử (ESP)
được gọi là “bom thư”. Thư rác còn được cố ý gửi đi nhằm thông báo tin sai lệch,
làm xáo trộn công việc và cuộc sống của người nhận.
Sự phân loại thư rác rất quan trọng không chỉ trong lĩnh vực tạo những bộ
lọc thư rác có hiệu quả cao mà còn giúp cho việc ban hành các bộ luật chống thư
rác phù hợp.
1.2. Các phương pháp lọc thư rác
1.2.1. Lọc thư rác thông qua việc đưa ra luật lệ nhằm hạn chế, ngăn chặn
việc gửi thư rác.
Khi tình trạng thư rác ngày càng tăng trên đường truyền internet gây ra
nhiều phiền toái và thiệt hại lớn trên thế giới rất nhiều các quốc gia đã đưa ra các
luật để ngăn chặn thư rác. Dưới đây là một số nội dung cơ bản liên quan tới giải
pháp ngăn chặn thông qua luật lệ pháp lý được đưa ra trên báo điện tử của bộ
viễn thông .
Mỹ là một những nước đầu tiên trên thế giới cố gắng ban hành các văn
bản pháp luật để giải quyết vấn đề thư điện tử rác tràn ngập. Từ tháng 7 năm
1997, bang Nevada đã dẫn đầu trong việc ban hành các quy phạm pháp luật quy
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




4
định về hành vi phục vụ và sử dụng thư tín điện tử. Tính đến tháng 3 năm 2003,
đã có 26 bang ban hành quy phạm pháp luật quy định về dịch vụ và hành vi sử
dụng thư tín điện tử. Đến tháng 11 năm 2003, con số này lên đến 36. Về phía
chính quyền liên bang, từ những năm 1990, cả Thượng nghị viện và Hạ nghị viện
đều quan tâm đến sự lan rộng của thư tín điện tử quấy rối và thư rác, và đã đưa ra
nhiều dự án luật như “Luật bảo vệ hộp thư không bị quấy rối” (1999), “Luật Bảo

vệ người sử dụng thư điện tử”, “Luật Khống chế thư điện tử không được phép”
(2000), “Luật Khống chế thư rác truyền qua đường điện thoại vô tuyến” (2000) ,
“Luật Chống thư rác” (2001).
Mười năm gần đây, Liên minh Châu Âu cũng đã ban hành một số chỉ
lệnh, đưa ra các quy phạm và chỉ dẫn đối với các vấn đề thương mại điện tử,
thông tin điện tử, bảo hộ dữ liệu.
Trong các chỉ lệnh nói trên, có không ít các qui định có liên quan mật
thiết, thậm chí là trực tiếp với phục vụ và sử dụng thư điện tử như “Chỉ lệnh Bảo
vệ dữ liệu cá nhân ở Châu Âu”, “Chỉ lệnh về thông tin điện tử và bảo mật dữ
liệu” ... Ngày 12 tháng 7 năm
2002, Nghị Viện Liên minh Châu Âu đã thông qua “Chỉ lệnh Bảo mật
riêng tư và Thông tin điện tử trong Liên minh Châu Âu”. Chỉ lệnh quy định: Từ
31 tháng 10 năm 2003, trong phạm vi Liên minh Châu Âu, nếu chưa được người
nhận đồng ý trước, không được gửi thư điện tử thương mại hay nhằm mục đích
tuyên truyền cho cá nhân. Tiếp theo sau khi Liên minh Châu Âu đưa ra các qui
định về phục vụ và sử dụng thư điện tử, các nước thành viên Liên minh Châu Âu,
như Italia, Anh, Đan Mạch, Tây Ban Nha ... đều đã ban hành quy phạm pháp luật
trong nước quy định hành vi cung cấp và sử dụng thư điện tử, ngăn chặn sự tràn
ngập của thư rác.
Tại Lào vấn đề thư rác bắt đầu nhận được sự quan tâm từ phía các cơ quan
có trách nhiệm. Bộ Thương mại đang soạn thảo Thông tư quản lý hoạt động
quảng cáo thương mại trên các phương tiện điện tử. Trên trang báo điện tử của
bộ viễn thông, Bà Lại Việt Anh, Trưởng Phòng chính sách, Vụ Thương mại điện
tử, Bộ Thương mại, nhận xét: mục tiêu của Thông tư này trước mắt tập trung
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




5

quản lý ba hình thức quảng cáo đang bức xúc: thư điện tử, tin nhắn điện thoại di
động và quảng cáo trên trang thông tin điện tử
1.2.2. Lọc thư rác dựa trên địa chỉ IP
Phương pháp lọc thư rác thông qua địa chỉ IP là phương pháp đơn giản và
được sử dụng sớm nhất trong công cuộc chống thư rác. Dựa vào địa chỉ IP của
người gửi để xác định thư đó bị ngăn chặn hoặc cho qua. Có hai cách để thực
hiện việc lọc thư: một là duy trì một danh sách các địa chỉ IP bị chặn (còn gọi là
danh sách đen blacklist); thứ hai là sử dụng một danh sách các địa chỉ IP cho
phép qua (danh sách trắng whitelist).
Danh sách đen (Blacklist)
Người ta lập ra một danh sách các địa chỉ gửi thư rác. Các nhà cung cấp
dịch vụ thư điện tử (ISP) sẽ dựa trên danh sách này để loại bỏ những thư nằm
trong danh sách này. Danh sách này thường xuyên được cập nhật và được chia sẻ
giữa các nhà cung cấp dịch vụ. Một số danh sách đen điển hình được lập ra như:
SpamCop Blocking List và Composite Block List.
Ưu điểm của phương pháp này là các ISP sẽ ngăn chặn được khá nhiều địa
chỉ gửi thư rác. Mặc dù danh sách đen này luôn được cập nhật nhưng với sự thay
đổi liên tục địa chỉ, sự giả mạo địa chỉ hoặc lợi dụng một mail server hợp pháp để
gửi thư rác đã làm số lượng thư rác gửi đi vẫn ngày càng tăng cao. Do đó phương
pháp này chỉ ngăn chặn được một nửa số thư rác gửi đi và sẽ mất rất nhiều thư
hợp pháp nếu ngăn chặn nhầm.
Danh sách trắng (Whitelist)
Danh sách các địa chỉ tin cậy (Safe Sender List), danh sách này có thể do
một nhà cung cấp dịch vụ nào đó cung cấp. Những địa chỉ thuộc danh sách sẽ
được cho qua bộ lọc. Người dùng phải đăng ký với nhà cung cấp danh sách để
được nằm trong danh sách.
Ưu điểm: số lượng địa chỉ trong danh sách trắng sẽ ít hơn trong danh sách
đen vì thế sẽ dễ cập nhật hơn danh sách đen và giải quyết được tình trạng chặn
nhầm thư.


Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




6
Tuy nhiên cả hai phương pháp trên đều có nhược điểm là khó cập nhật,
nhất là khi ai đó thay đổi địa chỉ IP. Ngoài ra người gửi cũng có thể lợi dụng
server mail có trong danh sách trắng để gửi thư rác, khi đó rất khó kiểm soát.
1.2.3. Lọc dựa trên chuỗi hỏi/ đáp
Đặc trưng của phương pháp này là khả năng tự động gửi thư hồi đáp cho
người gửi để yêu cầu một số hành động chắc chắn về việc gửi thư của họ.
Chương trình kiểm tra này được đặt tên là “Turing Test” sau một vài kiểm tra
được nghĩ ra bởi nhà toán học người anh tên là Alan Turing.
Trong một vài năm gần đây xuất hiện của một vài dịch vụ Internet tự động
xử lý hàm Challenge/Response này cho người dùng, chương trình yêu cầu người
gửi thư phải vào website của họ và trả lời một số câu hỏi để chắc chắn về e-mail
mà người này đã gửi.Việc này chỉ được yêu cầu trong lần gửi thư đầu tiên.
Đối với một số người dùng có lượng thư trao đổi thấp, hệ thống đơn lẻ này
có thể chấp nhận được như một phương pháp hoàn hảo để loại trừ hoàn toàn thư
rác từ hòm thư của họ.
1.2.4. Phương pháp lọc dựa trên mạng xã hội
Các nghiên cứu gần đây đã bắt đầu khai thác thông tin từ mạng xã hội cho
việc xác định thư rác bằng cách xây dựng một đồ thị (các đỉnh là địa chỉ email,
cung được thêm vào giữa 2 node A và B nếu giữa A và B có sự trao đổi thư qua
lại). Người ta đã sử dụng một số tính chất đặc trưng của mạng xã hội để xây
dựng một công cụ lọc thư rác [1].
Đầu tiên, người ta phân đồ thị thành các thành phần con rồi tính độ phân
cụm cho từng thành phần này. Mỗi thành phần con là một đồ thị mạng xã hội của
một node, bao gồm tất cả các node xung quanh là “node hàng xóm” (các node có

cung liên kết với node này) và những cung liên kết giữa các node hàng xóm này
với nhau. Nếu thành phần nào có độ phân cụm thấp thì node tương ứng với thành
phần đó là một địa chỉ gửi thư rác. Trong thành phần mạng xã hội của những
node gửi thư rác, những node hàng xóm của nó thường là những node rất ngẫu
nhiên, không có mối quan hệ (không có sự trao đổi email qua lại với nhau) nên
độ phân cụm của mạng xã hội của những node này rất thấp. Ngược lại, mạng xã
hội ứng với những người dùng bình thường có độ phân cụm cao hơn.
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




7
Dựa vào độ phân cụm, người ta tạo được danh sách đen (Blacklist) gồm
địa chỉ email tương ứng với những node có độ phân cụm rất thấp, danh sách
trắng (Whitelist) ứng với node có độ phân cụm cao, số node còn lại sẽ được đưa
vào danh sách cần xem xét (Greylist). Phương pháp này có thể phân loại được
53% tổng số email một cách chính xác là ham hay spam. Nhược điểm của
phương pháp là những spammer có thể xây dựng mạng xã hội của chính họ nên
khó có thể phát hiện ra
1.2.5. Phương pháp lọc nội dung
Phương pháp lọc nội dung để phân loại thư rác đã và đang được quan tâm,
nghiên cứu và ứng dụng nhiều nhất. Phương pháp này dựa vào nội dung và chủ
đề bức thư để phân biệt thư rác và thư hợp lệ. Phương pháp này có ưu điểm đó là
chúng ta có thể dễ dàng thay đổi bộ lọc để nó có thể lọc các loại thư rác cho phù
hợp. Nhược điểm của phương pháp này là: do biết được cách thức lọc nội dung
nên các spammer luôn luôn thay đổi hình thức nội dung của thư rác.
Phần dưới đây trình bày những nét cơ bản nhất về các phương pháp lọc
nội dung thông dụng [1,2].
Lọc dựa trên các dấu hiệu nhận biết

Trước tiên, tạo ra các địa chỉ email để bẫy thư rác, gọi là honeypots,
phương pháp này được nghiên cứu phát triển nhiều vào năm 2003. Honeypots
chứa các địa chỉ sao cho không bao giờ thư bình thường có thể gửi đến. Do đó
thư gửi đến bẫy địa chỉ này ta có thể coi đó là thư rác.
Sau đó hệ thống so sánh thư mới đến với thư đã được bẫy. Sự so sánh dựa
trên dấu hiệu nhận biết, nếu chúng có dấu hiệu giống nhau thì có thể kết luận thư
mới đến là thư rác.
Ưu điểm của phương pháp này là đơn giản, nhanh và không lọc nhầm thư
thường thành thư rác. Tuy nhiên spammer có thể dễ dàng vượt qua hệ thống bằng
cách sinh ngẫu nhiên các mẩu thư rác sau đó gộp lại nhằm làm cho dấu hiệu của
các bức thư rác khác nhau. Bởi vậy tỉ lệ lọc thư rác của hệ thống luôn nhỏ hơn
70%. Do không lọc thư thường thành thư rác nên phương pháp này được triển
khai trên server.
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




8
Một hệ thống lọc thư rác dựa trên honeypots hoạt động rất hiệu quả đó là
eTrap. Hệ thống eTrap sử dụng honeypots để thu thập thông tin về spam. Những
thông tin về spam được lưu trữ trong cơ sở dữ liệu chia sẻ chung. Hệ thống eTrap
lọc thư rác dựa trên những thông tin về spam này.

Hinh 1.2 : Mô tả tổng quan quá trình hoạt động của honeyd
Trước tiên honeyd bẫy các địa chỉ gửi thư rác, sau đó toàn bộ thông tin về
thư rác thu được sẽ được gửi tới Collaborative Spam Classifier để tổng hợp thông
tin. Dựa vào những thông tin đó bộ phân loại thư rác sẽ phân tichsm để phân loại
thư rác.
Lọc thư rác thông qua bỏ phiếu trên danh sách trắng, đen.

Hệ thống tìm xem các từ trong danh sách đen/trắng có nằm trong thư mới
đến không và đếm số lần xuất hiện của chúng. Nếu số lượng từ thuộc danh sách
trắng nhiều hơn rất nhiều số từ thuộc danh sách đen thì bức thư đó là hợp pháp và
ngược lại sẽ là thư rác.
Đặc trưng của bộ lọc thông qua bỏ phiếu trên danh sách đen/trắng:
- Không có biến đổi dữ liệu ban đầu.
- Biểu thức chính quy để tách từ ra khỏi thư là: [[:graph:]]+
- Việc chọn đặc trưng đơn giản chỉ là các từ đơn
- Cơ sở dữ liệu về đặc trưng chỉ được nạp khi các từ nằm trong danh sách
đen hoặc trắng. Nếu nằm trong danh sách đen thì đặt là -1, trong danh sách trắng
là +1, các trường hợp còn lại đặt là 0.
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




9
- Luật tổ hợp là : “Điểm mới = Điểm cũ + trọng số đặc trưng”
- Ngưỡng lọc cuối cùng là : Nếu Điểm mới > 0 là thư hợp pháp, nếu < 0 là
thư rác.
Như vậy bộ lọc thực hiện chấm điểm các từ trong danh sách đen và các từ
trong danh sách trắng bằng nhau. Một số cải biên của phương pháp này là đánh
trọng số cho các từ trong danh sách đen cao hơn trong danh sách trắng hoặc
ngược lại.
Lọc thư rác dựa vào phương pháp heuristic.
Cách thức hoạt động của phương pháp này là dựa trên việc xác định
những từ đặc trưng thuộc về thư rác, từ đặc trưng thuộc về thư hợp pháp, sau đó
phát hiện những đặc trưng đó trong thư mới nhận để đưa ra kết luận thư đó là thư
rác hay thư hợp lệ.
Người ta đánh trọng số cho các đặc trưng trên bằng tay hoặc bằng thuật

toán và lập một ngưỡng để phân loại thư. Nếu bức thư có trọng số lớn hơn
ngưỡng quy định sẽ bị coi là thư rác.
Các chương trình lọc thư rác sử dụng phương pháp này có hiệu suất khác
nhau. Vì mỗi chương trình sử dụng một luật lọc khác nhau.
Một số chương trình lọc theo phương pháp này như hệ thống chấm điểm
cho email sử dụng phương pháp hueristic của mail server Mdaemon, Spam
Assassin hay SpamGuard của Yahoo.
Phương pháp này có ưu điểm là dễ cài đặt và hiệu suất chặn thư rác khá
cao khi xây dựng được hệ thống luật tốt. Nhược điểm chính của phương pháp
này là tỉ lệ chặn nhầm thư hợp pháp cũng khá lớn 0.5%. Phương pháp này không
linh hoạt do các luật được xây dựng luôn chậm hơn sao với sự biến đổi của từ
ngữ trong thư rác.
Phương pháp này thường được áp dụng cho các bộ lọc thư ở server.
Lọc thư rác dựa trên xác suất thống kê và học máy.
Đầu tiên sẽ phân loại các bức thư thành thư rác và thư hợp lệ. Một thuật
toán được áp dụng để trích chọn và đánh trọng số cho các đặc trưng của thư rác
theo một cách nào đó (thường là áp dụng công thức xác suất). Sau khi trích chọn
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




10
đặc trưng, hai tập thư rác và thư hợp lệ sẽ được sử dụng để huấn luyện một bộ
phân loại tự động. Quá trình huấn luyện dựa trên một phương pháp học máy.
Tỉ lệ chặn thư rác của bộ lọc sử dụng phương pháp này rất cao, khoảng
99%. Chương trình SpamProbe có thể đạt tới tỉ lệ lọc thư rác tới 99.9%. Các
phương pháp học máy và xác suất thống kê cho phép phân loại cả những thư rác
chưa từng xuất hiện trước đó. Phương pháp này còn có tỉ lệ chặn thư hợp pháp
rất thấp, thấp hơn nhiều so với phương pháp heuristic.

Nhược điểm của phương pháp này là phải có một tập hợp các thư để huấn
luyện. Hiệu suất của bộ lọc sẽ phụ thuộc nhiều vào tập huấn luyện này. Tập dữ
liệu càng lớn càng chứa nhiều dạng khác nhau thì kết quả phân loại về sau sẽ
càng chính xác.
Hiện nay phương pháp lọc thư rác theo học máy và xác suất thống kê là
một phương pháp có triển vọng với nhiều ứng dụng thương mại như Hotmail,
Google, Yahoo.
Để có một bộ lọc hoàn hảo dường như không thể thực hiện được, một bộ
lọc tốt nhất là bộ lọc kết hợp nhiều bộ lọc. Việc Spam ngày càng được thực hiện
tinh vi hơn đòi hỏi các bộ lọc phải có khả năng biến đổi theo sự thay đổi của
Spam, sự thay đổi về số lượng, về nội dung và cấu trúc của các thư spam. Vì vậy
yêu cầu đặt ra phải có một bộ lọc có khả năng cập nhật để có thể thay đổi, chống
lại những thư spam có cấu trúc nội dung mới, bộ lọc học máy lọc dựa trên nội
dung Email Classification Using Example(ECUE) đã được chứng minh là có khả
năng thực hiện được điều đó. Trong khuôn khổ luận văn này em xin trình bày

hệ thống lọc thư rác NSA, PSA, PNSA mới được đề xuất và đã xây dựng
thử nghiệm thành công.

Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




11
Chương 2.
TỔNG QUAN CÁC THUẬT TOÁN NSA, PSA, PNSA
TRONG LỌC THƯ RÁC
2.1. Cơ sở lý thuyết về hệ miễn dịch nhân tạo.
2.1.1. Khái niệm về hệ miễn dịch nhân tạo

“Hệ miễn dịch nhân tạo là một hệ thống thích nghi lấy ý tưởng của học
thuyết miễn dịch và những chức năng, nguyên tắc, mô hình miễn dịch quan sát
được, áp dụng giải các bài toán thực tế.” (Castro & Timmis - 2002)
2.1.2. Phạm vi ứng dụng của hệ miễn dịch nhân tạo
Hệ miễn dịch nhân tạo có phạm vi ứng dụng rất rất rộng rãi, các ứng dụng
của nó phải kể đến là:
- Nhận dạng mẫu
- Kiểm tra lỗi và những dấu hiệu bất thường của hệ thống
- Phân tích dữ liệu
- Lập lịch
- Học máy
- Điều khiển tự động
- Tìm kiếm và tối ưu
- An toàn thông minh
2.1.3. Cấu trúc cơ bản của hệ miễn dịch nhân tạo
Mô hình chung cho các hệ thống phỏng tiến hoá sinh học
Cấu trúc cơ bản của hệ thống phỏng sinh học cần có 3 yếu tố cơ bản sau:
- Biểu diễn các thành phần của hệ thống.
- Cơ chế đánh giá tương tác của các cá thể với môi trường và các cá thể
với nhau. Môi trường thường mô phỏng bởi một tập kích thích vào, một hoặc
nhiều hàm đo độ thích nghi của cá thể với môi trường.
- Các thủ tục thích nghi điều khiển tính động của hệ thống, tức là làm cho
hoạt động của hệ thống thay đổi theo thời gian.
Đây cũng là điểm cơ bản của cấu trúc để thiết kế Hệ miễn dịch nhân tạo,
đó là: Mô hình hoá các thành phần của Hệ miễn dịch gồm tế bào các phần tử
miễn dịch; xây dựng một tập hàm xác định độ thích hợp, để định lượng sự tương
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN





12
tác của các phần tử nhân tạo, và một tập thuật toán để điều khiển tính động của
hệ AIS(Hệ thống nhận dạng tự động).
Mô hình cho hệ miễn dịch nhân tạo

Hình 2.1: Cấu trúc phân tầng của Hệ miễn dịch nhân tạo
Tầng đầu tiên là lĩnh vực ứng dụng. Đối với lĩnh vực ứng dụng khác nhau
sẽ quyết định những thành phần và cách thức biểu diễn khác nhau và dẫn tới các
thao tác trên các thành phần cũng khác nhau.
Tầng thứ hai là biểu diễn các thành phần: Trong AIS(Hệ thống nhận dạng
tự động) phải biểu diễn được hai thành phần quan trọng là kháng thể và kháng
nguyên.
Tầng thứ ba là các phương pháp đánh giá độ thích hợp: Để đánh giá độ
thích hợp có thể sử dụng nhiều phương pháp khác nhau như khoảng cách
Hamming, khoảng cách Euclid, hoặc khoảng cách Mahattan.
Tầng thứ tư là sử dụng các thuật toán miễn dịch: Có thể dùng các thuật
toán miễn dịch như thuật toán chọn lọc tích cực, thuật toán chọn lọc tiêu cực,
thuật toán chọn lọc Clone, thuật toán aiNet, thuật toán RAIN để điều chỉnh tính
động của hệ AIS(Hệ thống nhận dạng tự động).
Tầng thứ năm là đưa ra lời giải cho bài toán: Lời giải cho bài toán sẽ được
cập nhật lại sau khi một quần thể mới được tạo và đưa ra kết quả cuối cùng khi
đạt đến điều kiện kết thúc nào đó ví dụ như sau một số bước lặp nhất định.
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




13
Các mô hình trừu tượng của hệ miễn dịch và tương tác giữa chúng

a) Tổng quát hoá các thành phần sinh học của hệ miễn dịch
Ta giả thiết rằng các cơ quan thụ cảm trên bề mặt của mọi bạch cầu được
gọi chung là kháng thể và phần tử mà các cơ quan thụ cảm này nhận diện được
gọi chung là kháng nguyên. Khả năng nhận diện của các cơ quan thụ cảm với
phần tử gây bệnh được gọi là độ thích hợp (Affinity hay Degree of match) của
kháng thể với kháng nguyên.
b) Không gian hình dạng (Shape - Space)
Kết hợp với kháng thể và kháng nguyên chính là sự kết hợp của khối lồi
và lõm trên bề mặt 2 phần tử như hình 4.2. Để mô tả hình dạng tổng quát của
kháng thể và kháng nguyên cũng như thể hiện sự kết hợp giữa chúng, ta có thể
biểu diễn kháng thể và kháng nguyên là một tập các khối lồi, lõm với 3 tham số
chiều cao, chiều rộng và chiều dài. Ta có thể biểu diễn kháng thể và kháng
nguyên như một tập L tham số.

Hình 2.2: Kháng thể nhận diện kháng nguyên dựa vào phần bù
Như vậy mỗi kháng thể và kháng nguyên có thể coi như một chuỗi thuộc
tính m=<m1,m2,…,mL> trong không gian hình dạng S, L chiều. Mỗi phần tử
chính là một điểm trong không gian S.
Chuỗi thuộc tính có thể được tạo bởi bất kì kiểu thuộc tính nào như kiểu
số thực, số nguyên, bit và ký hiệu. Kiểu thuộc tính của các phần phụ thuộc vào
bài toán và là yếu tố quan trọng để từ đó xác định tương tác của phần tử. Có một
số kiểu không gian hình dạng chủ yếu sau:
- Không gian thực (Real - shape - space): Chuỗi thuộc tính có các phần tử
nhận giá trị thực.
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




14

- Không gian nguyên (Integer - shape - space): Chuỗi thuộc tính có các
phần tử nhận giá trị nguyên.
- Không gian Hamming (Hamming - shape - space): Chuỗi thuộc tính có
các phần tử nhận một giá trị nào đó trong bảng hữu hạn k mẫu tự.
- Không gian ký hiệu (Symbolic - shape - space): Thường tạo bởi các
thuộc tính có kiểu khác nhau, trong đó có ít nhất một thuộc tính là kiểu ký hiệu.
Không mất tính tổng quát ta có thể giả sử kháng thể và kháng nguyên có
cùng độ dài là L. Tổng quát một kháng thể được biểu diễn bởi vector
Ab=<Ab1,Ab2,…,AbL> và một kháng nguyên được biểu diễn bởi vector
Ag=<Ag1,Ag2,…,AgL> để xác định tương tác của các kháng thể với nhau và
kháng thể với kháng nguyên có thể dùng công thức tính khoảng cách để đo độ
thích hợp của 2 phần tử.
c) Đánh giá tương tác giữa các phần tử
- Không gian Euclid và không gian Mahattan:
Không gian toạ độ thực dùng công thức tính toán khoảng cách (2.1) được
gọi là không gian Euclid, dùng công thức tính toán khoảng cách (2.2) được gọi là
không gian Mahattan:

D

L

  Ab  Ag 
i l

i

i

2


(2.1)

L

D   Abi  Agi (2.2)
i l

Để đánh giá độ thích hợp giữa các thành phần của AIS(Hệ thống nhận
dạng tự động), trong không gian thực có thể dùng khoảng cách Euclid hoặc
khoảng cách Mahattan.
- Không gian Hamming:
Không gian hình dạng Hamming, các kháng nguyên và kháng thể được
biểu diễn như các dãy ký hiệu trên một tập hữu hạn k mẫu tự. Công thức tính
toán cách Hamming (2.3) dùng để đánh giá độ thích hợp giữa 2 chuỗi thuộc tính
có độ dài L trong không gian Hamming. Với k=2 ta có không gian Hamming nhị
phân, k=3 ta có không gian Hamming tam phân.
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




15
L

1 Abi  Agi
(2.3)
0 Abi  Agi

D    i ,  i  

i l

Tuỳ thuộc vào bài toán, một không gian nguyên cũng có thể được áp
dụng. Trong không gian này các thuộc tính tương ứng với các biến có giá trị
nguyên. Không gian nguyên có thể được xem như một trường hợp đặc biệt của
không gian Hamming.
Các công thức trên không chỉ dùng để biểu diễn tương tác giữa các kháng
thể với kháng nguyên, mà còn có thể dùng để biểu diễn tương tác giữa các phần
tử trong Hệ miễn dịch .Ta có thể coi các công thức trên là những công thức
chung để xác định tương tác giữa các phần tử trong Hệ miễn dịch.
Ngoài ra để xác định tương tác giữa các phần tử, ta quy định một ngưỡng
nào đó, tuỳ từng bài toán và từng trường hợp cụ thể nếu khoảng cách D giữa 2
phần tử nhỏ hơn hoặc lớn hơn ngưỡng ta có 2 phần tử tương tác với nhau, hay
có thể nhận diện được nhau.
Một số thuật toán miễn dịch
Dựa vào biểu diễn thích hợp cho các tế bào và phần tử miễn dịch cũng
như cách tương tác giữa các phần tử, người ta đưa ra một số thuật toán miễn dịch
chung dựa trên những ý tưởng của Hệ miễn dịch.
- Mô hình dựa trên hoạt động của tuỷ xương (Bone marrow models):
Được dùng để sản sinh quần thể tế bào và các phần tử.
- Mô hình dựa trên hoạt động của tuyến ức: được dùng để chọn lọc quần
thể tế bào và các phần tử có khả năng nhận diện Self và nonSelf.
- Mô hình mạng miễn dịch và thuật toán chọn lọc Clone: Được dùng để
mô tả tương tác giữa các phần tử trong Hệ miễn dịch với nhau và với môi trường,
điều khiển các thành phần của Hệ miễn dịch tương tác với môi trường bên ngoài.
Bao gồm các quá trình chọn lọc, nhân rộng, đột biến, bổ sung phần tử mới.

Các thuật toán sẽ được mô tả ở mức tổng quát cao, đưa ra các mô
hình tính toán chung tương ứng với quá trình miễn dịch sinh học. Ý tưởng
chung của các thuật toán miễn dịch là điều chỉnh quần thể, kháng thể nhằm

hướng quần thể tới những lời giải tốt (tính hội tụ của quần thể) đồng thời
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




16
cũng phải đảm bảo tính đa dạng của quần thể (tránh trường hợp làm cho bài
toán hội tụ sớm).Việc điều chỉnh quần thể này dựa trên độ thích hợp của
các kháng thể và kháng nguyên và giữa các kháng thể với nhau. Tuy nhiên
việc đánh giá độ thích hợp không giống nhau cho các thuật toán, với mỗi
thuật toán sẽ có những cách đánh giá khác nhau.
2.2. Cơ sở lý thuyết về thuật toán chọn lọc tiêu cực (Negative Selection
Algorithms - NSA)
NSA của Forrest và các đồng nghiệp khá đơn giản [5]: Giả sử đã có một
tập Self-Peptide để tạo thành phức chất MHC-Self peptide, các cơ quan thụ cảm
T-cell nếu nhận diện được một self-peptide thì sẽ bị loại bỏ, trái lại nó sẽ được
chọn như một tế bào có khả năng miễn dịch và bổ sung vào quần thể có giá trị A.
Thuật toán chọn lọc tiêu cực được minh họa trong hình 2.3 có thể được tóm tắt
như sau:
Bước 1. Khởi tạo: Sản sinh một quần thể tiềm năng P những T-cell chưa
trưởng thành. Giả thiết tất cả các phần tử (các cơ quan thụ cảm và các selfpeptide) được biểu diễn bằng một xâu nhị phân ℓ bit.
Bước 2. Đánh giá độ thích hợp: Xác định độ thích hợp của tất cả T-cell
trong P với mọi phần tử của tập Self S.
Bước 3. Tạo một quần thể có giá trị: Nếu độ thích hợp của một T-cell
chưa trưởng thành với ít nhất một phần tử self-peptide lớn hơn hoặc bằng một
ngưỡng tương tác chéo nào đó, thì T- cell nhận diện được self-peptide này và bị
loại bỏ, trái lại T- cell được bổ sung vào quần thể có giá trị A.

Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN





17

S

Quần thể tiềm năng P

pP nhận diện được s S

Loại bỏ

Đúng

Sai

Cho vào quần thể có giá trị A

Hình 2.3 Sơ đồ khối thuật toán chọn lọc tiêu cực
2.3. Cơ sở lý thuyết về thuật toán chọn lọc tích cực (Positive Selection
Algorithms – PSA)
Ý tưởng của thuật toán khá đơn giản, đó là chọn lọc những T-cell có thể
nhận diện các peptide (một phần của kháng nguyên xâm nhập vào cơ thể), mà
peptide này đã kết hợp với MHC (Major Histocompatibility Complex - phức hợp
các phần tử có nhiệm vụ trình diện peptide kháng nguyên cho T- cell) để tạo
thành MHC/peptide. Giả thiết có tập MHC/peptide, kí hiệu là tập S, các cơ quan
thụ cảm T-cell sẽ phải được kiểm tra về khả năng kết hợp với các phần tử thuộc
tập S này. Nếu một T-cell không nhận diện được bất kỳ phần tử nào, nó sẽ bị loại

bỏ. Trái lại, nó được chọn như một tế bào có khả năng miễn dịch và bổ sung vào
quần thể có giá trị A.
Thuật toán chọn lọc tích cực được minh họa như trong hình 2.6 và có thể
tóm tắt như sau:
Bước 1. Khởi tạo: Sản sinh một quần thể tiềm năng P những T-cell chưa
trưởng thành. Giả thiết tất cả các phần tử được biểu diễn như các xâu nhị phân có
cùng độ dài ℓ.
Bước 2. Đánh giá độ thích hợp: Xác định độ thích hợp của tất cả phần tử
trong quần thể P với tất cả phần tử trong tập Self S.
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




18
Bước 3. Tạo một quần thể có giá trị: Nếu độ thích hợp của một phần tử
trong P với một phần tử trong S lớn hơn hoặc bằng một ngưỡng tương tác chéo
nào đó thì T-cell có khả năng nhận diện kháng nguyên, sẽ được chọn vào quần
thể có giá trị A trái lại T-cell bị loại bỏ
S

Quần thể tiềm năng P

pP nhận diện được sS

Sai

Loại bỏ

Đúng


Cho vào quần thể có giá trị A

Hình 2.4 Sơ đồ khối thuật toán chọn lọc tích cực
2.4. Cơ sở lý thuyết thuật toán cải tiến chọn lọc thư rác (Positive and
Negative Selection Algorithms – PNSA)

S là tập Self hay còn gọi là tập tế bào cần bảo vệ.
A là quần thể có giá trị.
Phân biệt self và nonself trong sinh học quá trình chọn lọc các tế bào BCell và T-Cell, Hệ miễn dịch thích nghi không chỉ phải chọn những tế bào có khả
năng nhận biết những tế bào lạ (Antigen hay nonself), mà nó còn phải loại bỏ
những tế bào nhận biết được những tế bào do cơ thể tạo ra (Self – antigen hay
đơn giản là Self). Tương ứng với hai quá trình này ta có quá trình chọn lọc tích
cực và chọn lọc tiêu cực. Hai quá trình này xảy ra với cả B-Cell và T-Cell với nguyên
lý khá giống nhau. Khi xây dựng thuật toán chúng ta chỉ cần xét với T-Cell
2.4.1. Một số định nghĩa
Trong các định nghĩa dưới đây, ta chỉ xét các xâu được xây dựng từ
cùng một tập kí tự Σ. Không mất tính tổng quát, trong luận văn ta chỉ xét các xâu
nhị phân, nghĩa là Σ = {0,1}. Ngoài ra, kí hiệu Σk được hiểu theo nghĩa thông
thường là tập tất cả các xâu kí tự độ dài k xây dựng từ tập kí tự Σ.
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




19
2.4.1.1. Self
Self hay còn được gọi là tập S bao gồm các xâu s  Σℓ mà chúng ta
đang cần được bảo vệ.
2.4.1.2. NonSelf

NonSelf là tập các xâu s  Σℓ không nằm trong tập S mà bộ dò có thể
so khớp được.
2.4.1.3. Bộ dò
Bộ dò là xâu d  Σ có thể khớp được với nonself nhằm mục đích phát
hiện ra các xâu lạ trong tập S.
Bộ dò r-chunk
Một bộ dò r-chunk là một bộ (d,i) gồm một xâu d  Σr và một số
nguyên i  {1,…, ℓ–r+1}. Nó khớp được với một xâu khác s  Σℓ nếu
s[i,…,i+r –1] = d.
Bộ dò r-contiguous
Một bộ dò r-contiguous là một xâu d Σℓ. Nó khớp được với một xâu
khác s  Σℓ nếu có một i  {1,…,ℓ – r + 1} với d[i,…,i + r – 1]=s[i,…,i+r–1].
2.4.1.4. Tập bộ dò ChunkD(S, r) và ContD(S, r)
Cho một tập xâu kí tự S  Σℓ và một số nguyên r{1,…,ℓ}, ChunkD(S,
r) là tập hợp các bộ dò r-chunk không khớp được với bất kỳ xâu nào trong S
và ContD(S, r) là tập các bộ dò r-contiguous không khớp được với bất kỳ xâu
nào trong S.
Ví dụ 2.1. Cho S = {s1 = 00110; s2 = 00111; s3 = 00000;s4 = 00010; s5 =
00011; s6 = 10000; s7 = 11000}  {0,1}5, với l=5, r=3.
Khi đó:
 ChunkD(S, 3)= D1D2D3 gồm 12 bộ dò loại 3-chunk:
D1 = {(010,1), (011,1), (101,1), (111,1)}
D2 = {(010,2), (101,2), (110,2), (111,2)}
D3 = {(001,3), (100,3), (101,3)}
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN





×