حریم شخصی و حفاظت از آن در داده کاوی
دادهكاوي با استخراج موفقيتآميز اطلاعات، دانش مورد نياز براي استفاده در زمينههاي مختلف از جمله، بازاريابي، هواشناسي، تحليلهاي پزشكي و امنيت ملي را فراهم ميسازد، ولي هنوز هيچ تضميني ارايه نشده است كه بتوان دادههاي خاصي را مورد دادهكاوي قرار داد؛ بدون آنكه به حريم خصوصي مالك آن اطلاعات تجاوز كرد. براي مثال، در يك سيستم پزشكي، نحوه انجام دادهكاوي در اطلاعات خصوصي بيماران بدون افشاي آن اطلاعات، يكي از مسائلي است كه با آن روبهرو هستيم. ارگانهايي نظير سازمان بيمه سلامتي و بررسي وضع بهداشت در ايالاتمتحده (HIPPA) و سازمان مديريت داده و سيستمهاي تحليلي در اتحاديه اروپا، با درك حساسيتهاي به وجود آمده در اين زمينه، مجموعهاي از قوانين اجباري را در زمينه مديريت داده و تحليل سيستمها پديد آوردهاند. اين نوع نگرانيها، به موازات گسترش استفاده از سيستمهاي تحليل داده افزايش مييابند. سيستمهاي جمعآوري داده به صورت آنلاين، نمونهاي از دهها برنامه جديدي هستند كه حريم شخصي افراد را تهديد ميكنند. شركتهاي معتبر از چندي پيش با به اشتراك گذاشتن روشها و مدلهاي موجود براي دادهكاوي، به دنبال كسب داده بيشتر در مورد مشتريان مشترك هستند تا بتوانند در مورد عادتهاي آنها در زمينه خريد كالا اطلاعات دقيقتري داشته باشند. قبل از آنكه تكنيكهاي دادهكاوي همهگير شود و كلاف سردرگم حريم شخصي افراد را تهديد كند، بايد بتوان راهي براي حفاظت از حريم و اطلاعات شخصي افراد پيدا كرد. مشكل اصلي از آنجا ناشي ميشود كه چگونه ميتوان هم حريم شخصي افراد را در نظر گرفت و هم از نتايج مفيد سيستمهاي دادهكاوي بهره برد. براي برطرف كردن موانع موجود در اين زمينه، تحقيقات زيادي در حال انجام است، اما در عمل سيستمهاي دادهكاوي كه بتوانند در عين حال حريم شخصي افراد را نيز حفظ كنند، هنوز در مرحله ابتدايي و آزمايشي هستند. بيشتر اين تكنيكها در لايه زيرين به جاي بررسي مشكلات سيستمها، روي ابزارهاي محاسباتي و الگوريتمها متمركز شدهاند. هدف ما از بررسي حريم شخصي، به دست آوردن يك ديد سيستماتيك از نيازهاي ساختاري و طراحي اصول و بررسي راهحلهايي است كه بتوانند در سيستمهاي دادهكاوي بهطور عملي از حريم شخصي افراد محافظت كنند.
دادهكاوي به همراه حفاظت از حريم شخصي، شامل چندين مرحله ميشود كه آنها را در يك معماري سه لايه دستهبندي ميكنند: در لايه پايين تهيهكنندگان داده (data providers) قرار دارند. يعني كساني كه مالك داده هستند و عموماً از لحاظ موقعيت مكاني در سطح گستردهاي توزيع شدهاند.
تأمينكنندگان داده اطلاعات شخصي خود را به سرور انبار داده (data warehouse server) ارسال ميكنند. اين سرور كه لايه مياني به حساب ميآيد، از فرايندهاي تحليل آنلاين دادهها، پشتيباني ميكند و از طريق تبديل دادههاي خام كاربران به دادههاي گروهي، اطلاعاتي را براي سرورهاي دادهكاوي فراهم ميكند كه امكان پردازش سريعتر آنها فراهم است.
سرورهاي انبار داده، با جمعآوري داده با يك نظم فيزيكي خاص، نظير استفاده از ساختار مكعبيِ چندبعدي و استفاده از توابع جمعي نظير Sum ،Average ،Max و Min پيشمحاسبههاي مختلفي از دادهها فراهم ميكند. براي يك سيستم آنلاين از نوع survey، پاسخدهندگان در اصل تأمينكنندگان داده هستند كه دادههاي خود را به سرور انبار داده تحليل از نوع survey، ارسال ميكنند.
ميانگين سن پاسخدهندگان به برنامه، ميتواند يك نمونه از اجماع دادهها در سيستم به حساب آيد. پردازش دادههاي حاصل از توابع اجماع در سرور خيلي آسانتر از پردازش دادههاي خام ارسالي توسط تهيهكنندگان داده است.
سرورهاي دادهكاوي، در بالاترين لايه قرار ميگيرند كه كار اصلي در زمينه دادهكاوي توسط آنها انجام ميشود. در يك سيستم دادهكاوي كه اصول حفاظت از حريم شخصي را رعايت كرده باشد، اين سرورها، نميتوانند آزادانه به همه دادههاي ذخيرهشده در انبارهاي داده دسترسي داشته باشند.
براي مثال، در يك سيستم بيمارستاني، اداره حسابداري بايد فقط بتواند به دادههاي مالي بيماران دسترسي داشته باشد و به هيچ عنوان نبايد به ركوردهاي ثبت شده در مورد سوابق پزشكي آنها دسترسي داشته باشد. توسعه و ايجاد قوانين مؤثر براي دسترسي درست سرورهاي دادهكاوي به دادههاي انبارهاي داده، يكي از مشكلاتي است كه تحقيق در مورد آن به صورت ارسال و دريافت گسترده پيشنهادها، در حال انجام است.
به علاوه، يك سرور دادهكاوي ممكن است با ايجاد مدلهاي دادهكاوي روي سرور انبار داده، دادههاي آن را با سرورهاي دادهكاوي ديگر در سيستمهاي ديگر به اشتراك بگذارد. انگيزه اصلي از به اشتراك گذاشتن داده در اين مدلها، ايجاد مدلهاي مشابه براي دادهكاوي در بين سيستمها است.
براي مثال، شركتهاي اجارهدهنده سرور، ممكن است بخواهند روشهاي دادهكاوي خود روي ركوردهاي مشتريان را به اشتراك بگذارند تا به اين ترتيب يك مدل جهاني دادهكاوي در مورد رفتار مشتريان ايجاد كنند كه به نفع همه شركتها خواهد بود. همانطوركه شكل 1 نشان ميدهد، به اشتراك گذاشتن داده در بالاترين لايه رخ ميدهد كه در آن هر سرور دادهكاوي از مدل دادهكاوي مخصوص خود استفاده ميكند. بنابراين در اينجا «به اشتراك گذاشتن» به معني به اشتراك گذاشتن مدلهاي دادهكاوي محلي است، نه به اشتراك گذاشتن دادههاي خام.
حداقلهاي ضروري براي رعايتشدن اصول پايه طراحي
براي طراحي يك سيستم دادهكاوي كه حريم شخصي را نيز رعايت كرده باشد، بايد ابتدا يك تعريف مشخص از حريم شخصي ارايه دهيم. تفسير معمول براي اين كلمه به اين صورت است كه يك داده در صورتي شخصي تلقي ميشود كه مالك آن حق داشته باشد، در مورد محرمانه ماندن يا افشاي آن تصميم بگيرد و مختار باشد كه مشخص كند به چه علت يا تا چه اندازه ميتوان اين دادهها را در اختيار ديگران قرار داد.
بيشتر نظريهپردازان تفسير عبارت «حريم شخصي در مدلسازي داده» را به اين صورت در نظر ميگيرند كه مالك داده به صورت پيشفرض اجازه افشاي دادههاي شخصي خود را نداده است؛ مگر اينكه براي اجراي دادهكاوي حتماً به آن دادهها نياز باشد.
اين فرض به همراه تعريف مورد قبول براي حفاظت از اطلاعات، مباني پايه و اصول پايه طراحي سيستمهاي دادهكاوي با رعايت حريم شخصي را ايجاد ميكنند:
در يك سيستم دادهكاوي، اطلاعات شخص افشا شده بايد شامل حداقل دادههايي باشد كه در دادهكاوي به آنها نياز است.
در نوشتار حاضر منظور و معيار براي كلمه «حداقل»، كيفيت اطلاعات است، نه كميت آن. از آنجا كه معيار كّمي براي اندازهگيري افشاي اطلاعات شخصي، در سيستمهاي مختلف فرق ميكند، پس حداقل ديد مشترك اين است كه نبايد هيچ يك از اطلاعات شخصي غيرضروري افشا شود (در اين نوشته منظور از غيرضروري، به سطح دقت مورد نياز در نتايج حاصلي از سيستمهاي دادهكاوي بستگي دارد.). بنابراين كلمه «حداقل» به اين معني است كه افشاي حريم شخصي، بر مبناي نياز به داده صورت ميگيرد. خيلي از قوانين از جمله HIPPA، تبعيت از قانون حداقل نيازهاي ضروري را الزامي ميدانند.
شکل: معماري پايه براي حفاظت از حريم شخص در فرآيندهاي داده کاوي. اين معماري بهطور کلي شامل سه لايه است: تهيه کنندههاي داده، که مالک داده هستند. سرورهاي انبار داده، که از فرآيندهاي تحليلي آنلاين پشتيباني ميکنند و سرورهاي داده کاوي که کارهاي داده کاوي را انجام ميدهند و اطلاعات خود را به اشتراک ميگذارند. هدف اصلي کنترل کردن دادههاي محرمانهاي است که بين اين موجوديتها رد و بدل ميشود؛ بدون آن که مانع فرآيند داده کاوي شويم.
پروتكلهاي حريم شخصي
بر مبناي اصولي كه در ساختار شكل 1 و قانون «حداقلهاي ضروري» براي رعايت شدن اصول پايه طراحي عنوان شدهاست، استراتژياي را براي حفظ حريم شخصي در سيستمهاي دادهكاوي پيادهسازي كردهايم. قلب اين استراتژي بر مبناي سه پروتكل است كه بايد در هنگام تصميمگيري در مورد افشاي دادههاي موجوديتهاي سيستم، بررسي شوند:
1- جمعآوري داده (Data collection) كه در هنگام انتقال داده از توليدكنندگان داده به سرورهاي انباره داده، از حريم شخصي دادهها، حفاظت ميكند.
2- كنترل نتيجه (Infereace control) كه حفاظت از حريم شخصي را هنگام انتقال داده از انبارهاي داده به سرورهاي دادهكاوي مديريت ميكند.
3- به اشتراكگذاري اطلاعات (information sharing) دادههاي به اشتراك گذاشته شده بين سرورهاي دادهكاوي در سيستمهاي مختلف را كنترل ميكند.
با در نظر گرفتن قانون «حداقلهاي ضروري»، بايد هدف مشترك اين سيستمها، ساختن مدلهاي دادهكاوي دقيق، با انتقال حداقل داده شخصي مورد نياز براي دادهكاوي باشد. در عمل، ساختن سيستمي كه در عين كارايي بتواند به خوبي از دادههاي شخصي محافظت كند، در اكثر موارد كار سختي است.
به اين ترتيب ميبينيم كه هميشه يك رابطه معكوس، بين ايجاد يك سيستم دادهكاوي دقيق يا ايجاد يك سيستم امن از نظر حفاظت از دادههاي شخصي، وجود دارد. اين پروتكلها، مبتني بر متدهاي اثباتشدهاي هستند كه طراح سيستم ميتواند براي برآوردهكردن نيازهاي خاصي، آنها را در نظر گيرد و در مورد نسبت افشاي دادههاي شخصي به دقت دادهكاوي، حالتي را انتخاب كند كه بيشترين نفع را براي او داشته باشد. براي مثال، پروتكل «جمعآوري داده» ميتواند از يكي از دو روش معمول براي جمعآوري داده استفاده كند كه هر يك منافع و معايب خاصي دارد.
پروتكل جمعآوري داده
پروتكل جمعآوري داده (Data collection) به تهيهكنندگان داده اجازه ميدهد قسمت مربوط به مورد «حداقل داده شخصي مورد نياز براي دادهكاوي» را رعايت كنند و تضمين ميكند كه تنها بخش ضروري داده براي سرور انباره داده ارسال شود.
پروتكل جمعآوري داده از چندين فاكتور ايجاد شده است. اولين فاكتور ضروري، مقياسپذير بودن (قابل اندازهگيري) داده است؛ زيرا سرور انبار داده ميتواند همانند سيستمهاي نوع survey، با صدها هزار تهيهكننده داده در ارتباط باشد. ثانياً هزينههاي محاسباتي براي تهيهكنندگان داده بايد كم باشد؛ زيرا آنها در مقايسه با سرورهاي انبار داده، قدرت محاسباتي خيلي كمتري دارند و در نتيجه هزينه محاسباتي بالا ميتواند آنها را از مشاركت در پروژههاي دادهكاوي منصرف كند.
در نهايت، اين پروتكل بايد درست، ساده و مطمئن باشد. يعني بتواند در عين حفاظت از حريم شخصي ارسال كننده داده، نتايج نسبتاً دقيقي را نيز ايجاد كند؛ حتي اگر ارسالكنندههاي مختلف به صورت متفاوت با سيستم برخورد كنند. براي مثال، اگر بعضي از تهيهكنندگان داده در يك سيستم survey، از پروتكل سوءاستفاده كنند يا دادههاي بيمعني ارسال كنند، پروتكل جمعآوري داده بايد تأثيرات ناشي از اين برخورد غلط با سيستم را كنترل كند و تضمين كند كه نتايج نهايي حاصل از دادهكاوي به اندازه كافي دقيق بمانند. شكل زیر ساختار درختي مربوط به پروتكلها و زيرپروتكلهاي جمعآوري داده را نشان ميدهد. همانطور كه ميبينيد پروتكل جمعآوري داده دو نوع اصلي را شامل ميشود.
روش مبتني بر ارزش
با استفاده از روش مبتني بر ارزش (Value-based method)، تهيهكنندگان داده به يكي از دو روش زير به دستكاري مقادير مربوط به هر داده ميپردازند. روش مبتني بر آشفته كردن، خطا را مستقيماً در داده اعمال ميكند. براي مثال، سن را از 23 به 30 يا تگزاس را به كاليفرنيا تغيير ميدهد. روش مبتني بر اجماع دادهها را مطابق با ساختار سلسله مراتبي آنها به حالت كليتر تبديل ميكند. براي مثال، سن 23 را به بازه 21 تا 25 يا تگزاس را به ايالات متحده تبديل ميكند.
روش مبتني بر آشفته كردن براي دادههاي اختياري مناسب است. در حالي كه روش مبتني بر اجماع، به دانش سيستم در مورد سلسله مراتب مربوط به داده بستگي دارد و در عوض ميتواند در تضمين مبهم ماندن داده نيز كمك كند. براي مثال، ابهام -k يعني آنكه دادههاي هر ركورد دادهاي آشفتهشده از دادههاي 1-k ركورد ديگر، غيرقابل تشخيص است.
روش مبتني بر ارزش فرض ميكند كه رسيدن به دادههاي شخصي از طريق بررسي دادههاي دستكاري شده براي سرورهاي انباره داده ناممكن يا حداقل خيلي سخت است، ولي سرور ميتواند دادههاي اصلي را از روي توزيع دادههاي آشفته موجود بازيابي كند و در نتيجه امكان ايجاد مدلهاي دادهكاوي دقيق را فراهم آورد.
روش مبتني بر ابعاد
دليل استفاده از نام «روش مبتني بر ابعاد» (Dimention-based method) اين است كه دادههاي مورد بررسي معمولاً صفات (ابعاد) زيادي دارند. ايده اصلي اين است كه با حذف كردن تعداد بعدهاي داده، آن قسمتي از دادهها را كه شخصي به حساب ميآيند، جداسازي كنيم.
روش مبتني بر block اين كار را از طريق جداسازي بعضي از صفات شخصي انجام ميدهد و اين دسته از دادهها را در اختيار سرور انبار داده قرار نميدهد، ولي اين روش ممكن است باعث از دست دادن داده شود، ولي سرورهاي دادهكاوي نتوانند از روي اين دسته از دادهها، نتايج دقيقي به دست آورند.
مدل پيچيدهتري با نام مدل مبتني بر Projection دادههاي اصلي را روي زير فضاهايي با ابعاد كمتر منعكس ميكند. اين زيرفضاها با دقت زيادي طراحي شدهاند تا تنها حداقل دادههاي مورد نياز براي ايجاد مدلهاي دادهكاوي دقيق را شامل شوند.
مزايا و معايب
هر يك از اين مدلها، مزايا و معايبي دارد. روش مبتني بر ارزش، مستقل از وظايف دادهكاوي عمل ميكند و در نتيجه براي برنامههايي مناسب است كه براي وظايف دادهكاوي چندگانه يا وظايف تعريف نشده در جمعآوري داده مناسب است. از سوي ديگر، روش مبتني بر ابعاد با وظايف دادهكاوي تكبعدي متناسب است؛ زيرا بعد از تفكيك و كم كردن ابعاد، اطلاعاتي كه بايد بازيابي شوند، به هدف و وظيفه مورد نظر ما بستگي دارد.
تا كنون تحقيقات نتوانسته است يك مدل كلي و قابل استفاده از الگوي مبتني بر Projection براي همه برنامهها ايجاد كند. با اين وجود باز هم اين روش از لحاظ نسبت كاهش دقت به افشاي اطلاعات شخصي، در مقايسه با روش مبتني بر ارزش مزيتهاي زيادي دارد.
بيشتر روشهاي مبتني بر ارزش، با صفات مختلف، به روشهاي مستقل و متفاوتي برخورد ميكنند. در نتيجه بعضي از صفاتي كه در دادهكاوي اهميتي ندارند نيز در همان سطح افشاي دادههاي مهم، براي سرور انباره داده، ارسال ميشوند. مطالعات اخير نشان ميدهد كه در صورت استفاده از روش آشفتهسازي تصادفي، سرور انباره داده ميتواند با نقض تكنيكهاي حفظ حريم شخصي، آشفتگيها را از دادههاي آشفته حذف كند و به اين ترتيب حداقل بخشي از دادههاي محرمانه را به دست آورد.
در روش مبتني بر projection به خاطر بررسي رابطه بين صفات و ارايه دادههاي صرفاً ضروري براي دادهكاوي از مشكلات معمول در سيستم روش مبتني بر ارزش خبري نيست.
همچنين از طريق دريافت اطلاعات در مورد دادههاي ضروري، ميتواند از ارايه اطلاعات شخصي غيرضروري جلوگيري كند و به اين ترتيب عملكرد آشفتهسازي داده را بهبود بخشد. من و يكي از همكارانم در يكي از پروژههاي سابق، الگويي را ارايه كرديم كه بر مبناي دريافت راهنماييهاي لازم و كاهش ابعاد داده متناسب با راهنماييهاي دريافتي، پايهريزي شده بود.
اين روش براي سيستمهاي پويا نظير سيستمهاي survey طراحي شده بود كه در آنها تهيهكنندگان داده به صورت ناهمزمان به سيستم متصل شده و دادههاي مورد نظر ما را تأمين ميكنند. در اين الگو براي راهنمايي تهيهكنندگان داده كه هنوز دادههاي خود را ارسال نكردهاند، ابتدا دادههاي جمعآوريشده از اعضاي قبلي بررسي ميشود و سپس با تحليل آنها، دادههاي ضروري براي دادهكاوي شناسايي و از تهيه كننده داده درخواست ميشود. سپس سيستم درخواست دريافت صفات مورد نياز را ارسال ميكند. نمونههاي قبلي نشان ميدهد كه الگوها و برنامههاي داراي راهنما، از الگوهايي كه فاقد راهنما باشند بهتر عمل ميكنند.
پروتكل كنترل نتيجه
محافظت از دادههاي شخصي در سرورهاي انبارهداده، از طريق كنترل اطلاعات ارسالي براي سرورهاي دادهكاوي ميسر ميشود و هدف از پروتكل كنترل نتيجه (Inference Control Protocol) نيز عملي كردن همين كار است. بر مبناي قانون حداقلهاي مورد نياز، پروتكل كنترل نتيجه تضمين ميكند كه دادههاي سرورهاي انبار داده هم براي پاسخگويي به پرسوجو از انبارهاي داده عملكرد كافي دارند و هم تا حد ممكن جلوي افشاي اطلاعات شخصي غير ضروري را ميگيرند.
براي طراحي و پيادهسازي پروتكل كنترل نتيجه، چندين پيشنياز وجود دارد. يكي از اين نيازها، داشتن امكان جلوگيري از ارسال نتايج است. اگر سرور دادهكاوي يك سرور مشكوك يا رقيب باشد، در اين صورت سعي ميكند با استفاده از نتايج پرسوجوهاي قبلي خود به دادههاي شخصي و محرمانه دست پيدا كند. مثالي از اين روش در شكل زیر ارايه شده است.
شکل فوق- نتيجهگيريهايي که اطلاعات محرمانه را افشا ميکنند. اگر سرور داده کاوي قصد نفود داشته باشد، ميتواند از طريق پاسخ پرسوجوهاي ارسالي و دادههاي مربوط به بعضي از سلولهاي دادهاي (که با نام Known يا شناخته شده، نشان داده شدهاند)، تعداد DVDهاي فروخته شده توسط فروشنده در ماه ژوئن را محاسبه کند (فرض بر ا ين است که اين دادهها، محرمانه هستند و نبايد افشا شوند). اگر Q1 تا Q8 به ترتيب نتيجه پرسوجوهاي ارسالي باشند، کافي است براي يافتن تعداد DVDهاي فروخته شده، عبارت زير را محاسبه کنيم:
Q1+Q8=(Q5+Q6)=88-72=16
به علاوه، پروتكل كنترل نتيجه بايد به اندازه كافي كارايي داشته باشد تا به درخواستهاي انجام شده از سرورهاي انبار داده در مدت زمان منطقي پاسخ دهد. يعني بايد زمان پاسخگويي يا همان مدت زمان بين درخواست از سرور و پاسخ سرور به درخواست، در يك بازه معقول قرار گيرد. زماني كه پروتكل كنترل نتيجه صرف ميكند نيز جزو زمان پاسخگويي سرور به حساب ميآيد. پس اين زمان نيز بايد همواره كنترل شود تا زمان پاسخگويي سرور انباره داده بتواند هميشه در حد معقولي باقي بماند.
براي رسيدن به اين نيازها، پروتكلهاي كنترل نتيجه بايد اطلاعات قرار گرفته در پاسخ پرسوجوها را محدود كنند تا سرورهاي دادهكاوي نتوانند از طريق بررسي پاسخ پرسوجوهاي ارسالي، به دادههاي شخصي افراد دسترسي پيدا كنند. شكل زیر ساختار درختي قوانين كنترل نتيجه را نشان ميدهد كه شامل دو روش براي كنترل نتيجه است.
روش پرسوجوگرا
روش پرسوجوگرا (Query-Oriented)، بر مبناي مفهوم ارايه مجموعهاي از پرسوجويهاي امن، بنا شده است. در اين حالت به شرطي به مجموعه پرسوجوهاي Q1 تا Qn، امن ميگوييم كه بررسي و تركيب پاسخ آنها، در سرور دادهكاوي منجر به افشاي اطلاعات خصوصي موجود در سيستم نشود.
بنابراين كنترل نتيجه به روش پرسوجوگرا به اين معني است كه وقتي سرور انباره داده يك درخواست داده يا پرسوجو را دريافت كند، تنها در صورتي به آن پاسخ خواهد داد كه نتوان از تركيب نتيجه آن پرسوجو و مجموعه پرسوجوهاي ذخيرهشده در تاريخچه پرسوجوهاي ذخيره شده (يعني پرسوجوهايي كه قبل از اين به آنها پاسخ داده شده است)، به اطلاعات خصوصي افراد دسترسي پيدا كرد.
در اين حالت ميگوييم كه پرسوجوي ارسالي، امن است. در رابطه با كنترل نتيجه به روش پرسوجوگرا، در پايگاههاي داده آماري، كنترل نتيجه در اين گونه انبارهاي داده نياز به بررسي حجم عظيمي از داده را شامل ميشود. در نتيجه بار كاري اين نوع سرورها با كنترل نتيجه به روش استفاده و بررسي پرسوجوهاي قبلي بسيار كمتر ميشود و در نتيجه كارايي سيستم افزايش مييابد.
از آنجا كه تشخيص پوياي مجموعه پرسوجوهاي امن (بررسي آني تاريخچه پرسوجوهاي انجامشده)، يك فرآيند زمانبر است، در نتيجه استفاده از حالتهاي غيرپوياي كه معادل با اين روش باشند، مناسبتر است. حالت استاتيك قبل از اتصال به شبكه، مجموعهاي از پرسوجوهاي امن را مشخص ميكند (قبل از آنكه هر گونه پرسوجويي را دريافت كند).
اگر يك مجموعه از پرسوجوها امن باشند، در اين صورت هر زيرمجموعهاي از آن پرسوجوها نيز امن به حساب ميآيد. در هنگام اجرا و زماني كه سرور انباره داده، يك پرسوجو را دريافت ميكند، تنها در صورتي به آن پاسخ ميدهد كه آن پرسوجو در يكي از مجموعه پرسوجوهاي امن از قبل تعريف شده قرار داشته باشد. در غير اين صورت، آن پرسوجو مردود ميشود. از طرف ديگر، روش پرسوجوهاي امن ولي ثابت، در توليد مجموعه پرسوجوهاي امن، خيلي محتاط و محافظهكار است و در نتيجه ممكن است بعضي از پرسوجوها را مردود كند. در حالي كه مردود كردن آن ها ضروري نيست.
روش دادهگرا
با استفاده از روش دادهگرا، براي كنترل نتيجه، سرور انباره داده، دادههاي خام سرور را آشفته ميكند و پاسخ پرسوجوها را بر مبناي اين دادههاي آشفته، تا حد ممكن با دقت جواب ميدهد. همانطور كه در شكل 4 مشاهده ميشود، پروتكل جمعآوري داده ميتواند آشفتگي در داده را ايجاد و مديريت كند؛ مگر اينكه برنامه نياز داشته باشد كه دادههاي اصلي را در سرور انبار داده ذخيره كند. در اين موارد، براي استفاده از روش دادهگرا، سرور انبار داده بايد قبل از پردازش پرسوجو، دادهها را آشفته كند.
روش دادهگرا، فرض ميكند كه با آشفتهسازي ميتواند از افشاي دادههاي محرمانه، جلوگيري كند و بدون هيچ محدوديتي و بر مبناي دادههاي آشفته به همه پرسوجوها پاسخ دهد. تحقيقات نشان ميدهد كه پاسخهاي حاصل شده با استفاده از دادههاي آشفته هنوز هم براي ايجاد مدلهاي دادهكاوي نسبتاً دقيق، مناسب هستند.
مزايا و معايب
استفاده از هر يك از اين دو روش با توجه به كاربرد خاص آنها، نياز به رعايت نكات خاصي دارد. روش دادهگرا خود را موظف ميداند به همه پرسوجوها پاسخگو باشد. از طرفي، روش پرسوجوگرا معمولاً تعداد قابلتوجهي از پرسوجوها را مردود ميكند و اين بدان معنا است كه بعضي از سرورهاي دادهكاوي ممكن است نتوانند وظايف دادهكاوي خود را كامل كنند.
مزيت روش پرسوجوگرا در اين است كه در مقايسه با روش دادهگرا، پاسخهاي دقيقي توليد ميكند. وقتي سرور انباره داده به يك پرسوجو پاسخ ميدهد، جواب ارايه شده هميشه دقيق و درست است. در حالي كه در روش دادهگرا دقت پاسخ به پرسوجوها هميشه حالت تقريبي دارد و به همين سبب ممكن است براي دادهكاوي خيلي هم مناسب نباشد؛ به ويژه در جاهايي كه نياز به ايجاد خروجي خيلي دقيق وجود دارد. كارايي و سرعت بالا، يكي از مزيتهاي مهم روش پرسوجوگرا از نوع غيرپويا است؛ زيرا در اين روش به علت پيشمحاسبه خيلي از فرايندهاي محاسباتي زمانبر، هزينه زماني پاسخ به پرسوجو و به عبارتي زمان پاسخ به پرسوجو خيلي كوتاهتر است.
مدل پويا از نظر كارايي عملكرد ضعيفتري دارد و در عوض به تعداد بيشتري پرسوجو، پاسخگو است. با دريافت تعداد بيشتري پرسوجو سرور دادهكاوي بايد زمان بيشتري را براي بررسي تاريخچه پرسوجوهاي كامل شده صرف كند. روش دادهگرا هم كارايي كمي دارد؛ زيرا سربار محاسباتي ناشي از تخمين پاسخ پرسوجوها ميتواند چندين برابر مدت پاسخگويي به خود پرسوجو وقت تلف كند.
يك راه براي كارايي پروتكلهاي بهبود كنترل نتيجه، تركيب كردن روشهاي پرسوجوگرا و دادهگرا است. با معرفي الگوي پاسخدادن يا رد يك پرسوجو به روشهاي دادهگرا، روش تركيبي حاصل، به سرور انبار داده اجازه ميدهد بعضي از پرسوجوهاي نقضكننده حريم شخصي (نظير پرسوجوي Q3 در شكل3) را مردود كند.
در نتيجه، اين كار به طور مؤثري نياز به آشفتهسازي در دادهها را كاهش ميدهد و در عين حال همان سطح از حفاظت از دادهها، ارايه ميشود. چون دادهها به صورت آشفته ذخيره شده است، در نتيجه سرور موظف است پرسوجوهاي كمتري را مردود كند و از طرفي ميتواند براي اكثر پرسوجوها جواب تقريباً درستي ايجاد كند و در همان حال از دادههاي خصوصي افراد نيز حفاظت كند.
پروتكل به اشتراك گذاري اطلاعات
از آنجا كه سرورهاي دادهكاوي، مدلهاي دادهكاوي را بر مبناي سيستم خودشان ايجاد ميكند، در نتيجه هر يك از اين سرورها، تمايل دارد مدل دادهكاوي خود را با ديگران به اشتراك بگذارد، نه داده خام موجود در سرور انباره داده را كه براي ساير سرورهاي دادهكاوي نيز در دسترس است. مدلهاي دادهكاوي محلي، خودشان نيز ميتوانند از لحاظ نقض حريم شخصي، حساسيت ايجاد كنند؛ به ويژه در مواردي كه مدلهاي محلي براي مورد خاصي ايجاد شدهاند و كاربرد كلي ندارند.
براي حفاظت از حريم شخصي در سيستمهاي دادهكاوي محلي، بايد مكانيزمهايي وجود داشته باشد تا جلوي افشاي اطلاعات اختصاصي از مدلهاي دادهكاوي محلي گرفته شود. اين مكانيزم را پروتكل به اشتراكگذاري اطلاعات مينامند كه دوباره براي رعايت اصل «ارايه حداقل نيازهاي ضروري»، پيريزي شده است.
هدف از اين پروتكل اين است كه سرورهاي دادهكاوي در سيستمهاي مختلف بتوانند در ايجاد يك مدل دادهكاوي مشترك سهيم شوند و براي رسيدن به اين هدف نيز حداقل دادههاي اختصاصي خود را در مورد مدلهاي دادهكاوي محلي در زمينه به اشتراكگذاري اطلاعات در آن پلتفرم مشترك استفاده كنند.
تعداد زيادي پروتكل به اشتراك گذاري اطلاعات براي استفاده در برنامههايي كه وظيفهاي جز دادهكاوي دارند، ارائه شده است؛ نظير برنامههاي تعامل بين پايگاههاي داده. به اشتراكگذاري اطلاعات براي بسياري از سيستمهاي توزيع شده، اهميتي حياتي دارد و بيشتر برنامهها نيز روي طراحي پروتكلهاي ويژه به اشتراكگذاري اطلاعات براي فعاليتهاي دادهكاوي متمركز است.
يكي از مهمترين نگرانيها در ايجاد سيستمهاي به اشتراكگذاري داده، ايجاد امكان دفاع در برابر سيستمهاي نفوذياي است كه با استفاده از اختيارت، كاملاً به طور دلخواه و متناسب با نيازهاي خود، عمل ميكنند. مدل دفاع، به مدل نفوذ (مجموعهاي از فرضيات در مورد هدف نفودگر و نحوه عمل يا رفتار او) بستگي دارد. دو مدل از انواع معروف نفوذ، با نام روش semihonest (دورو) و beyond semihonest (فراتر از دو رو) شناخته ميشود.
نفوذ به روش semihonest
يك نفوذگر در صورتي semihonest شناخته ميشود كه دقيقاً از پروتكلهاي طراحي شده تبعيت كند، ولي با انجام همه محاسبات و برقراري همه ارتباطات لازم، روشهايي را براي رسيدن به اطلاعات محرمانه شناسايي كند.
ثابت شده است كه رمزنگاري به روش cryptographic ميتواند بهطور مؤثري جلوي نفوذ به روش semihonest را سد كند. در اين روش هر سرور دادهكاوي، مدلدادهكاوي مربوط به خود را رمزنگاري ميكند و مدل رمزنگاري شده را با ساير سرورهاي دادهكاوي مبادله ميكند.
ويژگيهاي بعضي از الگوهاي رمزنگاري نظير سيستمهاي مبتني بر الگوريتم RSA يا Rivest-Shaminr-Adleman، اين امكان را فراهم ميآورد تا بتوان براي سرورهاي دادهكاوي، الگوريتمهايي ايجاد كرد كه بعضي از وظايف دادهكاوي معين را انجام دهند و بدون اطلاع از كليد خصوصي ساير موجوديتها، بعضي از وظايف تعريفشده براي آنها بهعنوان يك سرور دادهكاوي را عملياتي كنند. اين وظايف شامل دستهبندي، همراه كردن قوانين دادهكاوي، clustering دادهها، فيلتركردن تعاملي، استفاده از عملگرهايي نظير intersection ،union و element reductionاست.
از آنجا كه در اين روش بدون دانستن كليدهاي private، دسترسي به مدلهاي دادهكاوي اصلي، با استفاده از مقادير رمزنگاري شده موجود امكانپذير نيست، ميتوان از اين روش بهعنوان دفاعي امن در برابر نفوذهاي semihonest استفاده كرد. چندي است كه محققان دستهبندي روشهاي رمزنگاري cryptographic را براي استفاده در سيستمهايي با تنظيمات مختلف، كاملكردهاند.
نفوذ به روش beyond semihonest
اگر سيستم نفوذگر، براي نفوذ پروتكل تعيينشده را ناديده بگيرد يا داده ورودي خود را تغيير دهد يا از اين دو روش استفاده كند، در اين صورت به روش نفوذ مورد استفاده، beyond semihonest ميگوييم. از آنجا كه دفاع در برابر اين روش نفوذ، سخت يا حتي غيرممكن است، نحوه برخورد با اين روشها نيز به مدلهاي كاملتري نياز دارد.
يكي از اين مدلها، روش نفوذ هدفدار است كه براي نفوذ، اهداف مورد نظر را با هم تركيب كرده و با تركيب ميكند نتايج با اطلاعات محرمانه موجود در مورد ساير موجوديتها، از فرايند دادهكاوي، نتايج دقيقي را به دست ميآورد. سپس يك روش برنامهريزيشده طراحي ميشود تا در برابر نفوذهايي كه بر مبناي نتايج دقيق حاصل از دادهكاوي و تركيب آن با اطلاعات محرمانه موجود، طرحريزي شده است، مقابله شود.
ايده اصلي اين است كه پروتكلي براي به اشتراك گذاشتن دادهها ايجاد شود. به نحوي كه هيچ نفوذگري نتواند در آن واحد از فرايند دادهكاوي هم به نتايج دقيقي دست پيدا كند و هم به حريم اطلاعات محرمانه سرورهاي ديگر دسترسي پيدا كند. با اين روش، نفوذگرهايي كه بيشتر تمركز خود را روي دقت نتايج حاصل از دادهكاوي متمركز كردهاند، نميتوانند براي ايجاد دقت مورد نظر به اطلاعات محرمانه ساير سرورها، دسترسي پيدا كنند.
زمينههاي موجود براي بررسي بيشتر
موضوعات زيادي وجود دارد كه براي تضمين دسترسي به حداكثر كارايي از طريق تكنيكهاي گفته شده، بايد مورد بررسي بيشتر قرار گيرند.
پيادهسازي و يكپارچگي پروتكلها
بدون شك، بسياري از سيستمها به استفاده از اين سه پروتكل نياز دارند، ولي تحقيقات كمي وجود دارد كه نياز به اين سيستمها را آشكار كرده باشد. معماري پيشنهادي و بسط داده شده توسط ما ميتواند به عنوان چهارچوب و مبنايي براي مطالعه تعامل و روابط متقابل بين اين پروتكلها در نظر گرفته شود. الگوهايي نظير اين مورد ميتواند راهگشاي روشهاي كاراتر و مؤثرتر براي پيادهسازي الگوهاي مناسب باشد.
نيازمنديهاي يك سيستم ايجاد شده با سطوح دسترسي متفاوت براي رعايت اصول حريم شخصي
روشهاي حفظ حريم شخصي در تكنيكهاي دادهكاوي، به رعايت اصول درجهبندي حفاظت از حريم شخصي متناسب با نياز تأمينكنندگان داده بستگي دارد. بيشتر تحقيقات كنوني در مورد حفظ حريم شخصي در سيستمهاي شبيه به هم و معمول استوار است، كه در آنها همه مالكان داده به يك اندازه به حفاظت از دادههاي مرتبط با حريم شخصي نياز دارند.
همچنين فرض ميشود كه سطح محافظت در مورد همه دادهها نيز يكسان است. چنين فرضيهاي كاملاً غيرواقعي است و در عمل ممكن است به كاهش كارايي سيستمها منجر شود. طراحي و پيادهسازي تكنيكهايي كه نيازمنديهاي يك سيستم با سطوح مختلف رعايت حريم شخصي را رعايت كند، يكي از زمينههايي است كه نتايج بالقوه زيادي براي آن پيشبيني شدهاست.
ارزيابي حريم شخصي
با توجه به افزايش دقت، به قيمت كاهش سطح حفاظت، بايد براي حفظ حريم شخصي در سيستمهاي دادهكاوي مكانيزمهايي ايجاد شود كه بتوانند سطح حفاظت از حريم شخصي را ارزيابي كنند. هرچند كارهاي جديد زيادي روي اندازهگيري سطح حفاظت از حريم شخصي متمركز شده است، هنوز هيچ كسي روشي را ارايه نكرده است كه به صورت عمومي بهعنوان يك تكنيك مشترك براي ارزيابي سطح حفاظت از حريم شخصي در سيستمهاي دادهكاوي پذيرفته شود. يك سيستم ارزيابي سطح حفاظت از حريم شخصي، بايد سه مقوله زير را در نظر داشته باشد.
1- تنظيمات سيستم را در نظر بگيرد (علاقمندي نفوذگرها به مقدار دادهاي مربوط به صفات دادهاي متفاوت، در سطوح متفاوتي قرار دارد. مثلاً علاقه زيادي به شناسايي بيماراني وجود دارد كه بيماريهاي واگيردار دارند).
2- بايد سطوح حفاظتي متعددي كه توسط هر تهيه كننده داده در مورد هر يك از عناصر دادهاي درخواست ميشود، در نظر گرفته شود(براي مثال بعضيها ممكن است كه اطلاعات مربوط به سن خود را بهعنوان داده محرمانه در نظر گيرند. در حاليكه ديگران تمايل داشته باشند، اين اطلاعات افشا شود).
3- مانند همه موارد قبل بايد از قانون «حداقل نيازهاي ضروري» تبعيت شود.
يك مطالعه كامل در زمينه ارزيابي حفظ حريم شخصي نشان ميدهد كه هر سه پروتكل مذكور نقش زيادي در بهبود حفظ حريم شخصي در تكنيكهاي دادهكاوي دارند.
شناسايي بينظميها (anomaly)
يك برنامه ساده دادهكاوي موظف است بينظميهاي مجموعههاي دادهاي را شناسايي كند؛ همانطور كه از دادههاي فايلهاي log براي شناسايي هر گونه نفوذ در سيستم استفاده ميشود. با اين حال تحقيقات كمي وجود دارد كه به شناسايي نفوذهاي انجام شده از طريق بررسي anomalyها، بپردازد.
تحقيق روي آنومالي، يكي از زمينههاي مهم در سيستمهاي دادهكاوي است و ميتواند به ايجاد قوانين متفاوتي در زمينه امنيت، امور مالي و امور پزشكي بيانجامد. بهطور كلي سرمايهگذاري در زمينههايي نظير طراحي تكنيكهاي محافظت از حريم شخصي براي شناسايي anomaly در سيستمهاي دادهكاوي، زمينه كاري بسيار مفيدي به حساب ميآيد.
سطوح محافظتي چندگانه
در بعضي موارد ايجاد چندين لايه امنيتي براي اطلاعات محرمانه، ضروري به نظر ميرسد. برآورد نياز به محافظت در اولين سطح در مورد ارزش دادهها و در دومين سطح در مورد حساسيت دادهها، انجام ميشود (يعني دانستن اينكه يك مدخل دادهاي محرمانه است يا نه).
بيشتر تحقيقات كنوني، روي محافظت در اولين سطح متمركز هستند و فرض ميكنند كه مقدار فاكتور دوم براي همه مدخلها مشخص است. البته تحقيقاتي نيز انجام شده است تا نحوه محافظت از اطلاعات محرمانه در سطح دوم و حتي سطوح بعد نيز مشخص شود.
جمعبندي
كار ما روي اولين مرحله در تعيين مشكلات اصلي و سيستماتيك در محافظت از حريم شخصي در سيستمهاي دادهكاوي متمركز شده است. تحقيقات بيشتر در اين زمينه به بررسي نقاط قوت اين معماري و اصول طراحي تعريف شده در اين مقاله، ميپردازد. تاكنون بيشتر گرايشها به سمت حفاظت حريم شخصي در سيستمهاي دادهكاوي بوده است، ولي كاملاً مشخص است كه اين ايدهها به حجم كار زيادي نياز دارند تا به سيستمهاي عملياتي واقعي تبديل شوند.
براي پيادهسازي سيستمهاي حفاظت از حريم شخصي روي سيستمهاي واقعي، به مطالعات زيادي نياز است تا بتوان با تكيه بر آن نگراني مالكان داده در مورد حفظ حريم شخصي را كاملاً برطرف كرد. البته زمينههاي كاري حساستر به ايجاد و مديريت برنامههايي مربوط ميشود كه در زمينه بهداشت و درمان، تحليل بازار و امور مالي استفاده خواهند شد. اميدواريم كساني هم پيدا شوند كه به كار و بررسي در مورد اين زمينهها بپردازند.