Кіріспе
Детерминистік шифрлау схемасы (көп нұсқалы шифрлау схемасына қарама-қарсы) – берілген жай мәтін мен кілт үшін, шифрлау алгоритмінің қайталама орындалуына қарамастан, әрқашан бірдей шифрмәтін шығаратын криптожүйе. Детерминистік шифрлау алгоритмдерінің мысалдарына шифрлау толтырусыз RSA криптожүйесі және ECB режимінде немесе тұрақты инициализациялау векторымен қолданылатын көптеген блок шифрлері жатады.
A deterministic encryption scheme (as opposed to a probabilistic encryption scheme) is a cryptosystem which always produces the same ciphertext for a given plaintext and key, even over separate executions of the encryption algorithm. Examples of deterministic encryption algorithms include RSA cryptosystem (without encryption padding), and many block ciphers when used in ECB mode or with a constant initialization vector.
Сырқату
Детерминистік шифрлау тыңдаушыға ақпаратты ағызуы мүмкін, ол таныс шифрмәтіндерді тани алады. Мысалы, егер қарсылас белгілі бір шифрмәтіннің қызықты хабарламаға сәйкес келетінін білсе, ол шифрмәтін жіберілген сайын бір нәрсені біле алады. Әртүрлі шифрмәтіндердің мағынасы туралы ақпарат алу үшін қарсылас шифрланған канал арқылы жіберілетін хабарламалардың статистикалық талдауын жасауы немесе шифрмәтіндерді байқалған әрекеттермен салыстыруға тырысуы мүмкін (мысалы, белгілі бір шифрмәтін әрқашан суасты қайығының тереңге түсуінен бұрын алынады). Бұл алаңдаушылық, әсіресе, кез келген адам таңдалған хабарламаларды ашық шифрлау кілтін қолдана отырып шифрлай алатын ашық кілттік криптография жағдайында ерекше маңызға ие. Осы жағдайда қарсылас пайдалы қара мәтін/шифрмәтін жұптарының үлкен "сөздігін" құрастырып, содан кейін шифрланған каналды сәйкес шифрмәтіндерді іздеу үшін бақылай алады.
Қолданбалар
Детерминистік шифрлау схемалары ешқашан семантикалық қауіпсіздікке ие бола алмайды, бірақ олар ықтималдық схемалардан кейбір артықшылықтарымен ерекшеленеді.
Шифрланған деректерді деректер қорында іздеу
Детерминистік шифрлауды қолданудың басты себептерінің бірі – шифрланған деректерді тиімді іздеу. Егер клиент дерекқорын сенімсіз дерекқор қызметін ұсынатын провайдерге тапсыруды қаласа, онда әрбір жазба ашық кілттің криптожүйесімен шифрланған жағдайда, кез келген адам дерекқорға жазба қоса алады, ал жеке кілті бар арнайы "алушы" ғана дерекқордағы жазбаларды шифрдан шығара алады. Бірақ, егер алушы дерекқорда нақты жазбаны іздегісі келсе, бұл қиындық тудырады. Кілт сөздер бойынша іздеуге мүмкіндік беретін ашық кілтті шифрлау схемалары бар, алайда олардың барлығы дерекқордың көлеміне пропорционал іздеу уақытын талап етеді. Егер дерекқор жазбалары детерминистік схемамен шифрланып, сұрыпталған болса, дерекқордың белгілі бір өрісін логарифмдік уақыт ішінде табуға болады.
Қауіпсіздік
Детерминистік шифрлау схемасы қолданылатын болжаммен, қамтамасыз етілетін қауіпсіздіктің ең жоғары деңгейін түсіну маңызды. Көптеген зерттеулер осы мәселеге қатысты жүргізілді. Детерминистік схема үшін қауіпсіздікті қатаң түрде анықтаған алғашқы жұмыс CRYPTO 2007 конференциясында жарияланды. Бұл жұмыс қауіпсіздіктің жеткілікті күшті анықтамасын ұсынды (бірақ семантикалық қауіпсіздіктен әлсіз), сондай-ақ кездейсоқ оракул моделіндегі құрылымдарды берді. Келесі жылы CRYPTO 2008 конференциясында екі толықтыру жұмысы жарық көрді, олар кездейсоқ оракулдарсыз анықтамалар мен құрылымдарды ұсынды.
Детерминистік шифрлаудың баламалары
Бұл мәселеге қарсы тұру үшін криптографтар "күрделендірілген" немесе ықтималдық шифрлау ұғымын ұсынды. Осы схемалар бойынша, берілген қара мәтін шифрлау процесінде кездейсоқ түрде таңдалған, мүмкін шифрмәтіндердің өте үлкен жиынтығының біріне шифрлана алады. Қауіпсіздіктің жеткілікті деңгейдегі кепілдіктері болғанда, жоғарыда аталған шабуылдар орындалмайды, себебі қарсылас бір хабарламаның екі шифрлауын немесе хабарламаны оның шифрмәтінімен байланыстыра алмайды, тіпті ашық шифрлау кілтіне қол жеткізіп қана қоймайды. Бұл кепілдік семантикалық қауіпсіздік немесе шифрмәтіннің ажыратылмайтындығы деп аталады және шабуылшының болжамды қабілеттеріне байланысты бірнеше анықтамасы бар (семантикалық қауіпсіздікке қараңыз).