1. Đặt vấn đề:
Fred đang cố gắng giảm cân và tăng cường sức khoẻ của mình. Do vậy, anh này đã sử dụng các cảm biến (sensors) để ghi lại những hoạt động của anh ấy như địa điểm (Location), thời gian (Time) và hoạt động của bản thân.
a. Anh Fred cũng muốn chia sẻ thông tin sinh học (biometric status) và địa điểm khi đang chạy bộ để mong nhận được sự khích lệ của những người bạn thích chạy bộ giống như anh ấy.
b. Tuy nhiên, với thông tin là những buổi họp trong công ty, anh Fred không muốn bất kỳ ai biết về nhịp tim (heart rate) của anh ấy. Thông thường thì Fred sẽ chia sẻ thông tin địa điểm với đồng nghiệp trong suốt thời gian làm việc trong ngày của anh ấy để họ có thể dễ dàng tìm thấy anh ta.
c. Trong một vài trường hợp thì Fred cho phép thư ký có thể biên tập (edit) lịch sử của buổi họp trong thời gian làm việc hoặc không cho phép người khác biết địa điểm hoặc đang gặp ai khi Fred đang thảo luận nội bộ trong công ty.
d. Một số tình huống khác (scenarios), ví dụ như thông tin về địa điểm của Fred sẽ không được công bố trực tiếp cho người dùng mà sẽ thông qua một bộ lọc thông tin để bạn đồng nghiệp sẽ chỉ biết được thông tin chung chung về địa điểm hiện tại của Fred mà thôi.
Hoặc giả trong tình huống chúng ta muốn có cho một người dùng mới có được quyền như thư ký và đồng nghiệp, khi này ta chỉ cần kết hợp 2 quyền sẵn có để tạo ra loại phân quyền mới như mong muốn.
Trong các tình huống ở trên, chúng ta tạm thời bỏ qua vấn đè Authentication (chứng thực người dùng), có nghĩa là giả sử tôi muốn phân quyền cho anh đồng nghiệp, thì GIẢ DỤ MẶC ĐỊNH người này là đồng nghiệp của tôi, tôi không cần phải tìm cách xác minh rằng anh này là đồng nghiệp của tôi.
Chứng thực người dùng (Authentication) là một vấn đề khác không thuộc phạm vi đặt vấn đề của bài toán.
2. Làm rõ bài toán:
Phần 1 là đặt vấn đề, nêu ra các kịch bản có thể xảy ra với loại bài toán này. Ta sẽ lần lượt phân tích các khía cạnh của bài toán như sau:
- Personalized Privacy Preservation (PPP) hoặc là Privacy Preservation: tôi đề nghị gọi tên bài toán như vậy. Bởi vì thứ nhất có dữ liệu muốn chia sẻ cho nhiều người dùng khác nhau. Thứ hai, với từng loại người dùng khác nhau thì thông tin chia sẻ cũng khác nhau. Cuối cùng là dạng bài toán con nằm ẩn trong PPP gồm Anonymity và Authorization. Rất đặc trưng cho dạng bài toán ở phần 1.
- Anonymity: dùng trong ngữ cảnh. Cụ thể là phương pháp Generalization.
- 1.d. Thông tin Fred chia sẻ sẽ qua một bộ lọc để trừu tượng hoá dữ liệu cụ thể khi được truyền đến người dùng.
- Authorization: bao gồm tất cả các ngữ cảnh còn lại trong bài toán ở trên. Authorization là chức năng xác định quyền hạn truy cập đến nguồn tài nguyên nào đó.
- Xác định quyền hạn người dùng (được phép đọc, ghi, ....)
- Xác định thông tin người dùng được phép truy cập.
- Cấp quyền cho từng loại người dùng khác nhau.
- Kết hợp các quyền truy cập sẵn có để tạo ra quyền truy cập mới.
- Personalized Privacy Preservation: ý tưởng chính.
- Proposed new framework based on the concept of Personalized anonymity.
- Minimum generalization to satisfy everybody's reqs.
- Motivation: Figure out drawbacks of k-anonymity:
- First, a k-anonymous table may allow an adversary to derive the sensitive information of an in- dividual with 100% confidence.
- Second, a k-anonymous table may lose considerable information from the microdata.
- Third, k-anonymity does not take into account personal anonymity requirements.
- Tại sao phải dùng Bidirectional Graph Transformations ?
4. Kể một câu chuyện hoàn chỉnh:
Fred đang cố gắng giảm cân và tăng cường sức khoẻ của mình. Do vậy, anh này đã sử dụng các cảm biến (sensors) để ghi lại những hoạt động của anh ấy như địa điểm (Location), thời gian (Time) và hoạt động của bản thân.
Fred đang cố gắng giảm cân và tăng cường sức khoẻ của mình. Do vậy, anh này đã sử dụng các cảm biến (sensors) để ghi lại những hoạt động của anh ấy như địa điểm (Location), thời gian (Time) và hoạt động của bản thân.
a. Anh Fred cũng muốn chia sẻ thông tin sinh học (biometric status) và địa điểm khi đang chạy bộ để mong nhận được sự khích lệ của những người bạn thích chạy bộ giống như anh ấy.
b. Tuy nhiên, với thông tin là những buổi họp trong công ty, anh Fred không muốn bất kỳ ai biết về nhịp tim (heart rate) của anh ấy. Thông thường thì Fred sẽ chia sẻ thông tin địa điểm với đồng nghiệp trong suốt thời gian làm việc trong ngày của anh ấy để họ có thể dễ dàng tìm thấy anh ta.
c. Trong một vài trường hợp thì Fred cho phép thư ký có thể biên tập (edit) lịch sử của buổi họp trong thời gian làm việc hoặc không cho phép người khác biết địa điểm hoặc đang gặp ai khi Fred đang thảo luận nội bộ trong công ty.
d. Một số tình huống khác (scenarios), ví dụ như thông tin về địa điểm của Fred sẽ không được công bố trực tiếp cho người dùng mà sẽ thông qua một bộ lọc thông tin để bạn đồng nghiệp sẽ chỉ biết được thông tin chung chung về địa điểm hiện tại của Fred mà thôi.
Hoặc giả trong tình huống chúng ta muốn có cho một người dùng mới có được quyền như thư ký và đồng nghiệp, khi này ta chỉ cần kết hợp 2 quyền sẵn có để tạo ra loại phân quyền mới như mong muốn.
Trong các tình huống ở trên, chúng ta tạm thời bỏ qua vấn đè Authentication (chứng thực người dùng), có nghĩa là giả sử Fred muốn phân quyền cho anh đồng nghiệp, thì GIẢ DỤ MẶC ĐỊNH người này là đồng nghiệp của Fred và Fred không cần phải tìm cách xác minh rằng anh này là đồng nghiệp của Fred.
Với bài toán này, vấn đề đặt ra là làm thế nào để xây dựng được nhiều policy khác nhau trên cùng một nguồn thông tin, ngoài ra vấn đề ẩn thông tin cũng cũng được cộng đồng security quan tâm. Phương pháp tiếp cận của họ là xây dựng các thuật toán để giải quyết các vấn đề trên. Với các thuật toán hiện tại, việc thông tin được truyền đi là 1 chiều, từ source đến view mà thôi. Vấn đề được đặt ra với các phương pháp xây dựng policy hiện tại là làm thế nào để bảo vệ thông tin nhạy cảm khi truyền ra bên ngoài cho người khác xem và ngăn chặn việc lộ thông tin với các privacy đã cấp cho người dùng.
Như vậy, với khía cạnh ngược lại là nếu người dùng thay đổi thông tin và cập nhật lại thông tin nguồn (nếu như có quyền) thì sẽ nảy sinh thêm vấn đề bảo trì và tính tự động hoá của việc cập nhật (view updating problem). View updating problem là một vấn đề kinh điển của cộng đồng CSDL và đã từng bước được giải quyết cho đến thời điểm hiện nay (Jan.2013).
Nếu kết hợp cả việc xây dựng nhiều policy để đảm bảo nhu cầu của anh Fred và giải quyết cả vấn đề view updating thì liệu có giải pháp nào hay không ? Trong cộng đồng bidirectional graph transformations hiện tại có nhiều giải pháp cho vấn đề thứ 2 (view updating problem), tuy nhiên kết hợp với vấn đề 1 (privacy preservation) thì bài toán này là một thử thách rất lớn.
Giải pháp mà tôi đề xuất ở đây chính là sử dụng Bidirectional graph transformations, cụ thể là GRoundTram system để giải quyết những khó khăn đó.
Với giải pháp GRoundTram system, tôi sẽ xây dựng các thử nghiệm sau đây:
Như vậy, với khía cạnh ngược lại là nếu người dùng thay đổi thông tin và cập nhật lại thông tin nguồn (nếu như có quyền) thì sẽ nảy sinh thêm vấn đề bảo trì và tính tự động hoá của việc cập nhật (view updating problem). View updating problem là một vấn đề kinh điển của cộng đồng CSDL và đã từng bước được giải quyết cho đến thời điểm hiện nay (Jan.2013).
Nếu kết hợp cả việc xây dựng nhiều policy để đảm bảo nhu cầu của anh Fred và giải quyết cả vấn đề view updating thì liệu có giải pháp nào hay không ? Trong cộng đồng bidirectional graph transformations hiện tại có nhiều giải pháp cho vấn đề thứ 2 (view updating problem), tuy nhiên kết hợp với vấn đề 1 (privacy preservation) thì bài toán này là một thử thách rất lớn.
Giải pháp mà tôi đề xuất ở đây chính là sử dụng Bidirectional graph transformations, cụ thể là GRoundTram system để giải quyết những khó khăn đó.
Với giải pháp GRoundTram system, tôi sẽ xây dựng các thử nghiệm sau đây:
- Dùng UnQL (Unstructured Querying Language) để cài đặt các tình huống (context) trong bài toán của anh Fred.
- Xây dựng lớp bản thảo (scripting) để đơn giản hoá các câu lệnh (commandline) trong hệ thống GRoundTram.
Tới thời điểm hiện tại thì tôi đã xây dựng được 3 trong số 6 tình huống mà Fred đã đặt ra trong bài toán trên. Hy vọng là trong 2 ngày kế tiếp tôi sẽ có thể giải quyết được toàn bộ các tình huống còn lại và xây dựng thành công bản thảo (scripting) để giải quyết bài toán này.
Tokyo, Jan.06.2013
VO Huu-Phuc
Không có nhận xét nào:
Đăng nhận xét