قرار دادن کنترل امنیت داده‌ها در دستان کاربران
1397/12/27 17:32 , میلاد صاحب نظر

قرار دادن کنترل امنیت داده‌ها در دستان کاربران

یک پلتفرم جدید که به توسط محققان MIT و دانشگاه هاروارد توسعه یافته است، باعث می‌شود که خدمات تحت وب یا اینترنتی در مورد اینکه چگونه داده‌ها در cloud ذخیره و اشتراک گذاری شوند، کاملا از خواسته و ترجیحات کاربران پیروی کنند.

در دنیای امروز که رایانش ابری همه چیز را به همدیگر متصل کرده است. کاربران اپلیکیشن‌های موبایل و خدمات اینترنتی، داده‌های شخصی را روی سرورهای مرکزی داده راه دور ذخیره می‌کنند.

این داده‌ها ممکن است شامل تصاویر، پروفایل‌های شبکه‌های اجتماعی، آدرس‌های ایمیل و حتی داده‌های تناسب اندام به دست آمده توسط دستگاه‌های پوشیدنی باشند.

خدمات گاهی داده‌های چندین کاربر را از چندین سرور گردآوری می‌کنند تا بتوانند راجع به مشتری شناخت و بینش کسب کنند، به عنوان مثال بتوانند الگوهای خرید مشتری را شناسایی کنند تا بتوانند آیتم‌های جدید مناسب برای مشخصات کاربران پیشنهاد دهند، یا بتوانند تبلیغات مناسب برای مشتری را با او به اشتراک بگذارند.

به هر حال، سنت بر این است که کاربران هیچ قدرتی برای محدود کردن چگونگی پردازش و اشتراک گذاری داده‌های خود را نداشته باشند.

در مقاله‌ای که در کنفرانس طراحی و پیاده‌سازی سیستم‌های شبکه‌ای USENIX ارائه شد، محققان یک پلتفرم با نام Riverbed معرفی کردند که سرورهای مرکز داده را مجبور می‌کند فقط به شکلی که کاربران می‌خواهند و تایید می‌کنند، از داده‌های کاربران استفاده کنند.

در Riverbed، مرورگر اینترنت یا اپلیکیشن گوشی هوشمند کاربر مستقیما با cloud ارتباط برقرار نمی‌کند. در عوض، یک پراکسی Riverbed روی دستگاه کاربر اجرا می‌شود تا واسطه‌ای برای برقراری ارتباط باشد.

وقتی خدمات سعی می‌کنند تا داده‌های کاربر را در یک خدمات راه دور آپلود کنند، پراکسی داده‌ها را با مجموعه‌ای از موارد مجاز استفاده برای داده‌های مشتری تگ می‌کند که به این موارد مجاز، “policy” یا سیاست گفته می‌شود.

کاربران می‌توانند هر تعداد محدودیت از پیش تعریف شده(مانند "داده‌های من را روی یک حافظه دائمی ذخیره نکن" یا "داده‌های من فقط با خدمات خارجی (نام دامنه) اشتراک گذاری شوند.") که دلشان می‌خواهد، انتخاب کنند. پراکسی همه داده‌ها را با سیاست‌های انتخاب شده تگ می‌کند.

در مرکز داده، Riverbed داده‌های آپلود شده را به یک مجموعه ایزوله از اجزای نرم‌افزاری اختصاص می‌دهد که هر دسته فقط داده‌های تگ شده با سیاست‌های مشابه را پردازش می‌کنند.

برای مثال، یک دسته ممکن است شامل داده‌هایی باشد که نمی‌توان آن‌ها را با خدمات دیگر به اشتراک گذاشت، در حالی که یک دسته دیگر ممکن است داده‌هایی را نگهداری کند که نمی‌توان آن‌ها را روی دیسک نوشت.

Riverbed کد سمت سرور را نظارت می‌کند تا اطمینان حاصل کند که با سیاست‌های کاربر همخوانی دارد. اگر همخوانی نداشت، Riverbed آن خدمات را حذف می‌کند.

هدف Riverbed قدرت دادن به اولویت‌های مد نظر کاربر در مورد داده‌ها و در عین حال، حفظ مزیت‌های رایانش ابری(مانند انجام محاسبات در مقیاس بزرگ روی خدمات خارج از دامنه)می‌باشد.

یکی از ناشران این مقاله به نام فرانک وانگ که اخیرا از دانشکده مهندسی برق و علوم رایانه و آزمایش علوم رایانه و هوش مصنوعی فارغ‌التحصیل شده است در این مورد می‌گوید: "کاربران داده‌های زیادی به اپلیکیشن‌های اینترنتی می‌دهند تا خدمات دریافت کنند، اما هیچ کنترلی روی اینکه داده‌های چگونه استفاده می‌شوند یا به کجا می‌روند، ندارند".

"ما به کاربران قدرت کنترل اعطا می‌کنیم تا به اپلیکیشن‌ها بگویند، این‌طوری باید با داده‌های من کار کنی".

از طرف دیگر، وانگ افزود که این پلتفرم برای توسعه‌دهندگان اپلیکیشن نیز یک مزیت ایجاد می‌کند و آن هم جلب اعتماد بیشتر کاربران است. وانگ می‌گوید: "این مزیت خیلی بزرگی است". "یکی از مزیت‌های رقابتی برای اپلیکیشن شما این است که بتوانید با اعتماد به نفس بگویید، هدف اپلیکیشن من حفاظت از داده‌های کاربر است".

از جمله همراهان وانگ در انتشار این مقاله می‌تواند به دانشجوی دکتری رونی کو و استادیار علوم رایانه جیمز میکنز که هر دو هم عضو دانشگاه هاروارد هستند، اشاره کرد.

ایجاد "universeها"

در سال ۲۰۱۶، اتحادیه اروپا قانون کلی حفاظت از داده(GDPR) را تصویب کرد، این قانون بیان می‌کرد که کاربران باید نسبت به دسترسی برنامه‌ها و خدمات به داده‌های آن‌ها ابراز رضایت کنند، اینکه کاربران حق دارند درخواست حذف شدن داده‌های خود را داشته باشند و شرکت‌های خدماتی نیز باید اقدامات امنیتی مناسب را تدارک ببینند.

به هر حال برای توسعه‌دهندگان وب، این قوانین راهنمای فنی مختصری برای نوشتن اپلیکیشن‌های رضایت بخشی که بتوانند امنیت داده‌های کاربر را افزایش دهند،‌فراهم می‌کنند.

در گذشته، دانشمندان رایانه سیستم‌های "کنترل جریان اطلاعات" (IFC) را طراحی کردند که به برنامه‌نویسان اجازه می‌داد متغیرهای برنامه را با سیاست‌های داده‌ای lable یا برچسب بزنند. اما با وجود این همه متغیر و این همه تعاملات ممکن بین متغیرها، برنامه‌نویسی این سیستم‌ها کار مشکلی است.

بنابراین، دیگر هیچ خدمات اینترنتی در مقیاس بزرگی از تکنیک‌های IFC  استفاده نمی‌کند.

Riverbed عمدتا بر این قضیه تاکید می‌کند که کد سمت سرور یک اپلیکیشن بتواند همراه با یک برنامه نظارتی(برنامه‌هایی که چگونگی دست‌کاری شدن داده‌ها توسط برنامه‌های دیگر را پیگیری، تنظیم و تایید می‌کنند)اجرا شود. برنامه نظارتی یک کپی مجزا از کد اپلیکیشن برای هر سیاست منحصر به فرد اختصاص داده شده به داده‌ها ایجاد می‌کند.

هر کپی یک "universe" نام دارد. برنامه نظارت اطمینان حاصل می‌کند که کاربرانی که سیاست‌های مشابهی دارند، داده‌های آن‌ها در یک universe مشترک آپلود شده و در همان‌جا مورد پردازش قرار گیرند.

تعریف universeها

تعریف universeها

این روش امکانی را فراهم می‌کند تا در صورت تلاش برای تخطی از سیاست داده‌ای Universe، برنامه نظارت بتواند کد آن universe را حذف کند.

این فرآیند از یک مفسر مشتری استفاده می‌کند، برنامه‌ای که زبان برنامه‌نویسی را به کدی کامپایل می‌کند که توسط رایانه درک شود. مفسرها همچنین قبلا به برنامه‌های runtime کمک می‌کردند تا دستورات سطح پایین را در یک برنامه ‌اورجینال در حال اجرا پیاده‌سازی کنند.

محققان یک مفسر قدیمی را اصلاح کردند تا سیاست‌های تعریف شده توسط خدمات اینترنتی whitelist برای اشتراک‌گذاری داده یا حافظه دائمی محدود را استخراج کند – به این معنا که وقتی کاربر دیگر از خدمات اینترنتی استفاده نمی‌کند، داده‌ها دیگر نمی‌توانند ذخیره شوند.

وانگ می‌گوید: "فرض کنید من می‌خواهم داده‌هایم همراه با کاربران دیگر ذخیره و جمع‌آوری شوند. آن داده‌ها درون universe مخصوص به خودشان همراه با داده‌های کاربران دیگری که سیاست‌های داده‌ای مشابه با من دارند، قرار می‌گیرند".

"حالا اگر یک کاربر نخواهد هیچ داده‌ای را با کسی به اشتراک بگذارد، آنگاه آن کاربر یک universe مخصوص به خودش خواهد داشت. به این صورت، دیگر هیچ در هم آمیختگی داده‌ای نخواهید داشت".

وانگ می‌گوید، برای توسعه‌دهندگان، این پلتفرم باعث می‌شود تطابق با GDRP و دیگر قوانین امنیتی آسان‌تر شود. چون کاربران برای دسترسی به داده‌هایشان رضایت داده‌اند.

وانگ می‌گوید: همه کاربران در هر universe دارای سیاست‌های یکسان می‌باشند، بنابراین شما می‌توانید همه عملیات‌های خود را انجام دهید و نگران اینکه چه داده‌هایی درون یک الگوریتم قرار می‌گیرند نباشید، چون هر کسی که در آن universe‌ قرار دارد دارای سیاست داده‌ای مشابهی است".

کپی‌برداری موثر و کارآمد

وانگ می‌گوید: در بدترین وضعیت، هر کاربر از هر خدمات دارای یک universe مجزا خواهد بود. در کل، این امر ممکن است باعث افزایش و سرریز شدن شدید محاسبات شده و سرعت خدمات‌رسانی را کاهش دهد.

اما محققان یک تکنیک جدید به نام مجازی‌سازی محدوده محور ارائه داده‌اند که به برنامه نظارتی Riverbed اجازه می‌دهد به صورت موثرتر و کارآمدتری، چندین universe از یک برنامه مشابه بسازند. در نتیجه، مدیریت universe سریع‌تر انجام می‌شود، حتی اگر یک خدمات دارای صدها یا هزاران universe باشد.

در این مقاله، محققان Riverbed را روی چندین اپلیکیشن تست کردند، مشخص شد که پلتفرم ایمنی داده‌ها را با کمترین میزان سرریز اطلاعات، حفظ می‌کند. نتایج نشان می‌دهند که بیش از ۱۰۰۰ universe را می‌توان در یک سرور جای داد و محاسبات روی آن‌ها سرعت خدمات رسانی را فقط تا ۱۰٪ کاهش می‌دهد.

وانگ می‌گوید: این یک روش سریع و مقرون به صرفه برای استفاده در سطح وسیع است.

محققان سیاست‌ها را متناسب با نظرات گروه‌های مشاوره(مانند موسسه EFF که یک گروه بین‌المللی غیر انتفاعی با حقوق دیجیتال است) نوشته‌اند. می‌توان در هر زمان سیاست‌های جدیدی را در خدمات Riverbed نوشت، یعنی اینکه توسعه‌دهندگان دیگر نیاز به بازنویسی کد خود در این پلتفرم ندارند.

منبع: news.mit.edu

 مطالب مرتبط

توصیه‌هایی کاربردی برای امنیت وای-فای شما
چرا امنیت سایبری مهم‌تر از همیشه است؟
چگونه مرورگر شما، گزارشی از امنیت شما در فضای وب ارائه می‌کند؟
بهترین راه‌حل‌ها برای امنیت سایبری شرکت‌ها
تعامل با فایل‌ها در HTML5
برنامه نویسی شیءگرا چیست؟

از آخرین دوره های آموزشی و تخفیف ها مطلع شوید

با تکمیل فرم زیر ، از اخبار و اطلاعات به روز برنامه نویسی و تکنولوژی عقب نمانید

آخرین مطالب

آموزش جامع SQL Server (جلسه ۱۲)
آموزش جامع SQL Server (جلسه ۱۲)

دستور UPDATE در SQL Server برای تغییر داده‌های موجود در یک جدول، از دستور UPDATE به شکل زیر استفاده ...

آموزش جامع SQL Server (جلسه ۱۵)
آموزش جامع SQL Server (جلسه ۱۵)

دستور DROP TABLE در SQL Server گاهی، لازم است یک جدول که دیگر استفاده‌ای ندارد را حذف کنید. برای ...

آموزش جامع SQL Server (جلسه ۳۵: Window Functionها – بخش ۲)
آموزش جامع SQL Server (جلسه ۳۵: Window Functionها – بخش ۲)

بخش اول از آخرین مبحث دوره جامع آموزش SQL Server در جلسه قبلی بررسی شد. این مبحث که ...

آخرین دیدگاه ها

دیدگاه خود را درباره این پست بنویسید

فرم ارسال نظرات