کریگ جنتری در سال 2009 ثابت کرد که این امر ممکن است، پس از حدود سه دهه که رمزنگاران در مورد امکان وجود آن تردید داشتند. ایده این است: دادههای خود را رمزگذاری میکنید، به شخص دیگری میدهید، آنها روی آن محاسبات انجام میدهند، نتیجه را پس میدهند، و وقتی آن نتیجه را رمزگشایی میکنید، درست است. شخصی که محاسبات را انجام داده هرگز دادههای شما را ندیده است. نه یک نسخه پاکشده. نه یک هش. مقادیر واقعی زیرین، هرگز افشا نشدهاند، حتی برای یک میلیونیم ثانیه. این رمزگذاری کاملاً همومورفیک است — نوعی رمزگذاری که به یک شخص ثالث اجازه میدهد روی دادههای شما محاسبات انجام دهد بدون اینکه هرگز آنها را رمزگشایی کند.
پس FHE (رمزگذاری کاملاً همومورفیک) چیست؟ این یک ترفند نیست. این یک ویژگی ریاضی از برخی طرحهای رمزگذاری است. شما یک جعبه قفلشده برای کسی میفرستید. آنها محتویات را جابجا میکنند. شما آن را باز میکنید و چیدمان درست است. آنها هرگز کلید نداشتند.
پیش از پرداختن به نحوه عملکرد FHE، ارزش دارد که دقیقاً در مورد مشکلی که آن را حل میکند صحبت کنیم، زیرا اکثر رویکردها برای «محاسبه روی دادههای حساس» شامل مبادلهای هستند که مردم بدون پرسش پذیرفتن آن را یاد گرفتهاند.
رویکرد استاندارد: دادهها را در حالت استراحت و در حین انتقال رمزگذاری کنید، قبل از پردازش رمزگشایی کنید. ارائهدهنده ابر شما، فروشنده تجزیهوتحلیل شما، سرویس یادگیری ماشین شما — همه آنها به متن ساده نیاز دارند تا کارشان را انجام دهند. شما از روی ضرورت به آنها اعتماد میکنید. این کار میکند تا زمانی که نکند: یک نقض امنیتی، یک احضاریه، یک تهدید داخلی، یک سیاست دسترسی اشتباه پیکربندیشده.
محیطهای اجرای مورد اعتماد (TEE) مانند Intel SGX یک ناحیه حافظه محافظتشده ایجاد میکنند که حتی سیستمعامل هم نمیتواند آن را بخواند. محاسبات حساس درون انکلیو انجام میشود. این واقعاً مفید است، اما شما به فروشنده سختافزار اعتماد میکنید و شرط میبندید که پیادهسازی انکلیو هیچ نقص قابل بهرهبرداری ندارد. SGX چندین مورد داشته است.
حریم خصوصی دیفرانسیل نویز آماری کالیبرهشدهای به نتایج پرسوجو اضافه میکند که محدود میکند مهاجم چقدر میتواند درباره افراد از خروجیهای تجمیعشده استنتاج کند. این از تجمیعها محافظت میکند، نه از محاسبات روی رکوردهای فردی.
FHE تنها رویکردی است که در آن دادهها هرگز روی سرور رمزگشایی نمیشوند، و اثبات امنیت نیازی به اعتماد به هیچ سختافزار یا شخص ثالثی ندارد. ضمانت ریاضی است.
طرحهای FHE عملیات حسابی را مستقیماً روی متنهای رمزی تعریف میکنند. جمع همومورفیک و ضرب همومورفیک روی مقادیر رمزگذاریشده، هنگام رمزگشایی، همان نتیجهای را تولید میکنند که انجام آن عملیات روی متنهای ساده زیرین میدهد.
دو عملیات محدود به نظر میرسد. اینطور نیست. جمع و ضرب روی میدانهای باینری به شما گیتهای AND و XOR میدهند که مدارهای دیجیتال دلخواه را به شما میدهند. هر تابعی که کامپیوتر میتواند محاسبه کند میتواند بر حسب این دو عملیات بیان شود. این پل است از «حساب روی اعداد رمزگذاریشده» به «محاسبه دلخواه روی دادههای رمزگذاریشده».
مشکل ساختاری نویز است. هر عملیات FHE یک خطای کوچک به متن رمزی وارد میکند. خطاها انباشته میشوند. به اندازه کافی عملیات انجام دهید و نویز بر سیگنال غلبه میکند — متن رمزی غیرقابل رمزگشایی میشود. بینش جنتری بوتاسترپینگ بود: ارزیابی مدار رمزگشایی به صورت همومورفیک روی متن رمزی پر از نویز برای تولید یک متن رمزی تازه و کمنویز با همان مقدار متن ساده. به عبارت دیگر، رمزگشایی را درون رمزگذاری اجرا میکنید. نویز بازنشانی میشود بدون اینکه دادهها هرگز افشا شوند.
طرحهایی که تعداد محدودی از عملیات را قبل از اینکه نویز مهلک شود مدیریت میکنند، سطحبندیشده یا تا حدی همومورفیک نامیده میشوند. بوتاسترپینگ همان چیزی است که «کاملاً» را در FHE به دست میآورد.
برای اکثر کاربردها، FHE هنوز خیلی کند است. کاربردهایی که امروز اجرا میشوند یک مشخصه مشترک دارند: عمق مدار محدود، حساسیت بالای دادهها، و یک طرف که میتواند هزینههای محاسباتی را در ازای یک ضمانت حریم خصوصی ریاضی تحمل کند.
استنتاج خصوصی یادگیری ماشین واضحترین تناسب است. یک کلاینت ورودیهای حساس دارد. یک سرور یک مدل اختصاصی دارد. FHE به سرور اجازه میدهد مدل را روی ورودیهای رمزگذاریشده ارزیابی کند و یک نتیجه رمزگذاریشده برگرداند. هیچکدام از طرفین آنچه را که محافظت میکنند افشا نمیکنند. Zama این را برای معماریهای مدل خاص ارائه میدهد. عمق مدار قابل پیشبینی و قابل مدیریت است.
تجزیهوتحلیل خصوصی ژنومیک از زمانی که iDASH در سال 2014 مسابقات ژنومیک رمزگذاریشده را شروع کرد یک بار کاری معیار بوده است. امتیازدهی ریسک بیماری، مطالعات ارتباط سراسری ژنوم، و تراز توالی همگی ساختارهای FHE دارند. دادههای ژنومیک یکی از معدود انواع دادههایی است که در آن ریسک حریم خصوصی هم دائمی است و هم به افرادی که هرگز رضایت به اشتراکگذاری چیزی ندادند تسری مییابد.
پرسوجوهای مالی محرمانه پرسوجوهای محدوده، جستجوهای پایگاه داده رمزگذاریشده، و امتیازدهی تقلب روی تاریخچه تراکنشهای رمزگذاریشده را پوشش میدهند. این بارهای کاری به اندازه کافی به ندرت اجرا میشوند و دادهها به اندازه کافی حساس هستند که سربار محاسباتی قابل قبول است.
محرمانگی بلاکچین یک حوزه فعال است. قراردادهای هوشمند به طور پیشفرض به صورت عمومی درون زنجیرهای اجرا میشوند. سیستمهای مبتنی بر TFHE به شما اجازه میدهند منطق قرارداد را روی وضعیت رمزگذاریشده اجرا کنید، که چیزهایی مانند حراجهای خصوصی، رأیگیری محرمانه، و مکانیزمهای پیشنهاد مهر و مومشده را فعال میکند که در آنها صحت به صورت عمومی قابل تأیید است اما ورودیها افشا نمیشوند. پروژه fhEVM زاما به طور خاص این را هدف قرار میدهد.
امنیت FHE به سختی یادگیری با خطا (LWE) و نوع حلقهای آن (RLWE) کاهش مییابد. این مسائل میپرسند: با داشتن معادلات خطی تقریبی زیاد روی یک حلقه یا شبکه، راز را بازیابی کنید. هیچ الگوریتم زمان چندجملهای برای هیچکدام، نه روی سختافزار کلاسیک و نه کوانتومی، شناخته نشده است.
این FHE را در خانواده رمزنگاری پست-کوانتوم قرار میدهد. استانداردسازی پست-کوانتوم NIST بر اساس مسائل خانواده LWE بنا شده است که به فرضیات زیرین بررسی دقیقتر و اعتماد بیشتری میدهد. گفته شد، LWE کمتر از 20 سال است که تحت حمله جدی بوده است. RSA و منحنیهای بیضوی بیش از 40 سال رمزتحلیل ناموفق پشت سرشان دارند. سطح اعتماد بالا است اما یکسان نیست.
پارامترها بر امنیت حاکم هستند. درجه چندجملهای، اندازه پیمانه، و توزیع نویز باید به گونهای انتخاب شوند که نمونه LWE در سطح امنیتی مورد نظر سخت باشد. کنسرسیوم HomomorphicEncryption.org مجموعه پارامترهای توصیهشده را منتشر میکند. استفاده از پیشفرضهای کتابخانه که در برابر این توصیهها اعتبارسنجی شدهاند به شدت نسبت به پیکربندیهای سفارشی ترجیح داده میشود.
زمینه رقابتی
FHE یکی از چندین فناوری محاسبات حافظ حریم خصوصی است و به طور فزایندهای به جای استفاده به عنوان جایگزین، با هم استفاده میشوند.
محاسبه ایمن چند طرفه (MPC) یک محاسبه را در میان چندین طرف توزیع میکند که هیچکدام از آنها ورودی کامل را نمیبینند. اغلب برای توابع خاص سریعتر از FHE است و وقتی طرفین از پیش تعریف شده باشند تناسب طبیعی دارد. FHE با یک سرور غیرقابل اعتماد کار میکند.
اثباتهای دانش صفر (ZKP) به یک طرف اجازه میدهند ثابت کند که یک گزاره بدون افشای شاهد درست است. ZKP ها اثبات میکنند؛ FHE محاسبه میکند. آنها مکمل هم هستند و سیستمهای واقعی از هر دو استفاده میکنند: FHE برای محاسبه خصوصی، ZKP ها برای تأیید اینکه محاسبه به درستی انجام شده است.
پروتکلهای ترکیبی که FHE و MPC را ترکیب میکنند یک حوزه تحقیقاتی فعال هستند. هیچکدام از این فناوریها به تنهایی هر نیازی را برآورده نمیکنند؛ ترکیب آنها میتواند عملکرد بهتر و ضمانتهای قویتری نسبت به هر کدام به تنهایی به شما بدهد.


