این نوشته برگرفته از یک کارگاه آموزشی است که توسط IWCIT و برای دانشگاههایی از جمله شریف برگزار شد.
مدرس این دوره، دکتر Gautam Kamath از دانشگاه Waterloo بودند. در پایان این نوشته میتوانید لینک جلسه را پیدا کنید.
در این نوشته با مقدمات حریم خصوصی تفاضلی آشنا خواهید شد و سپس به کاربردها و ضعفهای آن خواهیم پرداخت.
حریم خصوصی
بر کسی پوشیده نیست که امروزه فضای دیجیتال کاربرد گستردهای در زندگی ما دارد و همهی ما در حال استفاده از آن هستیم. با پیدایش خدمات مختلف در شبکهی جهانی اینترنت، کاربران روز به روز از این خدمات استفاده میکنند و از طرفی این سرویسها برای بهبود عملکرد خود و ارائهی خدمات بهتر به کاربران، اطلاعات آنها را جمعآوری میکنند.
کاربران با قرار دادن اطلاعات خود در اختیار شرکتهای مختلف به منظور دریافت خدمات بهتر، مشکلی ندارند اما زمانی مشکل پیش میآید که شرکتها به صورت خواسته و یا ناخواسته این اطلاعات را منتشر میکنند.
از این رو در کشورهای مختلف، قوانینی وضع شده است که شرکتها را موظف به رعایت حریم خصوصی کاربران میکنند و همین موضوع باعث شده است که توجههای بسیاری به سمت این حوزه کشیده شود که منجر به پیدایش تحقیقات متفاوتی در این زمینه شده است.
گمنامسازی
در ابتدای ظهور این زمینه، شرکتهای مختلف به منظور پیاده کردن حریم خصوصی مشتریان خود، به روشهایی مثل گمنامی یا گمنامسازی (Anonymisation) روی آوردند. در واقع گمنامسازی را میتوان به عنوان ابتداییترین روشی در نظر گرفت که به منظور اعمال حریم خصوصی به کار گرفته شد.
منظور از گمنامسازی این است که شناسههای کاربران و یا اطلاعاتی را که کاربران را به صورت یکتا مشخص میکند برمیدارند و به جای آن یک شناسهی عددی یکتا قرار میدهند؛ در واقع در این حالت، کسی با نگاه کردن به یک واحد اطلاعات از داده، نمیتواند تشخیص دهد که آن داده متعلق به کیست.
تا مدتها تصور میشد که گمنامسازی روش مناسبی برای مخفی کردن هویت کاربران و حفظ حریم خصوصی آنها است اما دیری نپایید که ضعفهای این روش مشخص شد.
برای مثال در یک بازهی زمانی شرکت Netflix تصمیم گرفت مسابقهای برگزار کند که در طی آن بتواند سایر فیلمهای موردعلاقهی کاربران را شناسایی کند، بدین منظور او دادهها را منتشر کرد اما به جای نام کاربران، یک شناسهي تصادفی اما یکتا قرار داد و انتظار داشت که دادهها گمنام بمانند اما طولی نکشید که تعدادی از محققان توانستند بالاتر از ۷۰ درصد این افراد مرتبط با دادهها را شناسایی کنند.
در واقع محققان برای کشف شخصیت مرتبط با هر یک از دادههای منتشر شده، از اطلاعات موجود در سایت IMDB استفاده کردند زیرا این سایت نیز در حوزهی شرکت Netflix فعالیت می کند ولی اطلاعات مربوط به نظرات کاربران را به صورت عمومی منتشر میکند. یعنی محققان از طریق تطبیق دادن این دو عدد پایگاه داده موفق شدند که تشخیص دهند که هر شخصی، چه فیلمی را از طریق Netflix مشاهده کرده است.
البته این تنها موردی نیست که ضعف گمنامسازی در آن آشکار شده است بلکه موارد متعدد دیگر، منجر به این شد که محققان و متخصصان به صورت عملی وارد این حوزه شوند و تصمیم بگیرند که یک روش امن تر ابداع کنند.
حریم خصوصی در هوش مصنوعی
رشد روزافزون هوش مصنوعی در صنایع و زمینههای متنوع باعث شده است که امنیت آن به صورت جدی مدنظر قرار گیرد. در میان جنبههای مختلف امنیت، می توان به حفظ حریم خصوصی کاربران اشاره کرد.
همان گونه که احتمالا آشنایی دارید، برای آموزش یک مدل هوش مصنوعی باید تعدادی داده به عنوان دادهی آموزشی در اختیار مدل قرار گیرد تا مدل یاد بگیرد که چگونه باید نتایج را محاسبه کند. دادههای آموزشی باید دادههای واقعی باشند زیرا این مدلها نهایتا قرار است که در یک محیط عملی به کار گرفته شوند از این رو معمولا برای آموزش این مدلها از اطلاعات کاربران واقعی استفاده میشود.
به شکل طبیعی، همانگونه که یک زمینه به سرعت پیشرفت میکند، ضعفهای آن نیز سریعتر مشخص میشوند و هوش مصنوعی نیز از این قضیه مستثناء نبود! بعد از گذشت چند سال از پیشرفتهای هوش مصنوعی، عدهای متوجه شدند که اگر قسمتی از یک دادهی آموزشی را به یک مدل هوش مصنوعی بدهند، به احتمال نسبتا زیادی تمامی اطلاعات آن دادهی آموزشی را در خروجی نمایش خواهد داد. در نتیجه اگر ما برای آموزش مدل خود از دادههای خصوصی کاربران استفاده کرده باشیم، علی رغم این که مدل به خودی خود حاوی اطلاعات آموزشی نیست، حریم خصوصی را نقض نمیکند ، اما یک مهاجم میتواند با دادن بخشی(که ممکن است خصوصی باشد یا نباشد) از یک دادهی آموزشی به مدل هوش مصنوعی، میتواند به احتمال خوبی اطلاعات کاملی از آن داده به دست آورد.
این مورد در مدل GPT-2 که یک مدل یادگیری ماشین است مشاهده و تایید شده است. برای مثال کاربران توانستند در یکی از نمونههای این مدل، صرفا با وارد کردن بخشی از کتاب هری پاتر، سه صفحهی بعدی این کتاب را بدون هیچ نقصی و به عنوان خروجی، از مدل آموزش داده شده دریافت کنند.
بنابراین حریم خصوصی حتی در هوش مصنوعی هم حائز اهمیت است و به عنوان حوزهای که در حال حاضر پذیرای تحقیقات نوین و تازه است مورد توجه متخصصان قرار گرفته است.
روشهای جایگزین گمنامسازی
پس از مشخص شدن ضعفهای گمنامسازی، تلاشهای فراوانی جهت بهبود و جایگزینی آن صورت گرفته است.
یکی از این روشها که احتمالا به ذهن بسیاری از ما نیز رسیده باشد، محدود کردن تعداد پرسمانها (Queries) است. اما میتوان نشان داد که در برخی موارد، حتی اجرای یک پرسمان نیز ممکن است منجر به نقض حریم خصوصی شود.
برای روشن شدن این مطلب به بیان یک مثال بسنده میکنیم: فرض کنیم که یک پایگاه دادهی آماری (Statistical Database) در اختیار داریم که اطلاعات افراد به همراه بیماری آنها ثبت شده است و همچنین تنها یک بیمار مونث در آن وجود دارد.
مهاجم به راحتی و با استفاده از پرسمان زیر میتواند بفهمد که آیا خانمی که در این پایگاه داده وجود دارد، سرطان دارد یا خیر:
- چند نفر در این پایگاه داده وجود دارد که هم چنسیت مونث داشته باشند و هم سرطان داشته باشند؟
اگر پاسخ پرسمان بالا برابر با ۱ باشد که مهاجم می فهمد شخص مورد نظر دارای سرطان است و اگر پاسخ برابر با ۰ باشد، نتیجه میگیرد که شخص مورد نظر فاقد ابتلا به بیماری سرطان است.
توجه: چون پایگاه داده را به صورت یک پایگاه دادهي آماری در نظر گرفتیم، مهاجم قادر نیست که به صورت مستقیم در مورد آن شخص سوالی بپرسد.
قضیهی بازسازی پایگاه داده
در دنیای حریم خصوصی قضیهای تحت عنوان بازسازی پایگاه داده (Database Reconstruction Theorem) وجود دارد. این قضیه بیان میکند که اگر مهاجم بتواند به اندازهی کافی پرسمان ارسال کند، تحت هر سازکار دفاعی و هر شرایطی، میتواند تمامی اطلاعات پایگاه داده را به دست آورد. حتی اگر پایگاه داده با سازوکارهایی همچون افزودن نویز (Noise) محافظت شده باشد.
به صورت دقیقتر اگر بخواهیم این قضیه را به شکل ریاضی بیان کنیم: اگر فرض کنیم که n عدد رکورد در پایگاه داده داریم و مقدار نویز اضافه شده به اطلاعات را برابر با E در نظر بگیریم، مهاجم میتواند همهی اطلاعات پایگاه داده را به جز 4*E عدد از آنها را بازسازی کند اگر این قابلیت را داشته باشد که به میزان ۲ به توان n درخواست بفرستد:
Noise = E & Number of records = n & Number of Queries = 2n ==> Reconstructed Data = all - 4E
دقت کنید که نمیتوان به هر میزان دلخواهی نویز اضافه کرد زیرا در این صورت اطلاعات پایگاه داده فاقد ارزش خواهند شد.
در سالهای بعد توانستند نتایج این قضیه را به شکل زیر بهبود بخشند:Noise = O(n1/2) & Number of records = n & Number of Queries = O(n) ==> Reconstructed Data = all - O(1)
توجه: دقت کنید که این قضیه از در قید و بند هیچ نوع سازکار دفاعی و نوع نویزی نیست و در هر حالتی برقرار است.
ظهور حریم خصوصی تفاضلی
پس از ناکام ماندن تلاشهای قبلی برای حفظ حریم خصوصی، محققان دست به دامن ریاضیات شدند و همگی سعی کردند به نوعی امنیت هر سازوکاری را با استفاده از ریاضیات بیان کنند.
مشکل عمدهای که در این حوزه وجود داشت این بود که دانش مهاجم و طریقهی حملهی او را نمیتوان با روش ریاضی به صورت دقیق بیان کرد. به همین دلیل بعضی از روشها سعی کردند که مهاجم را با استفاده از یک مدل ریاضی بیان کنند که با توجه به محدود بودن هر گونه مدلی، به صورت ناخواسته باید فرض میشد که مهاجم به چهارچوبی که مدل تعیین میکند محدود است و قدرت اضافهتری ندارد که طبیعی است خلاف واقعیت است. همین نکته باعث شد که تعاریف و روشهای متفاوت پس از چندی شکست بخورند.
از آنجایی که قبل از بیان یک روش و ارزیابی آن به روش ریاضی نیاز است که ابتدا حریم خصوصی را به شکل ریاضی تعریف کنیم، تلاشهایی نیز در این زمینه صورت گرفت که هر کدام سعی داشت به نحوی حریم خصوصی را به شکل ریاضی پیاده کند.
موثرترین کار در سال ۲۰۰۳ صورت گرفت که در واقع میتوان آن را سرآغاز حرکت به سمت حریم خصوصی تفاضلی (Differential Privacy) دانست.
قبل از تعریف حریم خصوصی تفاضلی، نیاز است که شما با بعضی از مقدمات آن آشنایی داشته باشید، از این رو ابتدا برخی از تعاریف مورد نیاز را بیان میکنیم و سپس به حریم خصوصی تفاضلی میپردازیم.
همسایگی مجموعه داده
دو مجموعه داده (Dataset) را همسایه مینامیم اگر و تنها اگر در یک رکورد (Record) یا قلم داده متفاوت باشند.
صرفا برای ارائهی شهود و کمک به درک مطلب، چند مثال سطحی بیان میکنیم.
فرض کنید که مجموعههای زیر را داشته باشیم:
- A = {1, 2, 3, 4}
- B = {1, 2, 3}
- C = {1, 2, 3, 4, 5}
- {D = {1, 2, 3, 7
- E = {8, 9 , 4}
حال با داشتن این مجموعهها میتوان همسایگیها را به شکل زیر تعیین کرد:
- مجموعهی A فقط با مجموعههای B و C و D همسایه است.
- مجموعهی B فقط با مجموعههای A و D همسایه است.
- مجموعهی C فقط با مجموعهی A همسایه است.
- مجموعهی D فقط با مجموعههای A و B همسایه است.
- مجموعهی E با هیچ یک از مجموعهها همسایه نیست.
حریم خصوصی تفاضلی(محض)
قبل از تعریف حریم خصوصی تفاضلی، درک و فهم این نکته مهم است که حریم خصوصی تفاضلی تنها یک تعریف است و هیچ راهکاری در اختیار شما قرار نمیدهد اما قدرت آن به این دلیل است که اگر یک راهکار بتواند این تعریف را ارضا کند آنگاه به صورت قطعی این باور را به ما میدهد که دارای چه میزان از حریم خصوصی است.
حریم خصوصی تفاضلی را میتوان به شکل زیر بیان کرد:
فرض کنید دو مجموعه دادهی همسایهی «الف» و «ب» و همچنین یک الگوریتم دلخواه همانند M داشته باشیم، اگر یکی از این دو مجموعه داده را به عنوان ورودی به M دادیم، مهاجم نباید از روی خروجی M بتواند حدس بزند که کدام مجموعه داده را به الگوریتم دادهایم.
دقت کنید که مهاجم به هر دو مجموعهی داده به صورت کامل دسترسی دارد ولی باید از روی خروجی M حدس بزند که کدام یک به عنوان ورودی به الگوریتم M داده شده است.
قدرت و شهرت حریم خصوصی به دلیل بیان حریم خصوصی به زبان ریاضی است اما تا به الآن صرفا به صورت عامیانه آن را بیان کردیم.
میتوانیم حریم خصوصی را به شکل رسمی و به زبان ریاضی بیان کنیم:
X = Set of data points
Number of Records in X = n
M: Xn ----> Y
با در نظر گرفتن نمادهای بالا، میگوییم الگوریتم M حافظ حریم خصوصی با عامل ε است اگر برای هر دو مجموعه دادهی همسایهی ممکن همانند D و D‘ و به ازای هر زیرمجموعهی ممکن از خروجی الگوریتم M همانند S داشته باشیم:
روشهای حریم خصوصی تفاضلی محض
حال که با تعریف حریم خصوصی تفاضلی آشنا شدهاید، خالی از لطف نیست که یک راهکار جهت ارضای تعریف حریم خصوصی تفاضلی نیز بیان کنیم.
قبل از پرداختن به سازوکارهای حریم خصوصی تفاضلی، نیاز است که با چند تعریف و مقدمه آشنا شوید.
توزیع لاپلاس(Laplace Distribution)
در اینجا قصد نداریم که به تعریف توزیع لاپلاس بپردازیم بلکه صرفا جهت یادآوری نیاز است که رابطهی این توزیع و نمودار آن را یک بار مشاهده کنید:
\( f(x\mid \mu ,b)={\frac {1}{2b}}\exp \left(-{\frac {|x-\mu |}{b}}\right)={\frac {1}{2b}}\left\{{\begin{matrix}\exp \left(-{\frac {\mu -x}{b}}\right)&{\text{if }}x<\mu \\[8pt]\exp \left(-{\frac {x-\mu }{b}}\right)&{\text{if }}x\geq \mu \end{matrix}}\right.\)اگر جزییات این توزیع را به خاطر نمیآورید، نگران نباشید. همین که رابطه و نمودار آن را در ذهن داشته باشید، کفایت میکند.
معیار سطح ۱ (l1 Sensitivity)
از معیار سطح ۱ برای سنجیدن میزان تفاوت دو بردار استفاده میشود. با بیان یک مثال، این مفهوم را به سرعت به شما منتقل خواهیم کرد.
فرض کنید دو بردار A و B به شکل زیر داریم:
A = (1, 3, 4)
B = (4, 1, 9)
حال معیار سطح ۱ را میتوان به شکل زیر حساب کرد:
\(|| A – B ||_1 = |1 – 4| + |3 – 1| + |4 – 9| = 3 + 2 + 5 = 10\)معیار سطح ۲ (l2 Sensitivity)
معیار سطح ۲ نیز همان هدف معیار سطح ۱، یعنی سنجیدن تفاوت دو بردار را دنبال میکند اما به شیوهای متفاوت این کار را انجام میدهد که آن را برای کاربردهای خاصی مناسب میسازد.
در این جا نیز با بیان یک مثال ساده، این مفهوم را به شما منتقل میکنیم. اگر همان بردارهای مطرح شده در بخش قبل(معیار سطح ۱) را در نظر بگیرید، آنگاه معیار سطح ۲ آن را میتوان به شکل زیر حساب کرد:
\(|| A – B ||_2 = \sqrt{|1-4|^2 + |3 – 1|^2 + |4-9|^2} = \sqrt{9 + 4 + 25} = \sqrt{38} \approx 6\)در واقع معیار سطح ۲، همان فاصلهی اقلیدسی است که احتمالا در دبیرستان نیز با آن آشنا شدهاید.
دقت کنید که همواره مقدار معیار سطح ۲، کمتر از معیار سطح ۱ است. این ویژگی زمان حائز اهمیت است که ما مقدار نویز را متناسب با یکی از این معیارها اضافه کنیم! یعنی اگر یکبار متناسب با معیار سطح ۲ و بار دیگر متناسب با معیار سطح ۱ نویز اضافه کنیم، در حالت اول نویز کمتری به دادهها اضافه خواهد شد.
صرفا برای این که از گذارهی بالا یک شهود به دست آورده باشید، برای بردارهای دو بعد آن را به شکل زیر اثبات میکنیم:
\(||A – B ||_2 = \sqrt{|a_1 – b_1|^2 + |a_2 – b_2|^2} \le \sqrt{|a_1 – b_1|^2 + 2|a_1 – b_1||a_2 – b_2| +|a_2 – b_2|^2} = \\ \sqrt{(|a_1 – b_1| + |a_2 – b_2|)^2} = |a_1 – b_1| + |a_2 – b_2| = ||A-B||_1 \Longrightarrow ||A-B||_2 \le ||A-B||_1\)مکانیزم لاپلاس
سازوکار لاپلاس را میتوان اولین و مرسومترین سازوکاری دانست که میتواند به حریم خصوصی تفاضلی جامهی عمل بپوشاند.
در واقع در این سازوکار، با افزودن نویز تحت توزیع لاپلاس، به حریم خصوصی تفاضلی میرسد.
اگر فرض کنیم که الگویتم آماری ما f باشد و بخواهیم به نحوی به آن نویز اضافه کنیم که حریم خصوصی دادههای زیرین را رعایت کرده باشیم، مطابق با سازوکار لاپلاس ابتدا باید معیار سطح ۱ آن را مشخص کنیم تا بفهمیم که این تابع چه مقدار نسبت به تغییر یک قلم داده(که حریم خصوصی تفاضلی بیان میکند) حساس است. این معیار حساسیت را میتوان به شکل زیر خلاصه کرد:
\( X \& X^\prime \textrm{are two neighbour dataset:} \Delta^f_1 = \max_{X \& X^\prime}||f(X)-f(X^\prime)|| \)به صورت کلی میتوان اثبات کرد که اگر یک نویز با توزیع لاپلاس دارای میانهی ε-۱ اضافه کنیم آنگاه الگوریتم حاصل حافظ حریم خصوصی با عامل ε خواهد بود؛ این قضیه را میتوان به شکل ریاضی نیز بیان کرد:
\( f(X) + Z \land Z \sim Laplace(\frac{\Delta^f_1}{\epsilon}) \Longrightarrow M \;\textrm{is}\; \epsilon-DP\)نکاتی در مورد حریم خصوصی تفاضلی محض
حال که درک مناسبی از حریم خصوصی تفاضلی پیدا کردید، در اینجا به بیان برخی از نکات حریم خصوصی تفاضلی میپردازیم. دقت کنید که این نکات مستقل از سازوکار لاپلاس هستند و در مورد همهی سازوکارها صادق است:
- حریم خصوصی تفاضلی هیچ وقت نمیگوید که آیا روش شما حافظ حریم خصوصی است یا خیر بلکه میگوید روش شما تا چه اندازه، میتواند حریم خصوصی را حفظ کند. میزان حریم خصوصی به وسیلهی ε کنترل میشود.
- برای مثال اگر ε = ۰ باشد آنگاه به صورت کامل حریم خصوصی را رعایت کردهایم اما تابع M عملا هیچ کاربردی ندارد زیرا دادهها به دلیل نویز زیاد، ارزش خود را از دست دادهاند.
- برای مثال اگر ε = ۱ آنگاه به میزان خوبی هم حریم خصوصی را حفظ کردهایم و هم کارایی را.
- برای مثال اگر ε = ۸ آنگاه حریم خصوصی کمی داریم اما کارایی خوبی خواهیم داشت.
- به طور کلی، هر چقدر ε کوچکتر باشد حریم خصوصی تفاضلی بیشتری رعایت شده است اما نویز افزوده شده نیز بیشتر میشود و در نتیجه کارايي دادهها پایین میآید.
- طبیعی است نمیتوان به شکل همزمان هم یک کارایی عالی و هم یک حریم خصوصی عالی داشت زیرا این دو با هم بده-بستان خواهند داشت.
ویژگیهای حریم خصوصی تفاضلی محض
در میان ویژگیهای مثبتی که حریم خصوصی تفاضلی دارد میتوان چند مورد را که باعث برتری حریم خصوصی تفاضلی نسبت به سایر تعاریف شده است را به شکل زیر بیان کرد:
- بعد از اعمال حریم خصوصی تفاضلی، برگرداندن تاثیر آن غیر ممکن است و در نتیجه به ما این اطمینان را میدهد که حریم خصوصی در مقابل هرگونه پردازش پسین (Post Processing) حفاظت شده است.
- اگر M حافظ حریم خصوصی با عامل ε باشد آنگاه هر تغییری که در خروجی M داده شود باز هم با عامل ε حافظ حریم خصوصی خواهد بود.
- اگر دو مجموعه داده، به جای یک قلم داده، در k عدد داده تفاوت داشته باشند آنگاه حریم خصوصی با عامل kε حفظ خواهد شد.
- اگر به جای یک پرسمان، k عدد پرسمان از پایگاه داده پرسیده شود آنگاه مجموعهی جوابها همچنان با عامل kε حافظ حریم خصوصی خواهند بود.
محدودیتهای حریم خصوصی تفاضلی
در اینجا به برخی از مواردی اشاره میکنیم که حریم تفاضلی قادر به مدیریت آنها نیست. البته به نظر نویسنده، این محدودیتها را نه تنها حریم خصوصی تفاضلی بلکه هیچ روش دیگری نیز نمیتواند کنترل کند زیرا در اصل به نوعی در تناقض با حریم خصوصی هستند.
- رهگیری ارتباط(Contact Tracing): این موقعیت را با یک مثال تشریح میکنیم؛ فرض کنید که ما یک پایگاه داده در اختیار داریم که تعدادی از افراد ثبت شده در پایگاه داده مریض هستند. حال ما میخواهیم، به دلیل مسری بودن بیماری، افرادی را که در ارتباط با آنها بودهاند پیدا و قرنطینه کنیم. در این شرایط ما به هیچ وجه نمیتوانیم حریم خصوصی را فراهم کنیم زیرا باید دقیقا هویت افرادی که مظنون به بیماری هستند را فاش کنیم تا بتوانیم آنها را پیدا کنیم. در واقع حریم خصوصی تفاضلی بیشتر برای حفظ خصوصیتهای آماری پایگاه داده کاربرد دارد و در مواردی که نیاز است هویت افراد فاش شود، حریم خصوصی تفاضلی نمیتواند کاری از پیش ببرد.
- اسرار خارجی: فرض کنید که آقای «الف» یک شخص سیگاری است و همه در مورد آن اطلاع داریم. اگر یک شرکت در طی یک تحقیق اثبات کند که افراد سیگاری به احتمال زیادی سرطانی هستند، آنگاه همهی ما میفهمیم که آقای «الف» نیز به احتمال زیادی دارای سرطان است. حال چه آقای «الف» در تحقیقات این شرکت، همکاری کرده باشد چه نکرده باشد، هیچ تاثیری ندارد. در واقع یعنی اگر آقای «الف» در تحقیقات شرکت همکاری کرده باشد حتی اگر شرکت از حریم خصوصی تفاضلی برای انتشار نتایج استفاده کند، باز هم ما می فهمیم که احتمال ابتلای آقای «الف» به سرطان بسیار بالا است زیرا همه میدانیم که او سیگاری است؛ در این مورد جملهی مشهور زیر زبانزد است:
Differential Privacy protects your secrets and not secrets about you
حریم خصوصی تفاضلی محلی (Local DP)
چنانچه که نویز به خروجی تابع اضافه شود، به آن حریم خصوصی تفاضلی مرکزی (Central DP) گفته میشود اما اگر نویز ابتدا به تک تک دادهها افزوده شود و سپس این دادهها به عنوان ورودی به تابع داده شود، به آن حریم خصوصی تفاضلی محلی (Local DP) گفته میشود.
مزیت حریم خصوصی تفاضلی محلی این است که میتوان آن را در سمت کارخواه و قبل از رسیدن اطلاعات به دست کارگزار اعمال کرد.
حریم خصوصی تفاضلی تقریبی (Approximate DP)
در عمل، پیادهسازی حریم خصوصی تفاضلی محض بسیار سخت است زیرا:
- باید کوچکترین احتمالات هم در نظر گرفته شوند و مطمئن شد که در رابطهی حریم خصوصی تفاضلی محض صدق میکنند.
- ما عموما بیش از یک پرسمان از پایگاه دادهها میپرسیم و اگر مثلا قرار باشد که k عدد پرسمان ارسال کنیم، آنگاه برای این که نتیجهی نهایی با عامل ε حافظ حریم خصوصی باشد مجبور خواهیم بود که در هر پرسمان با عامل ε/k حافظ حریم خصوصی باشیم که در سازوکارهای حریم خصوصی تفاضلی محض (مثل لاپلاس) منجر به تولید نویز خیلی زیادی میشود و عملا کارایی پرسمانها خیلی پایین میآید.
این عوامل، متخصصان این حوزه را به این سمت سوق داد که تعریف آسانتری از حریم خصوصی تفاضلی ارائه دهند که در عمل بتوان راحتتر از حریم خصوصی تفاضلی استفاه کرد. این تعریف با عنوان حریم خصوصی تفاضلی تقریبی (Approximate DP) معرفی شد.
با در نظر گرفتن نمادهایی که در بخش «حریم خصوصی تفاضلی محض» معرفی کردیم، این تعریف را میتوان به شکل زیر بیان کرد:
\( M \;\textrm{is}\; (\epsilon, \delta)-DP \;\textrm{if}: Pr[M(X) \in S] \le e^\epsilon Pr[M(X^\prime) \in S] + \delta\)از آنجا که δ با احتمال نهایی جمع میشود بنابراین مقدارش باید بسیار کوچک باشد زیرا احتمالها بین ۰ تا ۱ هستند. برای مثال اگر δ را برابر با ۱ در نظر بگیریم آنگاه تمامی حالات در هر صورتی ارضا خواهند شد و در عمل مهاجم میتواند بین دو مجموعه داده به راحتی تفکیک قائل شود.
به صورت کلی هر چه δ بزرگتر باشد، حریم خصوصی تفاضلی کمتری خواهیم داشت. در عمل δ را برابر با معکوس تعداد دادههای موجود در پایگاه داده میگیرند:
\( \delta = \frac{1}{n} \)باید به این دقت داشت که به عنوان یک متخصص حریم خصوصی، تعیین δ و ε به عهدهی شما نیست بلکه این دو پارامتر با توجه به محیط صنعت در اختیار شما قرار میگیرند و شما باید سازوکار M را جهت تامین حریم خصوصی پیاده کنید.
یکی از روشهایی که برای پیادهسازی حریم خصوصی تفاضلی تقریبی به کار گرفته میشود، مکانیزم گوسی است که در اینجا به دلیل جلوگیری از طولانی شدن مطلب، گنجانده نمیشود اما شما میتوانید برای به دست آوردن اطلاعات بیشتر به ویدئوی مرجع که در انتهای همین مقاله قرار گرفته است، مراجعه کنید. تنها نکتهای که در مورد سازوکارهای این تعریف حائز اهمیت است این است که معمولا برای سنجیدن حساسیت تابع موردنظر از معیار سطح ۲ استفاده میکنند تا نویز کمتری به دادهها افزوده شود.
ویژگیهای حریم خصوصی تفاضلی تقریبی
حریم خصوصی تفاضلی تقریبی تمامی ویژگیهای حریم خصوصی تفاضلی محض را به همراه دارد اما تغییرات زیر را در آن اعمال کرده است:
- اگر مجموعهی دادهها به جای یک قلم داده در k عدد داده تفاوت داشته باشند آنگاه حریم خصوصی تفاضلی تقریبی به شکل زیر خواهد بود:
- اگر k عدد پرسمان بپرسیم آنگاه نتیجهی نهایی با عامل زیر حافظ حریم خصوصی تفاضلی خواهد بود:
- اگر k عدد پرسمان بپرسیم، آنگاه به صورت پیشرفتهتری نتیجه نهایی با عامل زیر حافظ حریم خصوصی تفاضلی خواهد بود:
طبیعی است که با توجه به سادهسازیهایی که در حریم خصوصی تفاضلی تقریبی صورت گرفته است، حریم خصوصی کمتری نسبت به راهکارهای حریم خصوصی تفاضلی محض به دست خواهیم آورد اما در عوض پیادهسازی آن ساده تر است و راحت تر میشود این تعریف را ارضا کرد.
سخن نهایی
حریم خصوصی امروزه بسیار بیشتر از قبلا مورد توجه قرار گرفته است و تبدیل به یک حوزهي فعال در تحقیقات شده است. لازم به ذکر است در میان همهی روشها و تعاریف حریم خصوصی، موضوعات مرتبط با حریم خصوصی تفاضلی با اختلاف در صدر قرار دارند.
علاوه بر تحقیقات، به واسطه قانونهایی که در کشورهای مختف برای حفظ حریم کاربران وضع شده است، شرکتهای صنعتی و قدرتمند دیجیتال، اقدام به سرمایهگذاری در این حوزه کردهاند. از جملهی این شرکتها میتوان به Apple، Microsoft و … اشاره کرد.
مرجع
مطالبی که در این مقاله مطالعه کردید برگرفته از یک کارگاه آموزشی بود که میتوانید آن را در اینجا مشاهده کنید.