قطعی AEAD رمزگذاری را با ویژگی قطعی ارائه می کند: رمزگذاری داده های یکسان همیشه متن رمزی یکسانی را به دست می دهد. این نوع رمزگذاری برای بسته بندی کلید یا برای برخی از طرح ها برای جستجو در داده های رمزگذاری شده مفید است (برای اطلاعات بیشتر به RFC 5297، بخش 1.3 مراجعه کنید). به دلیل ویژگی قطعی آن، پیاده سازی این اولیه می تواند منجر به از بین رفتن رازداری شود، زیرا مهاجم فقط باید متن رمز را برای یک پیام مشخص پیدا کند تا نمونه های دیگر آن پیام را شناسایی کند.
AEAD قطعی دارای ویژگی های زیر است:
- رازداری : هیچ چیز در مورد متن ساده مشخص نیست، به جز طول آن و برابری متنهای ساده مکرر.
- اصالت : تغییر متن رمزگذاری شده زیر متن رمزی بدون شناسایی غیرممکن است.
- متقارن : رمزگذاری متن ساده و رمزگشایی متن رمزی با همان کلید انجام می شود.
- قطعی : تا زمانی که کلید اصلی تغییر نکرده باشد، رمزگذاری یک متن ساده دو بار با پارامترهای یکسان منجر به یک متن رمزی می شود.
داده های مرتبط
AEAD قطعی همچنین می تواند برای گره زدن متن رمز به داده های مرتبط خاص استفاده شود. فرض کنید یک پایگاه داده با فیلدهای user-id
و encrypted-medical-history
دارید. در این سناریو، user-id
می توان به عنوان داده مرتبط هنگام رمزگذاری encrypted-medical-history
استفاده کرد. این مانع از انتقال سابقه پزشکی مهاجم از یک کاربر به کاربر دیگر می شود.
یک نوع کلید را انتخاب کنید
ما نوع کلید AES256_SIV را برای همه موارد استفاده توصیه می کنیم.
تضمین های امنیتی
- حداقل قدرت احراز هویت 80 بیتی.
- متن ساده و داده های مرتبط می توانند طول دلخواه داشته باشند (در محدوده 0..2 32 بایت).
- سطح امنیت 128 بیتی در برابر حملات بازیابی کلید، و همچنین در حملات چند کاربره با حداکثر 232 کلید - به این معنی که اگر حریف 232 متن رمزی از یک پیام رمزگذاری شده تحت 232 کلید به دست آورد، باید 2128 محاسبه انجام دهد. برای به دست آوردن یک کلید
- امکان رمزگذاری ایمن 2 38 پیام، به شرطی که طول هر کدام کمتر از 1 مگابایت باشد.
مثال استفاده
ببینید من میخواهم دادهها را بهطور قطعی رمزگذاری کنم و میخواهم متن رمز را به متن آن پیوند دهم .