Các dịch vụ dựa trên vị trí r đời đ th y đổi đáng kể chất lượng và số lượng dịch vụ thông minh cung cấp cho người dùng, nhưng đồng thời cũng làm nảy sinh nhiều vấn đề liên u n đến bảo mậ
Trang 1TRƯỜNG ĐẠI HỌC BÁCH KHOA
NGÔ CHẤN NAM
ĐỀ TÀI LUẬN VĂN THẠC SĨ KẾT HỢP ĐẶC TÍNH ĐỊA LÝ TRONG BẢO VỆ
TÍNH RIÊNG TƯ CHO NGƯỜI DÙNG LBS
Geographic based privacy preserving in location-based
services (LBS)
Chuyên ngành: Khoa học máy tính
LUẬN VĂN THẠC SĨ
Tp Hồ Chí Minh – Tháng 12 năm 2012
Trang 2CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI TRƯỜNG ĐẠI HỌC BÁCH KHOA –ĐHQG -HCM
Cán bộ hướng dẫn khoa học: PGS TS Đặng Trần Khánh Cán bộ chấm nhận xét 1: TS Nguyễn Thanh Bình
Xác nhận của Chủ tịch Hội đồng đánh giá LV và Trưởng Khoa quản lý chuyên ngành sau khi luận văn đã được sửa chữa (nếu có)
CHỦ TỊCH HỘI ĐỒNG TRƯỞNG KHOA KH & KT MÁY TÍNH
Trang 3ĐẠI HỌC QUỐC GIA TP.HCM
TRƯỜNG ĐẠI HỌC BÁCH
KHOA
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT
NAM Độc lập - Tự do - Hạnh phúc
NHIỆM VỤ LUẬN VĂN THẠC SĨ
Họ tên học viên: Ngô Chấn Nam MSHV : 10070488 Ngày, tháng, năm sinh: 05/08/1987 Nơi sinh: Tp HCM Chuyên ngành: Khoa Học Máy Tính Mã số : 604801
I TÊN ĐỀ TÀI: KẾT HỢP ĐẶC TÍNH ĐỊA LÝ TRONG BẢO VỆ TÍNH RIÊNG
TƯ CHO NGƯỜI DÙNG LBS (Geographic based privacy preserving in based services)
location-II NHIỆM VỤ VÀ NỘI DUNG:
- Tìm hiểu các kiến thức về các dịch vụ dựa trên vị trí - Tìm hiểu vấn đề bảo vệ tính riêng tư trong các dịch vụ dựa trên vị trí và xác
định phạm vi vấn đề cần giải quyết - Nghiên cứu và đề xuất một giải pháp bảo vệ tính riêng tư cho vấn đề xác
định ở mục trên
III NGÀY GIAO NHIỆM VỤ: 04/07/2011 IV NGÀY HOÀN THÀNH NHIỆM VỤ: 23/11/2012 V CÁN BỘ HƯỚNG DẪN: PGS TS Đặng Trần Khánh
Tp HCM, ngày 24 tháng 12 năm 2012
CÁN BỘ HƯỚNG DẪN CHỦ NHIỆM BỘ MÔN ĐÀO TẠO
PGS TS ĐẶNG TRẦN KHÁNH PGS TS ĐẶNG TRẦN KHÁNH TRƯỞNG KHOA KHOA HỌC & KĨ THUẬT MÁY TÍNH
PGS.TS THOẠI NAM
Trang 4LỜI CẢM ƠN
Trong suốt uá tr nh học tập và hoàn thành luận văn này, t i đ nhận được sự hướng dẫn, gi p đ u áu củ các thầy c , các nh chị, các m và các ạn Với l ng kính trọng và iết ơn s u s c t i in được ày t lới cảm ơn ch n thành tới:
n giám hiệu, Ph ng đào tạo s u đại học, Khoa Khoa Học Kĩ Thuật Máy Tính trường Đại Học Bách Khoa – Đại Học Quốc Gia TPHCM đ tạo mọi điều kiện thuận lợi gi p đ t i trong uá tr nh học tập và hoàn thành luận văn
Trang 5TÓM TẮT LUẬN VĂN
The world of location-based services (LBS) has been becoming more diversified and
amazing with its rapid growth in recent years For mpl , “Where is the nearest
restaurant from my position?”, “How many convenient stores in the range of two kilometers around me?”, or “Notify me when I am close to my regularly visited places.” Such s rvic s, for som r sons, c n us ful to individu l, community, nd
society as well Moreover, the development has spread to many aspects in all walks of life and got powerful promotion from state-of-the-art information and communication technologies However, to receive the added values from the LBS, the user also has to give his location information to LBS in return In this situation, the user cannot feel comfortable using the LBS, since he does not know if his location information, which is private information of him, is revealed or misused without his acknowledgement Furthermore, the location information may indirectly reveal other private information, leads to other privacy violations, such as identity, preferences, hobbies, etc For instance, an attacker can possibly infer or derive sensitive information such as the fact that the user is having mental issues because he frequently visits the psychiatric hospital or psychology center Even worse, a malicious attacker can make the best advantage of his position to know where he currently is or was and then make harm against him Thus, LBS users are not willing to use such services This acts as a roadblock and does harm to the development of LBS Thus, privacy aware nearest-neighbor query processing that handles cloaked regions has gained much attention and effort from researchers However, the state-of-the-art private query processors only focus on dealing with rectangular cloaked region, while failing to provide efficient and scalable algorithm for other complicated cloaked region shapes, such as polygonal and circular regions To address that problem, we introduce a new location privacy aware nearest-neighbor query processor that can efficiently handle complicated polygonal and circular cloaked regions, by proposing the Vertices Reduction Paradigm Furthermore, we provide a new tuning parameter to achieve better trade-off between answer optimality and system scalability Finally, experimental results show that our new query processing algorithm outperforms previous works in terms of both processing time and system scalability
Dịch vụ dựa trên vị trí phát triển ngày một mạnh mẽ, đ đ m lại nhiều tiện nghi cho cuộc sống hàng ngày của mọi người Tuy nhiên, để sử dụng dịch vụ dựa trên vị trí, người dùng v h nh chung đ chấp nhận tiết lộ và chia sẻ thông tin vị trí cho các hệ thống dịch vụ dựa trên vị trí Điều này vi phạm tính riêng tư về mặt vị trí củ người dùng, từ vị trí đ , những kẻ tấn công có thể suy diễn ra nhiều th ng tin như hành vi, công việc, thói quen, tình trạng sức kh e củ người dùng, tệ hơn, người dùng có thể bị gây hại bởi những th ng tin đ Đứng trước yêu cầu về tính riêng tư trên, nhiều nhóm đ nghiên cứu và phát triển các giải thuật chuyển đổi vị trí chính xác củ người dùng
Trang 6thành một hình dạng tổng uát hơn, những giải thuật đ được gọi chung là giải thuật làm mờ Kèm theo sự phát triển của các giải thuật làm mờ là sự phát triển song song của các giải thuật xử lý truy vấn riêng tư dựa trên vùng mờ Tuy nhiên, các giải thuật xử lý truy vấn riêng tư ch chủ yếu tập trung vào giải quyết các hình dạng đơn giản như h nh chữ nhật Khi kết hợp các đặc tính địa lý và ngữ nghĩ vào giải thuật làm mờ, hình dạng của vùng làm mờ trở nên phức tạp và đ dạng hơn, các giải thuật xử lý truy vấn riêng tư dựa trên vùng mờ hiện n y chư đáp ứng hoặc chư đáp ứng tốt việc xử lý các hình học phức tạp đ
Trước yêu cầu trên, luận văn này sẽ nghiên cứu và đề ra một giải pháp cho việc xử
lý tốt và hiệu quả các hình dạng phức tạp của vùng làm mờ
Nội dung của cuốn luận văn được tr nh ày như s u:
Chương 1: giới thiệu về đề tài, mục tiêu củ đề tại Chương 2: tr nh ày các cơ sở lý thuyết liên u n đến đề tài như: các dịch
vụ dựa trên vị trí, phân loại các dịch vụ dựa trên vị trí, tính riêng tư dựa trên vị trí và chính sách riêng tư
Chương 3: trình bày các nghiên cứu có liên quan bao gồm các giải thuật
làm mờ, các bộ xử lý truy vấn bảo vệ tính riêng tư
Chương 4: viết về hướng tiếp cận cũng như cách giải quyết vấn đề kết hợp
đặc tính địa lý trong bảo vệ tính riêng tư cho các dịch vụ LBS của luận văn này
Chương 5: các đánh giá nhằm chứng minh giải pháp mà luận văn này đề
Trang 7LỜI CAM ĐOAN
T i in c m đo n kết quả trong luận văn này là c ng tr nh nghiên cứu của tôi, các số liệu, kết quả nêu trong luận văn là trung thực và chư được công bố trong các công trình khác
Học Viên Cao Học
NGÔ CHẤN NAM
Trang 8MỤC LỤC
LỜI CẢM ƠN 4
TÓM TẮT LUẬN VĂN 5
LỜI CAM ĐOAN 7
Chương 1 Giới thiệu đề tài 12
1.1 Mục tiêu nghiên cứu 13
Chương 3 Các công trình nghiên cứu liên quan 21
3.1 Các kĩ thuật làm mờ vùng không gian 21
3.1.1 Làm mờ định danh 21
3.1.2 Làm mờ vị trí 26
3.2 Bộ xử lý truy vấn kết hợp tính riêng tư 31
3.2.1 Truy vấn riêng tư và truy vấn công cộng 31
3.2.2 Các phương pháp ử lý truy vấn 32
Chương 4 Kết hợp đặc tính địa lý trong bảo vệ tính riêng tư cho người dùng LBS 43
4.1 Các loại hình dạng hình học của vùng mờ 43
4.2 Vấn đề xử l h nh đ giác phức tạp của vùng làm mờ có kết hợp đặc tính địa lý 45
4.3 Vertices-Reduction P r gigm: Phương pháp thu giảm đ nh 47
4.3.1 Giải thuật thu giảm đ nh cho đ giác 48
4.3.2 Giải thuật thu giảm đ nh cho hình tròn 51
4.3.3 Vertices-R duction P r gigm: Phương pháp thu giảm đ nh 53
4.3.1 Direct Vertices-R duction P r gigm: Phương pháp thu giảm đ nh trực tiếp 53
4.3.2 Bouding Vertices-Reduction Par gigm: Phương pháp thu giảm đ nh bao ngoài564.4 Tối ưu h hệ thống 59
4.5 Group E cution Ag nt: Phương pháp gom nh m truy vấn 60
Chương 5 Thí nghiệm đánh giá 64
Trang 9Chương 6 Tổng kết và hướng phát triển 67
6.1 Tổng kết 67
6.2 Hướng phát triển 67
TÀI LIỆU THAM KHẢO 69
PHỤ LỤC 72
1 Dang, T K., Phan, T N., Ngo, C N and Ngo, N N M 2012 An open design
privacy-enhancing platform supporting location-based applications In
Proceedings of the 6th International Conference on Ubiquitous Information Management and Communication, February 20-22, 2012, Kuala Lumpur,
Malaysia, 1-10
2 Ngo, C N and Dang, T K 2013 On Efficient Processing of Complicated
Cloaked Regions for Location Privacy Aware Nearest-Neighbor Queries In
Proceedings of Information & Communication Technology-EurAsia Conference 2013, 25-29 March, 2013, LNCS, Springer-Verlag, Yogyakarta,
Indonesia
Trang 10Hình 1: Location Based Service là tập con của Context Aware Service 14
Hình 2: Sự đa dạng của LBS 15
Hình 3: Minh họa giải thuật Interval Cloak [13] 22
Hì 4: Tr ờng hợp ời dùng phân bố rời rạc trong không gian [13] 22
Hình 5: Cấu trúc kim tự tháp và bả băm tr Ca per [19] 23
Hình 29: Truy vấ r ê t trê dữ liệu công cộng [5] 40
Hình 30: Truy vấn công cộng trên dữ liệu r ê t [5] 41
Hình 31: Truy vấ r ê t trê dữ liệu r ê t [5] 42
Hình 44: Thu giảm đỉnh cho hình tròn 52
Hình 45: Giá trị ɛ ả ở đ n mức độ thu giảm 52
Hình 46: Tìm bộ lọc r ê t và ì trò 52
Hì 47: P ơ p p t u ảm đỉnh trực ti p 53
Trang 11Hình 48: Chỉnh sửa c đ ều kiện Trivial Edge 55
Hình 49: Chỉnh sửa c đ ều kiện Trivial Split-Point 55
Hình 50: Chỉnh sửa cho truy vấn trên dữ liệu r ê t 56
Hình 57: Thời gian xử lý cho truy vấ r ê t trê dữ liệu công cộng 64
Hì 58: Kíc t ớc tập ứng viên cho truy vấ r ê t trê dữ liệu công cộng 65
Hình 59: Thời gian xử lý cho truy vấ r ê t trê dữ liệu r ê t 65
Hì 60: Kíc t ớc tập ứng viên cho truy vấ r ê t trê dữ liệu r ê t 66
Trang 12C ơ 1 Giới thiệu đề tài
Khoa học kĩ thuật ngày một phát triển, với sự phát triển mạnh mẽ của hệ thống định vị (GPS, G oLoc tion, …), hệ thống truyền tải không dây (3G, 4G) và thiết bị thông minh (Android, iPhon , Windows Phon , …), các dịch vụ được cung cấp cho người dùng cũng trở nên đ dạng (th o u hướng S S, Softw r s S rvic s), đặc biệt là các dịch vụ dựa trên vị trí (Location based Service – LBS)
Những dịch vụ dựa trên vị trí là những dịch vụ đ m lại tiện ích cho người dùng tận dụng thông tin về vị trí của họ, bằng cách kết hợp chức năng định vị của các thiết bị khả định vị cá nh n (như điện thoại thông minh), hệ thống truyền tải không dây và hệ thống th ng tin để cung cấp dịch vụ cá nhân hóa dựa trên vị trí củ người dùng Ví dụ của dịch vụ dựa trên vị trí có thể đơn giản như iển ch đường đ c từ rất lâu, cho đến một dịch vụ khẩn cấp như gọi xe cấp cứu gần nhất đến vị trí của một người dùng khi xe của họ gặp tai nạn giao thông, hoặc hệ thống quảng cáo gửi tin khuyến m i đến các hơi trong v ng án kính 1 dặm của siêu thị, h y hướng dẫn giao thông – cảnh báo k t xe trong vòng 10 phút kế tiếp, … Một cách vô tình hay hữu , người dùng có thể sẵn sàng cung cấp các thông tin riêng tư như định danh, tên, tuổi, hay vị trí để được sử dụng các dịch vụ dựa trên vị trí này
Các dịch vụ dựa trên vị trí r đời đ th y đổi đáng kể chất lượng và số lượng dịch vụ thông minh cung cấp cho người dùng, nhưng đồng thời cũng làm nảy sinh nhiều vấn đề liên u n đến bảo mật (security) và tính riêng tư (priv cy), c nghĩ là (1) trong quá trình sử dụng hoặc cung cấp dịch vụ, người dùng hay nhà cung cấp dịch vụ có thể để lộ thông tin mật (confidential), nhạy cảm (sensitive), hoặc riêng tư (priv t ) của người dùng, (2) h y là s u đ , dựa trên lịch sử vị trí (location history) có thể tính toán, dự đoán được thói quen, sở thích (preference) củ người dùng [28] Việc bảo vệ tính riêng tư cho người dùng dịch vụ LBS là rất quan trọng đối với sự phát triển của ngành dịch vụ này
Việc bảo vệ tính riêng tư cho người dùng dịch vụ L S đ thu h t sự nghiên cứu và phát triển từ nhiều nhóm nghiên cứu, một phương pháp hiển nhiên để bảo vệ tính riêng tư củ người dùng là loại b kh i câu truy vấn dịch vụ bất kì dữ liệu nào có thể làm lộ th ng tin riêng tư, c thể bằng cách sử dụng một định danh giả (pseudonym), tuy nhiên, trong câu truy vấn dịch vụ vẫn có thể tồn tại các thông tin về ngữ cảnh (thời gi n, đị điểm) có thể giúp cho kẻ tấn công giới hạn được người dùng trong một nhóm nh , hoặc phát hiện chính ác định d nh người dùng khi kết hợp với các kiến thức bên ngoài Vì thế bên cạnh việc bảo vệ định danh, ta phải đồng thời bảo vệ các thông tin nhạy cảm có thể dẫn đến việc kẻ tấn công phát hiện được người dùng, ta gọi các thông tin nhạy cảm đ là tự định danh (quasi identifier) [4]
Trang 131.1 Mục tiêu nghiên cứu
Để bảo vệ tính riêng tư cho người dùng dịch vụ LBS, ngoài các phương pháp bảo mật [12, 17, 31], ta còn có thể sử dụng các phương pháp dùng vùng làm mờ chuyển đổi vị trí chính xác củ người dùng thành một vùng không gian bằng phương pháp làm mờ không hoặc thời gian (spatial or temporal cloaking techniques) [1, 2, 6, 8, 11, 13, 16, 19, 24, 25, 26, 27] S u đ kết quả làm mờ sẽ được chuyển đến nhà cung cấp dịch vụ dựa trên vị trí Tại nơi đ , các truy vấn dịch vụ sẽ được xử lý và trả ra tập kết quả [5, 9, 11, 15, 16, 19, 23] Tập kết quả s u đ sẽ được chuyển về cho người dùng (trong kiến trúc không cộng tác hoặc ngang hàng) hoặc cho bên trung gi n đáng tin cậy (trong kiến trúc cộng tác) và tập kết quả sẽ được lọc để có kết quả chính ác cho người dùng
Các kĩ thuật xử lý truy vấn dựa trên vùng làm mờ đ thu h t nhiều nhóm phát triển và nghiên cứu, nhưng mỗi kĩ thuật xử lý truy vấn ch xử lý một loại hoặc nhóm hình học không gi n, đồng thời các kĩ thuật xử lý truy vấn chư kết hợp được đặc tính địa lý của vùng không gian làm mờ trong quá trình xử lý truy vấn Mục tiêu nghiên cứu của đề tài này là tìm cách kết hợp đặc tính địa lý của vùng không gian làm mờ trong quá trình xử lý truy vấn
Với người dùng, tính riêng tư của họ được bảo vệ trong khi dịch vụ vẫn cung cấp cho họ sự tiện lợi
Với nhà cung cấp dịch vụ, đ y là nền tảng để họ cung cấp dịch vụ dựa trên vị trí một cách hiệu quả nhưng vẫn đảm bảo n toàn tính riêng tư cho người dung
Hai yếu tố trên kết hợp sẽ tạo tiền đề th c đẩy và kích thích sự phát triển của dịch vụ LBS
Trang 14C ơ 2 Cơ ở lý thuy t
2.1 Dịch vụ dựa trên vị trí
2.2.1 Đị a
Hình 1: Location Based Service là tập con của Context Aware Service
Dịch vụ dựa trên vị trí là một tập con của dịch vụ dựa trên ngữ cảnh (context aware service) Dịch vụ dựa trên vị trí là một dịch vụ của truyền th ng di động trong nhiều năm, nhưng vẫn chư c một định nghĩ h y thuật ngữ chung nhất dành cho nó, có nhiều thuật ngữ ch loại dịch vụ này như: dịch vụ dựa trên vị trí (location based service), dịch vụ ý thức vị trí (location aware service), dịch vụ liên quan vị trí (location related service), và dịch vụ vị trí (location service) Nguyên nhân chính là do các định nghĩ và thuật ngữ được đư r ởi nhiều cộng đồng khác nh u, đặc biệt là ngành viễn thông (telecommunication) và tính toán ubiquitous (ubiquitous computing, ubicomp, tạm dịch là tính toán mọi nơi, ch việc xử lý thông tin được tích hợp vào các vật dụng hằng ngày củ con người) [18]
Tổ chức GSM đư r định nghĩ “L Ss s s rvic s th t us th loc tion of th t rg t for dding v lu to th s rvic , wh r th t rg t is th “ ntity” to loc t d ( nd this entity is not n c ss rily lso th us r of th s rvic )”, tạm dịch “dịch vụ dựa trên vị trí là những dịch vụ sử dụng vị trí củ đối tượng để tăng thêm giá trị dịch vụ, trong đ đối tượng là thực thể được ác định vị trí (và thực thể này không nhất thiết phải là người sử dụng dịch vụ)” Năm 2003, tổ chức GSM đư r 3 ví dụ cho ví dụ cho việc tăng giá trị dịch vụ bằng việc lọc thông tin (dựa trên vị trí của thực thể), hiển thị đối tượng trên bản đồ, hoặc kích hoạt hay kết thúc dịch vụ khi đối tượng ước vào hoặc rời kh i một vùng định sẵn [18]
Tổ chức 3rd G n r tion P rtn rship Proj ct (3GPP) định nghĩ “ n L S is s rvic provided by a service provider that utilizes the avail-able location information of the
Trang 15t rmin l (3GPP TS 23.271)”, tạm dịch “dịch vụ dựa trên vị trí là dịch vụ được cung cấp bởi một nhà cung cấp dịch vụ tận dụng các thông tin vị trí có thể có của các thiết bị đầu cuối” Tổ chức 3GPP phân biệt LBS với dịch vụ vị trí (location service), trong đ dịch vụ vị trí tập trung vào vấn đề đị phương h củ đối tượng [18]
2.2.2 Phân loại
Hình 2: Sự đa dạng của LBS
Phân loại theo chức năng, các dịch vụ dựa trên vị trí rất đ dạng, bao gồm nhiều hạng mục [28], như miêu tả trong hình 2
Hệ thống dẫ đ ờng: dẫn đường cho h y người đi ộ trong giao thông
đường bộ từ một điểm nguồn (vị trí hiện tại) đến một điểm đích (nơi người dùng muốn đến), hay dẫn đường trong một tòa nhà hoặc khuôn viên lớn, từ phòng khu vực hiện tại sang một khu vực khác đ ng c nhu cầu, t m i đỗ xe gần một thương á, hoặc điều phối giao thông trong thành phố (hệ thống dẫn đường sẽ giải quyết vấn đề ách t c giao thông)
Hệ thống thông tin: tìm cử hàng, thương á gần nhất có dịch vụ mà người
dùng cần, như cà phê, nhà hàng, thương á … Ngoài ra có thể có thông tin du lịch, hướng dẫn tham quan (dịch vụ sẽ tạo ra một lộ trình tham quan dựa trên vị trí) Đ y loại dịch vụ đơn giản nhất và phổ biến nhất, cung cấp cho người dùng các đị điểm mà người dùng quan tâm (Point of Interest) ở gần vị trí củ người dùng như nhà hàng, ATM, trạm ăng …, dịch vụ này có thể được m như những trang vàng (Yellow Pages) mở rộng, thông minh dựa trên vị trí
Trang 16 Hệ thống theo dấu: một hãng taxi có nhu cầu theo dấu các taxi củ h ng đ ,
thu thập các thông tin về vị trí đỗ xe, số lượt khách tại đ , lộ trình di chuyển của các taxi của hãng, hãng taxi muốn phân phối taxi hợp lý trong thành phố, hay bố m theo dấu trẻ em (vị trí hiện tại, những nơi ch ng đ đi u , thời gian …), …
Hệ thố trò c ơ : trong tr chơi trực tuyến kết hợp với dịch vụ dựa trên vị trí,
người dùng có thể tìm bạn đ ng ở gần mình, hoặc tìm một đối thủ đ ng đi trên cùng một chuyến tàu h …
Hệ thống quảng cáo: người dùng có thể đăng kí nhận khuyến m i điện tử từ
các nhà hàng, trạm ăng, thương á, s u đ khi người dùng ước vào các khu vực lân cận các điểm đ , người dùng sẽ nhận được thông tin khuyến m i, …
Hệ thống khẩn cấp: người dùng khi gặp nguy hiểm có thể thông qua dịch vụ
dựa trên vị trí để cầu cứu, gửi kèm vị trí của mình (nhanh, chính xác), ví dụ như yêu cầu xe cấp cứu gần vị trí mình nhất khi người dùng gặp tai nạn giao thông (có thể được tự động kích hoạt bởi bộ điều khiển tự động của xe khi gặp tai nạn)
Hệ thống thu phí: chính phủ hay cá nhân có thể tự động thu phí giao thông
khi xe vào quốc lộ, h y vườn thú có thể tự động thu phí tham quan khi du khách vào vườn thú quốc gia …
Hệ thống quản lý: chính phủ hay một công ty, tập đoàn th ng u dịch vụ này
có thể quản lý vị trí và lộ trình của các tài sản di động như cảnh sát, xe vận chuyển, xe cho thuê, nhân viên …
Mạng xã hội dựa trên vị trí: mạng xã hội kết hợp với dịch vụ dựa trên vị trí
có thể cho người dùng biết người bạn gần mình nhất đ ng ở đ u, s u đ kết hợp thông tin vị trí để đề nghị điểm gặp mặt hợp lý …
Các dịch vụ dựa trên vị trí r đời đ th y đổi đáng kể chất lượng và số lượng dịch vụ thông minh cung cấp cho người dùng, nhưng đồng thời cũng làm nảy sinh nhiều vấn đề liên u n đến bảo mật (security) và tính riêng tư (priv cy), c nghĩ là (1) trong quá trình sử dụng hoặc cung cấp dịch vụ, người dùng hay nhà cung cấp dịch vụ có thể để lộ thông tin mật (confidential), nhạy cảm (sensitive), hoặc riêng tư (priv t ) của người dùng, (2) h y là s u đ , dựa trên lịch sử vị trí (Location History) có thể tính toán, dự đoán được thói quen, sở thích (preference) củ người dùng
Phân loại theo loại hình dịch vụ, có nhiều hạng mục dịch vụ dựa trên vị trí, nhưng t có thể phân loại thành 3 nhóm chính [32]
Position awareness: ch các thiết bị hoạt động dựa trên vị trí như hệ thống dẫn
đường, định vị nhưng dùng trong nội bộ hệ thống (không cần nhà cung cấp dịch vụ), nguy cơ vi phạm tính riêng tư rất thấp
Trang 17 Spordic queries: ch các dịch vụ đáp ứng khi người dùng yêu cầu, người dùng
sẽ truyền tải vị trí của họ, và dự trên đ , dịch vụ được đáp ứng, như dịch vụ tìm kiếm nhà hàng m n ăn Pháp gần nhất, nguy cơ vi phạm tính riêng tư ở mức trung bình
Location tracking: khi người dùng đăng kí dịch vụ này, vị trí củ người dùng
sẽ được cung cấp cho nhà cung cấp dịch vụ th o chu k , như dịch vụ theo dấu và điều phối xe taxi, nguy cơ vi phạm tính riêng tư rất cao
Một cách phân loại khác của các dịch vụ dựa trên vị trí là ta có thể phân chia các dịch vụ thành 2 nhóm chính: reactive và proactive [18]
Reactive: dịch vụ được kích hoạt tường minh bởi người dùng, đầu tiên người
dùng khởi động dịch vụ, thiết lập kết nối dịch vụ thông qua thiết bị di động hoặc máy tính cá nh n, s u đ người dùng yêu cầu dịch vụ, dịch vụ sẽ thu thập thông tin về vị trí củ người dùng và đáp ứng yêu cầu dịch vụ dựa trên vị trí củ người dùng, ví dụ như dịch vụ tìm các nhà hàng món Pháp gần vị trí của người dùng Quá trình yêu cầu, đáp ứng này có thể lặp lại nhiều lần trước khi kết thúc kết nối dịch vụ
Proactive: dịch vụ được tự động kích hoạt (trước đ người dùng đ đăng kí
dịch vụ) khi một sự kiện xảy r , như người dùng ước vào hoặc ra kh i một vùng không gian ch định trước, ví dụ như dịch vụ gửi khuyến m i đến các xe hơi trong án kính 1 dặm của trạm ăng (người dùng đ đăng kí dịch vụ nhận khuyến m i điện tử) hoặc dịch vụ gửi tin hướng dẫn đối với các du khách khi họ ở gần điểm tham quan
Dịch vụ reactive ch yêu cầu vị trí củ người dùng một lần, trong khi dịch vụ proactive phải luôn theo dấu vị trí để ác định sự kiện c được kích hoạt hay không
2.2 Tính riêng tư
2.2.1 Đị a
Tính bảo mật và tính riêng tư là h i mặt quan trọng trong việc bảo vệ dữ liệu [18] Trong đ , ảo mật đề cập đến tính bí mật, toàn v n, sẵn sàng của dữ liệu Về tính riêng tư, năm 1968, Westin [29] đ định nghĩ “Priv cy is th cl im of individuals, groups, and institutions to determine for themselves, when, how, and to wh t t nt inform tion out th m is communic t d to oth rs”, tạm dịch là “tính riêng tư ác định khi nào, bằng cách nào và đến mức độ nào có thể chuyển giao thông tin cá nh n cho người khác trong giao tiếp” Trong định nghĩ này, thông tin cá nhân có thể là định danh, tên tuổi, vị trí, lộ trình di chuyển … củ người dùng
Từ định nghĩ trên, tính riêng tư o gồm bốn yêu cầu [18]:
Trang 18 Tính nặc danh (Anonymity) cho phép người dùng có thể không tiết lộ định
danh khi sử dụng dịch vụ dựa trên vị trí hoặc khi thiết lập kết nối với các người dùng khác nhằm bảo vệ định danh của mình
Tính biệt lập (Solitude) nói rằng người dùng có quyền được bảo vệ kh i các
hành vi tấn c ng, gián đoạn hay theo dấu
Tính thân mật (Intimacy) là quyền củ người dùng trong quyết định với ai, ở
mức độ nào, và khi nào tương tác với dịch vụ
Tính bảo toàn (R s rv ) cho phép người dung có quyền quyền được tự do
n m giữ th ng tin riêng tư của mình và quyền quyết định khi nào cung cấp nó Trong bảo mật, tính bí mật được giải quyết bằng điều khiển truy xuất và xác thực, toàn v n dữ liệu được giải quyết bằng chữ kí điện tử và kiểm tra toàn v n ngữ nghĩ , và phương pháp phục hồi dữ liệu đảm bảo tính sẵn sàng
Trong tính riêng tư, dữ liệu riêng tư đặc biệt hơn, cần đến các phương pháp ảo vệ uyển chuyển hơn, trong đ , một cách để bảo vệ tính riêng tư là tích hợp kĩ thuật bảo vệ tính riêng tư vào trong các kĩ thuật điều khiển truy xuất, nghĩ là tính riêng tư được bảo đảm thông qua việc bảo vệ dữ liệu nhạy cảm bằng điều khiển truy xuất, hoặc thông qua các giải thuật biến đổi vị trí
2.2.2 Phân loại
Trong dịch vụ dựa trên vị trí, th ng tin riêng tư phổ biến là định danh, vị trí, lộ trình di chuyển củ người dùng, từ đ t c thể phân loại tính riêng tư thành 3 loại: [2]
Tí r ê t về định danh (Identity Privacy) bảo vệ định danh củ người
dùng có thể bị khai thác trực tiếp hoặc suy ra từ thông tin vị trí Để đạt được mục tiêu, các kĩ thuật bảo vệ giới hạn đến mức tối thiểu các thông tin tự định danh có thể giúp kẻ tấn c ng suy r định d nh người dùng, như địa ch nhà hay địa ch cơ u n Loại hình bảo vệ này thích hợp cho các dịch vụ dựa trên vị trí không cần u n t m đến định danh củ người dùng (không cần xác thực người dùng, …), ví dụ như hệ thống dẫn đường, hệ thống th ng tin t m đị điểm gần nhất, hệ thống quảng cáo, …
Tí r ê t về vị trí (Position Privacy) bảo vệ thông tin về vị trí củ người
dùng, có thể bằng cách làm mờ (pertubation, làm sai lệch) hoặc làm giảm độ chính xác của thông tin về vị trí củ người dùng, loại hình bảo vệ này thích hợp cho các dịch vụ dựa trên vị trí cần xác thực người dùng, như mạng xã hội dựa trên vị trí, hoặc các dịch vụ mật trong một nhà máy sản xuất
Tí r ê t về đ ờ đ (Path Privacy) bảo vệ thông tin g n liền với sự di
chuyển củ người dùng, như lộ trình di chuyển củ người dùng trong thành phố, một vài hệ thống dịch vụ dựa trên vị trí có thể bị lợi dụng bởi kẻ tấn công, thu thập lộ trình di chuyển củ người dùng và suy r định danh, sở thích, thói
Trang 19quen củ người dùng Tính riêng tư về đường đi phức tạp hơn so với 2 loại tính riêng tư về định d nh và tính riêng tư về vị trí
Ngoài ra, nhóm nghiên cứu trong công trình [6] c n đề cập đến tính riêng tư về nội dung truy vấn ( u ry priv cy), trong đ t ảo vệ tính riêng tư về thông tin nội dung truy vấn dịch vụ dựa trên vị trí Trong nhiều trường hợp, người dùng có thể b t buộc hoặc tự nguyện tiết lộ thông tin về vị trí củ m nh, nhưng không muốn tiết lộ thông tin về nội dung truy vấn dịch vụ dựa trên vị trí, như dịch vụ vận chuyển phải theo dấu nhân viên vận chuyển nhằm tìm nhân viên vận chuyển gần một đị điểm của khác hàng để nhận gói hàng, nhân viên này buộc phải tiết lộ thông tin vị trí của mình, nhưng họ không muốn tiết lộ thông tin về nội dung truy vấn dịch vụ của họ, …
Do đ , t c thể thấy, cùng với việc bảo mật dữ liệu, ngày nay, vấn đề bảo mật tính riêng tư cũng đ trở thành một mặt quan trọng trong việc bảo vệ dữ liệu
2.2.3 Chính sách về tí r ê t
Theo Cuellar [7], chính sách về tính riêng tư là sự xác nhận một lượng thông tin nhất định (định d nh h y định danh và vị trí) có thể được tiết lộ cho một thực thể nhất định (hoặc nhóm thực thể) khi th a mãn các ràng buộc đặt ra Ví dụ:
Vợ t i được biết thành phố t i đ ng ở
Cấp trên của tôi tự động theo dấu vị trí chính xác của tôi khi và ch khi: (1) trong giờ làm việc và (2) t i đ ng trong c ng ty hoặc (3) đ ng àn c ng việc ở c ng ty đối tác
Ngoài giờ làm việc, cấp trên ch được biết vị trí của tôi khi (1) có yêu cầu tường minh và (2) yêu cầu đ được tôi chấp nhận
Thành viên của cộng đồng mà t i th m gi được nhận vị trí của tôi thông qua dịch vụ tìm bạn vào cuối tuần
Ví dụ trên minh họ cho tính đ dạng về mặt ràng buộc mà một chính sách riêng tư c thể c , u đ cung cấp một cái nhìn tổng uát cho chính sách riêng tư củ người dùng Các ràng buộc có thể c cho tính riêng tư o gồm: [18]
Ràng buộc đố t ợng (actor constraint) giới hạn quyền truy cập thông tin vị trí
cho một tập các đối tượng
Ràng buộc dịch vụ (service constraint) giới hạn tập hoặc loại dịch vụ dựa trên
vị trí được phép hoặc cấm truy xuất thông tin về vị trí củ người dùng
Ràng buộc thời gian (time constraint) giới hạn việc truy xuất thông tin vị trí
củ người dùng trong một khoảng thời gian nhất định, có thể là ác định trước hoặc kích hoạt tường minh
Ràng buộc vị trí (location constraint) giới hạn việc truy xuất thông tin vị trí
củ người dùng trong một vùng ch định trước
Trang 20 Ràng buộc thông báo (notification constr int) cho phép người dùng quyết
định nhận thông báo về việc truy xuất thông tin vị trí, từ đ chấp nhận hoặc từ chối truy xuất
Ràng buộc độ chính xác ( ccur cy constr int) cho phép người dùng làm giảm
độ chính xác của thông tin về vị trí khi chuyển cho đối tượng khác
Ràng buộc định danh (id ntity constr int) cho phép người dùng quyết định
dùng định danh giả hoặc kh ng c định danh khi chuyển thông tin về vị trí cho các đối tượng khác
Trang 21C ơ 3 Các công trình nghiên cứu liên quan
Các kĩ thuật làm mờ vùng không gian (spatial cloaking) là các kỹ thuật chuyển đổi vị trí chính xác củ người dùng thành một vùng làm mờ A có hình dạng hình học tổng uát hơn 1 điểm chính xác củ người dùng Trong đ t ph n thành 2 nh m chính: (1) làm mờ định danh (k-anonymity cloaking) chủ yếu dựa trên khái niệm k nặc danh, không phân biệt được k người dùng trong vùng không gian làm mờ và (2) làm mờ vị trí (loc tion o fusc tion), trong đ t kh ng ác định được người dùng ở vị trí nào trong vùng làm mờ
3.1.1 Làm mờ định danh
3.1.1.1 Thuật toán Interval Cloak
Interval Cloak [13], dựa trên cây tứ phân (Quad Tree), bằng cách chi đệ quy không gian thành 4 phần cho đến khi các điểm trong phần tư chứ được trong một nút hoặc một trang dữ liệu
Giải thuật Interval Cloak
Initialize the quadrants q and qprev as the total area covered by the anonymizer
Initialize a traffic vector with the current positions of all known vehicles
Initialize p as the position of requestor vehicle If the number of vehicles in traffic vector < kmin, then return the previous quadrant qprev
Divide q into quadrants of equal size Set qprev to q
Set q to the quadrant that includes p Remove all vehicles outside q from the traffic vector Repeat from Step 2
Bảng 1: Mã giả Interval Cloak [13]
Bảng 1 ở trên minh họa giải thuật Interval Cloak bằng mã giả, giải thuật sẽ duyệt cây tứ phân từ trên xuống để tìm vùng không gian phần tư chứ ít hơn k người dùng có chứ người dùng yêu cầu dịch vụ và trả về vùng không gian cha của vùng không gian phần tư đ , kết quả thu được là một vùng không gian phần tư chứ k người nặc danh
Trang 22hoặc hơn, người dùng không phân biệt được với k – 1 người dùng khác, như minh họa s u đ y
Hình 3: Minh họa giải thuật Interval Cloak [13]
Giải thuật này c các điểm yếu sau
Không thể dùng được nếu hệ thống c ít hơn k người dùng hoặc phân bố người dùng rời rạc, như trong h nh dưới đ y
Hình 4: Tr ờng hợp n ời dùng phân bố rời rạc trong không gian [13]
Vùng không gian làm mờ có thể rất rộng, tăng chi phí ử lý giải thuật, xử lý truy vấn, chi phí truyền tải dữ liệu, làm giảm chất lượng dịch vụ dựa trên vị trí Để giải quyết điểm yếu thứ hai, nhóm nghiên cứu [13] đ kết hợp làm mờ thời gian vào Interval Cloak, bằng cách chờ cho đến khi c k người dùng trong vùng không gian phần tư mong muốn củ người dùng trước khi gửi truy vấn dịch vụ, đánh đổi sự chính xác về thời gi n để tăng độ chính xác về không gian
3.1.1.2 Casper
Casper [19] dùng cây tứ ph n tương tự như Int rv l Clo k, nhưng ằng cách lưu trữ theo cấu trúc kim tự tháp, giải thuật này đạt được độ phức tạp tốt hơn Int rv l Cloak Casper dùng bảng ăm lưu trữ vị trí củ người dùng, do đ c thế ác định trực tiếp vị trí củ người dùng mà không cần phải duyệt cây từ trên xuống để tìm vùng không gian phần tư chứ người dùng Ngoài ra, vùng không gian phần tư sinh r rất uyển chuyển, ch ph n chi đến vùng không gian phần tư th a yêu cầu tính riêng tư k củ người dùng mà không chia nh hơn nữa
Trang 23Hình 5: Cấu trúc kim tự tháp và bả băm tr Casper [19]
Tuy nhiên Casper tốn chi phí để lưu trữ và cập nhật cấu trúc kim tự tháp trong bộ nhớ, và tương tự như Int rv l Clo k, C sp r c thể kh ng dùng được khi hệ thống ít hơn k người dùng và phân bố người dùng rời rạc
3.1.1.3 Clique Cloak
Clique Cloak [33] sử dụng đồ thị v hướng để xây dựng tập làm mờ, mỗi người dùng trong hệ thống sẽ khai báo các thông số sau:
Mức độ bảo vệ tính riêng tư k
Mức độ chính xác về không gian dx, dy tạo nên vùng R là hình chữ nhật tâm là vị trí x, y củ người dùng
Mức độ chính xác về thời gian dt
Hình 6: Clique Cloak [33]
Clique Cloak xây dựng một đồ thị v hướng G(V, E), trong đ V là tập các đ nh, mỗi đ nh đại diện cho một truy vấn dịch vụ và E là tập các cạnh, h i đ nh lân cận nhau nếu h i đ nh đ khác nh u và vùng R của mỗi đ nh có chứa lẫn nhau, giữ h i đ nh lân cận có một cạnh v hướng e thuộc E Với mỗi câu truy vấn, vùng không gian làm mờ là
Trang 24hình chữ nhật bao nh nhất chứ các đ nh lân cận với câu truy vấn đ , đồng thời tất cả câu truy vấn trong vùng làm mờ đều dùng vùng không gian làm mờ đ Trong trường hợp không thể xây dựng được tập làm mờ th a yêu cầu k (kh ng t m được tập lân cận để th a mãn k), câu truy vấn có thể chờ trong thời gi n dt để xây dựng tập làm mờ với các câu truy vấn mới
Thách thức lớn đối với giải thuật này là việc tìm tập lân cận hiệu quả th a mãn yêu cầu k, đặc biệt đối với trường hợp các câu truy vấn đến liên tục tạo nên các đ nh mới trong đồ thị, và cách ác định một cách hợp lý các thông số dx, dy, dt
3.1.1.4 Nearest Neighbour Cloak
Nearest-Neighbor Cloak [16] là phiên bản ngẫu nhiên của Center Cloak (chọn ngẫu nhiên k – 1 người dùng lân cận để tạo tập làm mờ), tuy nhiên Nearest Neighbor Cloak không bị điểm yếu là vị trí củ người dùng không tập trung ở tâm tập làm mờ (hay vùng không gian làm mờ)
Đầu tiên, với câu truy vấn U1, ta tìm k - 1 câu truy vấn lân cận để tạo tập S0, trong trường hợp này (k = 3) S0 = {U1, U2, U3}, s u đ chọn ngẫu nhiên trong S0 được U3 (với xác suất là 1/k), tìm k – 1 câu truy vấn lân cận quanh U3 tạo tập S1 = {U3, U4, U5}, tạo tập làm mờ S2 = U1 U S1 = {U1, U3, U4, U5}
Hình 7: Nearest Neighbor Cloak [16]
Giải thuật này tránh được điểm yếu của Center Cloak bởi xác suất để người dùng nằm trong tâm của vùng không gian làm mờ là 1/k Ngoài ra, vùng không gian làm mờ thu được nh hơn Int rv l Clo k và C sp r, tuy nhiên, N r st N igh or Clo k c điểm yếu khi phân bố người dùng kh ng đều, như trong h nh, nếu vùng làm mờ chứa {U1, U3, U4, U5} thì ch c ch n câu truy vấn xuất phát từ U1, vì nếu U3, U4 hay U5 truy vấn thì vùng làm mờ sẽ không chứa U1
Trang 253.1.1.5 Hilert Cloak
Int rv l Clo k, C sp r và N r st N igh or Clo k đối với mỗi câu truy vấn thuộc cùng tập làm mờ không sinh ra vùng làm mờ giống nhau, vì vậy có thể vi phạm yêu cầu riêng tư k do người dùng đặt ra Hilbert Cloak [16] giải quyết vấn đề này bằng cách đảm bảo tập làm mờ là giống nh u đối với các câu truy vấn thuộc cùng tập làm mờ Hilbert Cloak sử dụng lý thuyết đường cong Hil rt để chuyển đổi vị trí trong không gian 2 chiều củ người dùng U thành giá trị Hilbert H(U) – không gian 1 chiều, với phương pháp này, ta có thể dùng c y + để đánh ch mục vị trí củ người dùng để tăng hiệu quả của giải thuật
Hình 8: Đ ờng cong Hilbert [16]
Cho một câu truy vấn từ U, với yêu cầu tính riêng tư k, Hil rt Clo k s p xếp các giá trị theo H(U) và chia chúng vào các nhóm-k (k - buckets) Mỗi nhóm này sẽ chứa đ ng k người dùng, ngoại trừ nhóm cuối cùng, có thể chứa từ k đến (2k – 1) người dùng Với H(U) là giá trị Hilbert củ người dùng U, rank(U) là vị trí của H(U) trong cấu tr c đánh ch mục, tập làm mờ sẽ được ác định dựa trên rank(U), toàn bộ người dùng trong nhóm-k sẽ tạo thành tập làm mờ Hil rt Clo k đảm bảo yêu cầu tính riêng tư k do tất cả người dùng trong cùng một nhóm sẽ có cùng tập làm mờ Ngoài ra, giá trị yêu cầu k có thể biến động tùy th o người dùng, vì nhóm-k được sinh r động
Hình 9: k đ ợc sinh ra động trong Hilbert Cloak [16]
Trang 263.1.2 Làm mờ vị trí
3.1.2.1 Negotiation
Negotiation [11] dựa trên tính chất bất hoàn hảo (imperfection) của thông tin về vùng không gi n là kh ng chính ác (impr cis ) và kh ng đ ng (in ccur y) để làm mờ vị trí Cho một đồ thị G(V, E) đại diện cho không gian, một tập làm mờ bao gồm một tập các đ nh trong đồ thị, trong đ tập làm mờ sẽ là:
Không chính xác nếu tập làm mờ chứa nhiều hơn 1 đ nh trong đồ thị nhưng vẫn chứ đ nh c người dùng U trong đ
Kh ng đ ng nếu tập làm mờ chứa nhiều hơn 1 đ nh trong đồ thị nhưng không chứ đ nh c người dùng U trong đ
Bằng cách kết hơp tính kh ng chính ác và kh ng đ ng, tập làm mờ sinh ra chứa n đ nh (n được ác định trước, có thể m như yêu cầu k), cùng với giải thuật thương lượng, bảo vệ tính riêng tư về vị trí củ người dùng nhưng đồng thời đảm bảo chất lượng dịch vụ truy vấn
Hình 10: K ô a đồ thị [11]
3.1.2.2 Thay đổi tâm, bán kính
Ý tưởng chính của giải thuật [1] là dùng một h nh tr n t m c, án kính r để đại diện cho vị trí củ người dùng U, khi đ ác suất để bất k điểm I nào thuộc hình tròn là vị trí của U không quá 1/a, trong đ là diện tích hình tròn c bán kính r
Hình 11: T ay đổi tâm và bán kính [1]
Trang 27 Mở rộng án kính làm tăng diện tích củ h nh tr n c, án kính r’ > r, giảm xác suất để một điểm trong hình tròn là vị trí của U
Thu h p bán kính làm giảm diện tích của hình tròn c, bán kính r’’ < r, nhưng đồng thời làm cho vị trí của U có thể nằm ngoài hình tròn
Dịch chuyển t m tương tự như phương pháp thu h p bán kính, làm cho vị trí của U có thể nằm ngoài hình tròn
Ngoài ra, ta có thể kết hợp các phương pháp trên để bảo vệ tính riêng tư củ người dùng U
3.1.2.3 PROBE
Hình 12: PROBE flowchart [8]
Ý tưởng chính của PROBE [8] xuất phát từ vấn đề các giải thuật làm mờ dựa trên vùng kh ng gi n chư u n t m đến ngữ nghĩ , h y đặc tính địa lý của vùng làm không gian làm mờ Trong vùng không gian làm mờ rất có thể chứa những vùng kh ng gi n kh ng đến được, không thể chứ người dùng, do đ vùng kh ng gi n làm mờ khi bị khai thác với tri thức về đặc tính địa lý củ vùng kh ng gi n đ c thể sẽ giới hạn vị trí củ người dùng nh hơn vùng kh ng gi n làm mờ
Ví dụ, người U không muốn cho ai biết m nh đ ng ở trong bệnh viện v như thế có thể tiết lộ thông tin sức khoẻ của mình Giả sử bệnh viện nằm cạnh một hồ nước lớn và
Trang 28hồ này không thể tiếp cận được Khi đ ng ở trong bệnh viện, người U gửi yêu cầu dịch vụ lên nơi cung cấp với vị trí đ được làm mờ Vùng làm mờ này bao gồm bệnh viện và hồ nước Từ những kiến thức về địa lý và ngữ nghĩ , kẻ tấn công biết được rằng người U không thể ở hồ nước (do là nơi kh ng tiếp cận được), do đ người U ch có thể ở bệnh viện
Trong giải thuật PROBE, toàn bộ vùng không gian sẽ được chia thành 3 loại: không tiếp cận được, nhạy cảm và không nhạy cảm, trong đ nhạy cảm là các vùng mà người dùng muốn được bảo vệ tính riêng tư Người dùng sẽ khai báo thông tin các vùng nhạy cảm trong chính sách riêng tư của mình ước xây dựng một vùng làm mờ cho người dùng như s u
Khởi tạo, toàn bộ kh ng gi n được chia thành các ô nh
ác định thông số đầu vào <FTsens, FTNreac, Scor , θsens>, feature type nào là nhạy cảm (sensitive), kh ng đến được (unreachable), điểm đánh giá (score) của FT(f tur typ ) đ , giá trị ngư ng (threshold value)
Chạy thuật toán PRO E, như trong flowch rt trên Ý tưởng củ phương thức này là sẽ gom nhóm các ô lân cận lại với nhau cho tới khi tất cả các vùng đều bảo đảm được yêu cầu về bảo mật trong chính sách riêng tư, hoặc không thể gom nhóm thêm nữa (đ gom nh m toàn ộ vùng không gian)
Hình 13: K t quả vùng làm mờ của PROBE [8]
Hình 14: Ki n trúc PROBE [8]
Trang 29Kiến trúc hệ thống được phát triển dựa trên mô hình 2 lớp (2 tier, client-server), bao gồm 2 thành phần chính: [8]
Obfuscation Engine: sinh ra Obfuscated Map dựa trên đầu vào là Privacy
Profile củ người dùng và dữ liệu không gian, trong quá trình tiền xử l (trước khi người dùng thực hiện bất kì yêu cầu nào tới nhà cung cấp dịch vụ dựa trên vị trí) S u đ , O fusc t d M p được gửi trả cho người dùng và lưu trữ trực tiếp trên thiết bị của họ Obfuscated Map ch được sinh lại khi có sự th y đổi Privacy Profile hoặc cập nhật mới về dữ liệu không gian
Location Enforcement: thành phần này thuộc phần mềm trong thiết bị của
người dùng, khi người dùng thực hiện một yêu cầu đến nhà cung cấp dịch vụ dựa trên vị trí, thành phần này sẽ đảm bảo tính riêng tư củ người dùng bằng cách áp đặt Obfuscated Map trên thông tin vị trí, thông tin vị trí s u đ c thể là một ô (nếu vị trí đ kh ng nhạy cảm) hoặc một vùng (hay tập các ô) nếu thông tin vị trí là nhạy cảm
3.1.2.4 Bob-Tree
Bob-Tree [26, 27] là cây ch mục dành cho các hệ thống bảo vệ tính riêng tư về vị trí củ người dùng dịch vụ LBS Tuy nhiên, thay vì xử lý làm mờ ở mức ứng dụng, Bob-Tree thực hiện làm mờ ở mức cơ sở dữ liệu Ngoài ra, trong quá trình làm mờ, Bob-Tr c u n t m đến yếu tố đị l (vùng đến được, vùng kh ng đến được) để tăng hiệu quả bảo vệ tính riêng tư cho người dùng
Hình 15: Đặc tí địa lý trong Bob-Tree [26]
Ý tưởng chính của Bob-Tr như s u
Các điểm 2 chiều được ánh xạ thành các điểm 1 chiều theo giá trị Hilbert và được đánh ch mục bằng B+-Tree
Hình 16: Cấu trúc Bob-Tree [26]
Trang 30 Để biểu diễn đặc tính địa lý, mỗi nút trong B+-Tr được thêm vào dữ liệu liên quan là diện tích vùng đến được
Output: the region that its area equals S and contains a
moving point with a dual vector odual Transform odual into the Hilbert value h
while(n is not a leaf node) do
Search node n for an entry i such that Ki-1 < h ≤ Ki
if S = Si then return the region corresponding to the
Hilbert interval [Ki-1;Ki]
else if S > S1 then return ExtendCell(Ki-1,Ki,S)
else n ← n.Pi//the i-th tree pointer in node n Search leaf node n for an entry (Ki,Pri) with h = Ki
if found then retrieve the user’s exact location else the search value h is not in the database
Bảng 2: Giải thuật Bob-Tree [26]
Trang 313.2 Bộ xử lý truy vấn kết hợp tính riêng tư
Bộ xử lý truy vấn [5, 9, 11, 15, 16, 19, 23] kết hợp tính riêng tư được nhúng trực tiếp trong máy chủ cơ sở dữ liệu để xử lý truy vấn dựa trên vùng làm mờ nhận được từ câu truy vấn thay vì vị trí chính ác như máy chủ cơ sở dữ liệu không gian truyền thống Thay vì trả về kết quả chính xác, bộ xử lý truy vấn kết hợp tính riêng tư trả về một tập các kết quả trong đ c chứa câu trả lời chính ác S u đ , thành phần trung gian (bộ làm mờ Location Anonymizer trong kiến trúc cộng tác) hoặc chính người dùng sẽ lọc các kết quả không phù hợp ra kh i danh sách, thu được câu trả lời chính xác của câu truy vấn
Kích thước của danh sách kết quả chủ yếu dự vào chính sách riêng tư củ người dùng Một chính sách kh c khe sẽ trả về kết quả là một danh sách kết quả lớn hơn Bằng chính sách riêng tư, người dùng có khả năng hiệu ch nh giữ lượng thông tin họ có thể tiết lộ về vị trí của họ và chất lượng dịch vụ mà họ muốn có từ câu truy vấn
3.2.1 Truy vấ r ê t và truy vấn công cộng
Câu truy vấn dịch vụ dựa trên vị trí xử lý tại bộ xử lý truy vấn kết hợp tính riêng tư c thể được nhận từ người dùng hoặc từ người quản lý công cộng [5]
Truy vấn từ người dùng được xem là truy vấn riêng tư (priv t u ry), được xử l để bảo vệ tính riêng tư củ người dùng trước khi đư vào máy chủ cơ sở dữ liệu dựa trên vị trí
Truy vấn được tạo ra từ quản lý cộng đồng được xem là truy vấn công cộng (public query) và không cần xử l để bảo vệ tính riêng tư Th y vào đ , những truy vấn này được trực tiếp chuyển đến máy chủ Máy chủ sẽ trả lời truy vấn công cộng dựa trên thông tin về vị trí đ được che giấu của tất cả người dùng
3.2.2.1 Dữ liệu riêng tư và dữ liệu công cộng
Có hai loại dữ liệu được chứa trong máy chủ cơ sở dữ liệu: dữ liệu công cộng và dữ liệu riêng tư [5]
Dữ liệu công cộng bao gồm các đối tượng công cộng như: ệnh viện, nhà hàng, trạm ăng hoặc các đối tượng di động như cảnh sát hoặc nhân viên dịch vụ công cộng tại hiện trường Những đối tượng này không muốn che giấu thông tin về vị trí của họ Do đ , họ thường trược tiếp lưu trữ vị trí của mình vào máy chủ cơ sở dữ liệu mà không có sự can thiệp của bộ xử lý làm mờ
Dữ liệu riêng tư thường chứa thông tin vềngườidùng di động hoặc tĩnh kh ng muốn tiết lộ thông tin về vị trí của họ, ví dụ họ ác định một chính sách riêng tư với k ≠ 0 hoặc diện tích vùng làm mờ nh nhất khác 0 Dữ liệu riêng tư nhận được tại máy chủ cơ sở dữ liệu là vùng làm mờ từ bộ xử lý làm mờ
Trang 323.2.2.2 Ba loại truy vấn kết hợp tính riêng tư
Dựa trên dữ liệu được lưu trữ, ch ng t ác định 3 loại truy vấn có thể được hỗ trợ bởi bộ xử lý truy vấn kết hợp tính riêng tư [5]
Truy vấn riêng tư trên dữ liệu công cộng (priv t u ri s ov r pu lic d t ), đối với loại truy vấn này, vị trí truy vấn được che giấu trong khi thông tin về vị trí chính xác của dữ liệu được lưu trữ được biết chính xác Ví dụ, một người (private query) h i vị trí của trạm ăng gần nhất (pu lic d t ) Trong trường hợp này, bộ xử lý truy vấn kết hợp tính riêng tư kh ng iết chính xác vị trí của người tạo truy vấn, trong khi biết rõ vị trí chính xác của trạm ăng
Truy vấn công cộng trên dữ liệu riêng tư (Pu lic u ri s ov r priv t d t ), đối với loại truy vấn này, vị trí của truy vấn hoàn toàn được biết, trong khi vị trí chính xác của dữ liệu cần quan tâm thì biết được Th y vào đ , ch biết thông tin của vùng làm mờ Ví dụ, một quản lý (public query) h i c o nhiêu người dùng di động (private data) trong một khu vực nhất định Trong trường hợp này, bộ xử lý truy vấn kết hợp tính riêng tư iết chính xác thông tin về vị trí truy vấn, nhưng kh ng iết chính xác vị trí củ người dùng
Truy vấn riêng tư trên dữ liệu riêng tư (Priv t u ri s ov r priv t d t ), đối với loại truy vấn này, cả vị trí của truy vấn và dữ liệu đều được che giấu Ví dụ, một người (private query) h i về người bạn ở gần nhất (private data), bộ xử lý truy vấn kết hợp tính riêng tư không biết về vị trí chính xác của cả người tạo truy vấn và người bạn
Hình 18: Ha p ơ p p cơ bản xử lý truy vấn vùng mờ [5]
Trang 333.2.2.1 Negotiation
Đầu vào của giải thuật [11] là một đồ thị có trọng số, tập các điểm yêu thích POI và một tập làm mờ bao gồm các đ nh trong đồ thị Một hàm đánh giá δ trong đ h i đ nh o δ p khi o và p c cùng một POI trong câu truy vấn
C 3 trường hợp có thể xảy ra:
O ϵ O / δ tức là tất cả các đ nh trong O c cùng POI, POI đ chính là c u trả lời chính xác cho truy vấn
Chấp nhận tiết lộ [l] ϵ O / δ khi các đ nh trong O có nhiều hơn 1 POI, chi các đ nh thành nhiều tập con, mỗi tập con có một POI, nếu tiết lộ [l] giải thuật có thể ác định chính xác POI của tập con có chứa [l] là câu trả lời chính xác cho truy vấn
Cung cấp O’ ϲ O trong trường hợp không chấp nhận trường hợp 2, khi đ t lặp lại giải thuật với O’, nếu không, ta kết thúc giải thuật và trả về tập kết quả dự đoán
Hình 19: Negotiation flowchart [11]
Hình 20: Minh họa giải thuật Negotiation [11]
Trang 343.2.2.2 Range Nearest-Neighor Query
Một truy vấn điểm gần nhất cho một vùng [15] (Range Nearest-Neighbor Qu ry) được định nghĩ như s u Cho một tập điểm trong không gian d chiều Rd, tập các điểm gần nhất cho một vùng không gian siêu chữ nhật Ω thuộc Rd
, kí hiệu RNN(Ω), là tập các điểm gần nhất cho mọi điểm trong Ω, n i khác đi:
RNN(Ω) = {NN(p) | p Ω}
Dự vào định nghĩ trên, t thấy rằng mọi điểm ên trong Ω là điểm gần nhất của chính nó, vậy việc còn lại ta ch cần t m các điểm gần nhất cho các mặt biên (của siêu chữ nhật d chiều), hoặc các cạnh biên (của hình chữ nhật 2 chiều) Ở đ y, t ch xét trường hợp hình chữ nhật 2 chiều
Giải thuật Line Nearest-Neighbor Search sẽ xử lý từng cạnh của hình chữ nhật và tìm các điểm gần nhất cho các cạnh đ , dựa trên các định lý sau
Cạnh L có thể được chia thành hữu hạn các đoạn nh , mà mỗi điểm trên đoạn nh đ c chung điểm gần nhất
Nếu số đoạn nh được chia ra từ cạnh L là nh nhất trong tất cả các cách chia, tất cả các đoạn nh đ c các điểm gần nhất khác nhau
Cho e1, e2 … là các điểm c t các đoạn nh của cạnh L, s p xếp theo thứ tự từ trái sang phải, và p1, p2, … là các điểm gần nhất cho các đoạn nh tương ứng Vậy với mọi i < j, tọ độ x của hình chiếu pi sẽ nằm bên trái tọ độ x của hình chiếu của pj (pi.x < pj.x) trên cạnh L
Từ đ , để t m các điểm gần nhất cho cạnh L, ta s p xếp các hình chiếu củ các điểm trong không gian lên cạnh L theo tọ độ x, từ trái sang phải, và duyệt lần lượt từng điểm để tính toán điểm c t tương ứng
Hình 21: Minh họa 1RNN [15]
n đầu, p1 là điểm gần nhất cho toàn cạnh L
Khi duyệt đến p2, ta tạo r điểm c t e2 nằm bên trái e1, p1 là điểm gần nhất cho đoạn e1e2 và p2 là điểm gần nhất cho đoạn e2e4
Khi ta duyệt p3, ta tạo r điểm c t ’2 nằm bên trái e2, do đ p2 kh ng là điểm gần nhất nữ , th y vào đ , p1 là điểm gần nhất cho đoạn e1 ’2 và p3 là điểm gần nhất cho đoạn ’2e4
Duyệt p4, p3p4 tạo r điểm c t e3 nằm ên trái ’2, vậy cạnh L được chia thành 3 đoạn với 3 điểm gần nhất tương ứng là p1, p3, p4
Cuối cùng, trung trực p4p5 không c t cạnh L, vậy p5 kh ng là điểm gần nhất cho cạnh L
Trang 35Ngoài ra, giải thật Line Nearest-Neighbor Search [15] có thể được mở rộng cho trường hợp t m k điểm gần nhất, như minh họ t m 2 điểm gần nhất trong hình sau đ y
Hình 22: Minh họa kRNN [15]
Giải thuật Line Nearest-N igh or S rch đ giải quyết không ch bài toán tìm tập điểm gần nhất cho hình chữ nhật, mà còn có thể áp dụng cho trường hợp h nh đ giác, tuy nhiên Line Nearest-Neighbor Search có một nhược điểm là quá cứng nh c về tính đ ng đ n của kết quả tìm kiếm, luôn trả về tập tối thiểu các điểm gần nhất cho cạnh L, nên thời gian tính toán lớn
3.2.2.3 Circular Range Nearest-Neighbor Query
Tương tự như truy vấn điểm gần nhất cho vùng chữ nhật, kết quả truy vấn điểm cho vùng hình tròn [16] C cũng o gồm 2 tập con sau
Tất cả các điểm trong C là điểm gần nhất đến chính nó
Tất cả các điểm gần nhất đến đường tròn biên của C là kết quả cho truy vấn Ý tưởng chính của việc t m điểm gần nhất đến đường tròn biên của C là việc phân chi C thành các cung kh ng trùng nh u, trong đ tất cả các điểm trong mỗi cung đều có cùng một điểm gần nhất Như trong h nh ên dưới, đường tr n được chia thành các cung S0S1 và S1S0 với các điểm gần nhất tương ứng là P2 và P1
Hình 23: cRNN [16]
Giải thuật truy vấn CkNN-Circ [16] hoạt động như s u Cho d nh sách D = {p1, p2, …, pn} là tập các điểm trong không gian, giải thuật truy vấn CkNN-Circ sẽ tính toán một danh sách SL ánh xạ [a, b] pi, với a, b lần lượt là các g c đánh dấu đầu và cuối của cung tròn theo tọ độ cực, và pi là điểm gần nhất cho cung đ Trong uá tr nh tính toán danh sách SL, có 3 khả năng c thể xảy ra
n đầu p1 là điểm gần nhất cho toàn bộ cung tròn, khi duyệt đến điểm kế tiếp p2, trung trực của p1p2 không c t đường tr n iên Điểm p1 vẫn là điểm gần nhất đến toàn bộ đường tr n, do đ d nh sách SL kh ng đổi
Trang 36o Đối với [S1, S’1] p2, trung trực p2p3 c t đường tròn tại 2 điểm S3 và S’3, S3 nằm trong [S1, S’1] nên ta tách ánh xạ trên thành 2 ánh xạ [S’1, S3] p2 và [S3, S1] p3
o Cuối cùng ta kết hợp 4 ánh xạ thành 3 ánh xạ [S2, S’1] p1, [S’1, S3] p2 và [S3, S2] p3
o Tương tự như trên, t tách ánh ạ [S’1, S1] p2 thành 3 ánh xạ [S3, S1] p3 [S’3, S3] p2 và [S’1, S’3] p3
o Cuối cùng ta kết hợp 6 ánh xạ thành 4 ánh xạ [S2, S’2] p1, [S’3, S3] p2, và [S3, S2] p3, [S’2, S’3] p3
Giải thuật truy vấn CkNN-Circ dùng để truy vấn điểm gần nhất cho vùng hình tròn được mô tả trong mã giả s u đ y
Giải thuật CkRNN-Circ
CkNN-Circ(D: the set of objects)
for every object p ∈ D do
if SL = ∅ then SL := {[0,2π] → p}
else
for every interval ϕ≡[a, b]→q, ϕ ∈ SL do