Кіріспе

Криптография алгоритмі

Криптографияда блок шифрінің жұмыс режимі – құпиялылық немесе дұрыстық сияқты ақпараттық қауіпсіздікті қамтамасыз ету үшін блок шифрін қолданатын алгоритм. Блок шифрінің өзі бір блок деп аталатын биттердің белгілі бір ұзындығындағы тобын қауіпсіз криптографиялық түрлендіруге (шифрлау немесе дешифрлеуге) ғана жарамды. Жұмыс режимі шифрдің бір блокқа қатысты операциясын қайталап қолдану арқылы блоктан үлкен деректерді қауіпсіз түрде түрлендіру қалай жүзеге асырылатынын сипаттайды. Көптеген режимдер әр шифрлау операциясы үшін бірегей екілік тізбекті қажет етеді, ол көбінесе бастамалау векторы (IV) деп аталады. IV қайталанбауы керек, ал кейбір режимдер үшін кездейсоқ болуы да шарт. Бастамалау векторы бірдей кілтпен бірнеше рет тәуелсіз шифрланғанда да, әртүрлі шифрланған мәтіндердің алынуын қамтамасыз ету үшін қолданылады. Блок шифрлері бірнеше блок өлшемдерімен жұмыс істей алады, бірақ түрлендіру кезінде блок өлшемі әрқашан белгілі болады. Блок шифрінің режимдері толық блоктармен жұмыс істейді және соңғы дерек фрагменті ағымдағы блок өлшемінен кіші болса, оны толық блокқа дейін толтыруды талап етеді.

Тарих және стандарттау

ЕЦБ, CBC, OFB және CFB (барлығы төменде қараңыз) операциялық режимдерінің ең алғашқы түрлері 1981 жылға дейін созылады және FIPS 81, DES Операциялық режимдерінде сипатталған. 2001 жылы АҚШ Ұлттық Стандарттар және Технология Институты (NIST) бекітілген режимдер тізімін жаңартты, AES блокты шифр ретінде және CTR режимін SP800 38A, Block Cipher Modes of Operation ұсынымына қосты. Соңында, 2010 жылдың қаңтарында NIST SP800 38E, Block Cipher Modes of Operation: The XTS AES Mode for Confidentiality on Storage Devices құжатында XTS AES-ті қосты. NIST бекітпеген басқа да құпиялылық режимдері бар. Мысалы, CTS – шифрмәтінді ұрлау режимі және көптеген танымал криптографиялық кітапханаларда қолданылады. Блок шифрлау режимдері ECB, CBC, OFB, CFB, CTR және XTS құпиялылықты қамтамасыз етеді, бірақ олар кездейсоқ өзгертулерге немесе қасақана бұрмалауға қарсы қорғамайды. Өзгертулерді немесе бұрмалауды CBC MAC немесе цифрлық қолтаңба сияқты жеке хабарламаның аутентификациялық коды арқылы анықтауға болады. Криптографиялық қауымдастық арнайы тұтастық кепілдігінің қажеттілігін мойындады және NIST оған HMAC, CMAC және GMAC арқылы жауап берді. HMAC 2002 жылы FIPS 198, The Keyed Hash Message Authentication Code (HMAC) ретінде бекітілді, CMAC 2005 жылы SP800 38B, Block Cipher Modes of Operation: The CMAC Mode for Authentication бойынша жарияланды, ал GMAC 2007 жылы SP800 38D, Recommendation for Block Cipher Modes of Operation: Galois/Counter Mode (GCM) және GMAC бойынша ресмилендірілді. Криптографиялық қауымдастық құпиялылық режимін шынайылық режимімен біріктірудің қиын және қатеге ұшырауға бейім екенін байқады. Сондықтан олар құпиялылық пен деректердің тұтастығын бірыңғай криптографиялық примитивке (шифрлау алгоритміне) біріктіретін режимдерді ұсына бастады. Бұл біріктірілген режимдер аутентификацияланған шифрлау, AE немесе "authenc" деп аталады. AE режимдерінің мысалдары: CCM (SP800 38C), GCM (SP800 38D), CWC, EAX, IAPM және OCB. Операциялық режимдерді бірқатар ұлттық және халықаралық стандарттау органдары анықтайды. Ең белгілі стандарттау ұйымдарына NIST, ISO (ISO/IEC 10116 кіреді. Бұл екі режим де жай мәтінмен XOR операциясын жасайтын біт ағынын құрады, ал бұл біт ағыны тек кілтке және IV-ке тәуелді. CBC режимінде IV шифрлау кезінде болжауға келмейтін (кездейсоқ немесе псевдокездейсоқ) болуы керек; әсіресе, хабарламаның бұрынғы шифрланған мәтін блогын келесі хабарлама үшін IV ретінде қайта пайдалану (бұрынғы кең таралған практика) қауіпсіз емес (мысалы, бұл әдіс SSL 2.0 қолданды). Егер шабуылшы келесі жай мәтінді келтірмес бұрын IV (немесе шифрланған мәтіннің алдыңғы блогын) білсе, олар бұрын бірдей кілтпен шифрланған жай мәтін блогы туралы болжамын тексеруі мүмкін (бұл TLS CBC IV шабуыл деп аталады). Кейбір кілттер үшін, барлық нөлдік бастама векторы кейбір блок шифрлау режимдерін (CFB 8, OFB 8) ішкі күйді нөлге тоқтатуға себеп болуы мүмкін. CFB 8 үшін, барлық нөлдік IV және барлық нөлдік жай мәтін кілттердің 1/256 бөлігі үшін шифрлауды тудырмайды, жай мәтін шифрланған мәтін ретінде қайтарылады. OFB 8 үшін, барлық нөлдік инициализациялау векторын пайдалану кілттердің 1/256 бөлігі үшін шифрлауды тудырмайды. OFB 8 шифрлауы әсер еткен кілттер үшін шифрланбаған жай мәтінді қайтарады. Кейбір режимдер (мысалы, AES SIV және AES GCM SIV) бастапқы мәліметтердің дұрыс пайдаланылмауына төзімді болу үшін жасалған, яғни кездейсоқтық генерациясы қате немесе шабуылшының бақылауында болатын жағдайларға төзімді. Синтетикалық инициализациялау векторлары (SIV) ішкі IV-ді S2V деп аталатын псевдокездейсоқ функция (PRF) құрылымын қолдану арқылы синтездейді (қосымша деректер мен жай мәтін), бұл кез келген сыртқы деректердің IV-ді тікелей басқаруына жол бермейді. Сыртқы nonces / IV қосымша деректер өрісі ретінде S2V-ге енгізілуі мүмкін. AES GCM SIV ішкі IV-ді (қосымша деректер мен жай мәтін) кіріс ретінде POLYVAL Galois аутентификация режимін іске қосу арқылы синтездейді, содан кейін AES операциясы орындалады.

Қаптама

Блок шифрі белгіленген өлшемдегі бірліктерде (блок өлшемі деп аталады) жұмыс істейді, бірақ хабарламалар әртүрлі ұзындықта болады. Сондықтан кейбір режимдер (атап айтқанда, ECB және CBC) шифрлау алдында соңғы блокты толтыруды қажет етеді. Бірнеше толтыру схемалары бар. Ең қарапайымы – жай мәтіннің ұзындығын блок өлшеміне еселеп жеткізу үшін нөлдік байттар қосу, бірақ жай мәтіннің бастапқы ұзындығын қалпына келтіруге мүмкіндік болуы керек; мысалы, егер жай мәтін C стиліндегі жол болса және соңында ғана нөлдік байттар болса, бұл оңай шаруа. Сәл күрделірек – бастапқы DES әдісі, онда бір биттік «1», содан кейін блокты толтыру үшін жеткілікті нөлдік биттер қосылады; егер хабарлама блок шекарасында аяқталса, толық толтыру блогы қосылады. Ең күрделілері – шифрмәтінді ұрлау немесе қалдық блокпен аяқтау сияқты, қосымша шифрмәтін тудырмайтын, бірақ біршама күрделілікті талап ететін CBC-ге арналған схемалар. Шнайер мен Фергюсон екі мүмкіндік ұсынады, екеуі де қарапайым: соңғы блокты толтыру үшін қажетті мөлшерде нөлдік байттар қосып, 128 (16-дық 80) мәніндегі байтты қосу немесе соңғы блокты n байтпен, барлығы n мәнімен толтыру. CFB, OFB және CTR режимдері блок өлшеміне есе емес хабарламаларды өңдеу үшін ешқандай арнайы шараларды қажет етпейді, себебі бұл режимдер блок шифрінің нәтижесімен жай мәтінді XOR операциясы арқылы өңдейді. Жай мәтіннің соңғы жартылай блогы соңғы кілт ағыны блогының алғашқы бірнеше байттарымен XOR операциясынан өтеді, нәтижесінде соңғы шифрланған мәтін блогы жай мәтіннің соңғы жартылай блогымен бірдей өлшемде болады. Ағынды шифрлердің осы қасиеті оларды шифрланған мәтіннің ұзындығы бастапқы жай мәтіннің ұзындығымен сәйкес келуін қажет ететін және деректерді ағынмен беруді талап ететін, онда толтыру байттарын қосу ыңғайсыз болғанда қолдануға ыңғайлы етеді.

Қосымша деректермен аутентификацияланған шифрлау (AEAD) режімдері

Бір криптографиялық примитивте құпиялылық пен аутентификацияны біріктіру үшін бірнеше жұмыс режимдері жасалған. Мұндай режимдерге мысалдар: , , тұтастығын ескеретін параллельді режим (IAPM), OCB, EAX, CWC, CCM және GCM. Аутентификацияланған шифрлау режимдері бір өткелді немесе екі өткелді режимдер ретінде жіктеледі. Кейбір бір өткелді аутентификацияланған шифрлау алгоритмдері, мысалы OCB режимі, патенттік шектеулерге тап болады, ал басқалары мұндай шектеулерден қашыну үшін арнайы әзірленді және жарияланды. Сонымен қатар, кейбір режимдер шифрланбаған қосымша деректерді аутентификациялауға да мүмкіндік береді, олар AEAD (қосымша деректермен аутентификацияланған шифрлау) схемалары деп аталады. Мысалы, EAX режимі екі өткелді AEAD схемасы болса, OCB режимі бір өткелді болып табылады.

Галуа/сақтағыш (GCM)

Галуа/саны режимі (GCM) шифрлаудың жақсы белгілі саны режимін және жаңа Галуа аутентификация режимін біріктіреді. Басты ерекшелігі – аутентификация үшін қолданылатын Галуа өрісінің көбейтуін параллель түрде оңай есептеу мүмкіндігі. Бұл мүмкіндік шифрлау алгоритмдерімен салыстырғанда жоғары өнімділікке қол жеткізуге мүмкіндік береді. GCM 128 биттік блок өлшемі бар блок шифрлары үшін анықталған. Galois хабарламаның аутентификациялық коды (GMAC) – GCM-нің аутентификацияға ғана арналған түрі, ол инкрементті хабарламаның аутентификациялық кодын құруға мүмкіндік береді. GCM және GMAC екеуі де кез келген ұзындықтағы инициализациялау векторларын қабылдай алады. GCM параллель өңдеудің барлық артықшылықтарын пайдалана алады және GCM-ді жүзеге асыру нұсқау құбырларын немесе аппараттық құбырларды тиімді пайдалануға мүмкіндік береді. CBC жұмыс режимі оның тиімділігі мен өнімділігін төмендететін құбыр желілерінің тоқтауына себеп болады. CTR режиміндегідей, блоктар тізбектеп нөмірленеді, содан кейін бұл блок нөмірі IV-пен біріктіріліп, блок шифрі E (әдетте AES) арқылы шифрланады. Осы шифрлау нәтижесі жай мәтінмен XOR операциясы арқылы қосылып, шифрланған мәтінді құрайды. Барлық санау режимдеріндегідей, бұл негізінен ағын шифрі болып табылады, сондықтан әр шифрланған ағын үшін әртүрлі IV қолдану қажет. Шифрланған мәтін блоктары полиномның коэффициенттері ретінде қарастырылады, содан кейін шекті өріс арифметикасын қолдана отырып, кілтке тәуелді H нүктесінде есептеледі. Нәтиже шифрланып, деректердің бүтіндігін тексеру үшін қолданылатын аутентификациялық белгіні құрайды. Шифрланған мәтінге IV, шифрланған мәтін және аутентификациялық белгі кіреді.

Шифрлау блогының тізбекті хабарламаны аутентификациялау коды (CCM) бар санағыш

Сандық тізбекпен шифрлау блогының тізбекті хабарламасын аутентификациялау коды (сандық тізбекпен CBC MAC; CCM) – аутентификация және құпиялылықты қамтамасыз ететін аутентификацияланған шифрлау алгоритмі. CCM режимі тек 128 биттік блок ұзындығына ие шифрлау блоктары үшін ғана анықталған.

AES-GCM-SIV

AES GCM SIV – Advanced Encryption Standard стандартының жұмыс режимі, ол Galois/counter режимімен салыстырылатын өнімділікті қамтамасыз етеді, сондай-ақ криптографиялық нонстың қайта қолданылу жағдайында қате пайдалануға төзімділік көрсетеді. Бұл құрылым RFC 8452 стандартында сипатталған. AES GCM SIV ішкі IV-ті синтездейді. Ол POLYVAL Galois хэш функциясын қолдана отырып, қосымша аутентификацияланған деректер мен қарапайым мәтіннің хэшін есептейді. Содан кейін хэш AES кілтімен шифрланады және аутентификациялық белгі ретінде, сондай-ақ AES CTR инициализациялық векторы ретінде қолданылады. AES GCM SIV, өте ұқсас аталған GCM SIV алгоритмінен бірнеше шағын өзгерістермен (мысалы, AES CTR қалай инициализацияланады) жақсартылған нұсқа болып табылады, бірақ бұл оның қауіпсіздігіне нақты пайда әкеледі. "Бұл жаңа мүмкіндік бір кілттің көмегімен 250-ге дейін хабарламаны шифрлауға мүмкіндік береді, бұл GCM SIV-те рұқсат етілген 232 хабарламаның шектеулі санымен салыстырылғанда айтарлықтай артықшылық."

Электрондық кодтар кітабы (ЕЦБ)

Шифрлау режимдерінің ең қарапайым түрі – электрондық код кітабы (ECB) режимі (дәстүрлі физикалық код кітаптарының атымен аталған). Хабар блоктарға бөлінеді, және әр блок жеке шифрланады. ECB криптографиялық протоколдарда қолдану ұсынылмайды: осы әдістің кемшілігі – диффузияның болмауы, себебі ол бірдей ашық мәтін блоктарын бірдей шифрланған мәтін блоктарына шифрлағанда деректер үлгілерін жасыра алмайды. ECB режимі шифрланған мәтінде ашық мәтін деректерінің үлгілерін қалдыра алатынының айқын мысалы – біркелкі түсті үлкен аймақтары бар бит картасы кескінін шифрлау үшін қолданылғанда көрінеді. Әрбір жеке пикселдің түсі шифрланған болса да, кескіннің жалпы мазмұнын әлі де ажыратуға болады, өйткені түпнұсқадағы бірдей түсті пикселдердің үлгісі шифрланған нұсқада да көрінеді. ECB режимі сондай-ақ, тұтастығы қорғалмаған протоколдарды қайта ойнату шабуылдарына оңайырақ бейімдейді, себебі әрбір блок дәл сол тәсілмен шифрланады.

Мысал

КБК ең көп қолданылатын жұмыс режимі болды. Оның негізгі кемшіліктері – шифрлау тізбекті (яғни, оны параллельдеу мүмкін емес) және хабарлама шифр блогының көлеміне сәйкес толтырылуы керек. Бұл соңғы мәселені шешудің бір жолы – шифрмәтін ұрлау деп аталатын әдіс арқылы. Назарда болыңыз, қарапайым мәтін немесе инициализациялық вектордың (IV) бір биті өшкенімен, одан кейінгі шифрмәтін блоктарына әсер етеді. Егер дұрыс емес IV қолданылса, алғашқы қарапайым мәтін блогы бұзылады, бірақ келесі қарапайым мәтін блоктары дұрыс болады. Өйткені әр блок алдыңғы блоктың шифрмәтінімен XOR операциясы арқылы салыстырылады, қарапайым мәтінмен емес, сондықтан ағымдағы блокты шифрлау үшін оны алдымен шифрлеудің қажеті жоқ. Бұл қарапайым мәтін блогын шифрмәтіннің екі іргелес блогынан қалпына келтіруге болады дегенді білдіреді. Осының салдарынан, шифрлауды параллельдеуге болады. Шифрмәтінде бір бит өшкенімен, қарапайым мәтіннің сәйкес блогы толығымен бұзылады және келесі қарапайым мәтін блогындағы сәйкес бит инверсияланады, бірақ қалған блоктар өзгеріссіз қалады. Бұл ерекшелік POODLE сияқты түрлі оракул шабуылдарында пайдаланылады. Анық инициализациялық векторлар осы қасиетті пайдаланып, қарапайым мәтінге бір кездейсоқ блокты қосады. Шифрлау әдеттегідей жүзеге асырылады, бірақ IV шифрлау процедурасына жіберудің қажеті жоқ. Шифрлау үшін қолданылған IV қандай болса да, тек кездейсоқ блок "бұзылады". Оны қауіпсіз түрде жоюға болады, ал шифрлаудың қалған бөлігі бастапқы мәтін болып табылады.

Толық блоктық CFB

Шифрлеу кері байланыс (CFB) режимі, ең қарапайым түрінде блок шифрінің барлық нәтижесін пайдаланады. Осы нұсқада ол CBC-ге өте ұқсас, блок шифрін өзін-өзі синхрондайтын ағын шифріне айналдырады. Осы нұсқада CFB шифрлауды ажырату, кері орындалған CBC шифрлеуге дерлік толық сәйкес келеді:

CFB-1, CFB-8, CFB-64, CFB-128 және т.б.

NIST SP800 38A CFB-ді бит енімен анықтайды. CFB режимі сондай-ақ 1 ≤ s ≤ b шартымен s деп белгіленетін бүтін сан параметрін қажет етеді. CFB режимінің төмендегі сипаттамасында әрбір ашық мәтін сегменті (Pj) және шифрланған мәтін сегменті (Cj) s биттен тұрады. s мәні кейде режим атауына қосады, мысалы, 1 биттік CFB режимі, 8 биттік CFB режимі, 64 биттік CFB режимі немесе 128 биттік CFB режимі. Бұл режимдер негізгі блок шифрінің нәтижесін қысқартады. CFB 1 өзін-өзі синхрондауға және шифрланған мәтіннің жоғалғанына төзімді деп есептеледі; "1 биттік CFB режимі қолданылғанда, синхрондау енгізілген немесе жойылған биттен кейін b+1 позициядан автоматты түрде қалпына келтіріледі. CFB режиміндегі s-тің басқа мәндері үшін және осы ұсынымдағы басқа құпиялылық режимдері үшін синхрондау сыртқы түрде қалпына келтірілуі тиіс" (NIST SP800 38A). Яғни, AES сияқты 128 биттік блок шифрында 1 бит жоғалса, жарамды биттерді шығару алдында 129 жарамсыз бит пайда болады. CFB кейбір ерекше жағдайларда, көрсетілгеннен басқа да, өзін-өзі синхрондауға қабілетті. Мысалы, 128 биттік блок шифрын қолданатын CFB 128 режимінде бір бит өзгеретін болса, екі блоктан кейін қайта синхрондалады. (Дегенмен, CFB 128 және басқалары біт жоғалтуын дұрыс өңдемейді; бір біт жоғалса, шифрды ашушы шифрлаушымен синхрондылығын жоғалтады).

CFB басқа режимдермен салыстырғанда

CBC режимі сияқты, ашық мәтіндегі өзгерістер шифрмәтінде шексіз таралады, және шифрлауды параллельдеуге болмайды. CBC сияқты, шифрды шешу параллельдеуге болады. CFB, OFB және CTR режимдері CBC режимінен екі артықшылыққа ие: блок шифрі тек шифрлау бағытында ғана қолданылады, және хабарламаны шифр блогының көлеміне сәйкес етіп толтырудың қажеті жоқ (бірақ шифрмәтін ұрлау әдісін де CBC режимінде толтыруды қажетсіз ету үшін қолдануға болады).

Санақшы (CTR)

Ескерту: CTR режимі (CM) сонымен қатар бүтін сандар санағы (ICM) және сегменттелген бүтін сандар санағы (SIC) режимі деп те аталады. OFB сияқты, CTR режимі блок шифрін ағын шифріне айналдырады. Ол келесі кілт ағыны блогын "санағыштың" тізбектелген мәндерін шифрлау арқылы жасайды. Санағыш ұзақ уақыт бойы қайталанбайтын тізбек шығаратын кез келген функция болуы мүмкін, бірақ қарапайым инкремент (бірге арттыру) санағышы ең оңай және танымал. Күрделі детерминистік кіріс функциясын қолдану бұрын дау тудырды; сыншылар «криптожүйені белгілі жүйелі кіріске уәжді түрде ашу қажетсіз тәуекелді білдіреді» деп мәлімдеді. Дегенмен, қазіргі таңда CTR режимі кеңінен қабылданды, ал кез келген мәселелер негізгі блок шифрінің нашарлығы болып саналады, ол кірістегі жүйелік бұрмалауларға қарамастан қауіпсіз болуы күтіледі. CTR режимін 1979 жылы Уитфилд Диффи және Мартин Хеллман енгізді. CTR режимі OFB-ге ұқсас қасиеттерге ие, бірақ сонымен қатар шифрлауды жолдауда кездейсоқ қол жеткізуге мүмкіндік береді. CTR режимі көппроцессорлық машинада жұмыс істеуге өте ыңғайлы, онда блоктарды параллель шифрлеуге болады. Бұған қоса, ол OFB-ге әсер ететін қысқа цикл мәселесінен зардап шекпейді. Егер IV/nonce кездейсоқ болса, оларды кері операцияны (конкатенация, қосу немесе XOR) қолдана отырып, санағышпен біріктіруге болады, шифрлау үшін бірегей санау блогын жасау үшін. Кездейсоқ емес нонс (мысалы, пакет санағышы) болған жағдайда, нонс пен санағыш конкатенациялануы керек (мысалы, нонс 128 биттік санау блогының жоғарғы 64 битінде, санағыш төменгі 64 битінде сақталады). Нонс пен санағышты бір мәнге қосу немесе XOR жасау, көп жағдайда таңдалған ашық мәтіндік шабуыл кезінде қауіпсіздікті бұзуы мүмкін, өйткені шабуылшы IV-санағыш жұбын манипуляциялап, шабуыл жасауға тырысуы мүмкін. Шабуылшы IV-санағыш жұбы мен ашық мәтінді басқара бастағаннан кейін, шифрмәтіннің белгілі ашық мәтінмен XOR-і, басқа блокпен ортақ IV-санағыш жұбына ие болғанда, сол блокты шифрлауға мүмкіндік беретін мәнді береді. Бұл схемадағы нонс басқа схемалардағы инициализациялау векторына (IV) тең екенін ескеріңіз. Алайда, егер офсет/орналасу туралы ақпарат бұзылса, байт офсетіне байланысты мұндай деректерді ішінара қалпына келтіру мүмкін болмайды.

Басқа режимдер және басқа криптографиялық примитивтер

Блок шифрлаудың көптеген басқа да жұмыс режимдері ұсынылды. Кейбіреулері қабылданды, толық сипатталды (тіпті стандартталды) және қолданылуда. Басқалары қауіпсіз емес деп танылды және оларды ешқашан қолдануға болмайды. Тағы басқалары құпиялылық, түпнұсқалық немесе куәландырылған шифрлау ретінде жіктеле алмайды, мысалы, кілттің кері байланыс режимі және Дэвис-Мейер хэшингі. NIST блок шифрлері үшін ұсынылған режимдердің тізімін Modes Development бөлімінде сақтайды. Дискіні шифрлау көбінесе осы мақсатқа арналған ерекше режимдерді пайдаланады. Өзгертілмелі тар блок шифрлау режимдері (LRW, XEX және XTS) және кең блок шифрлау режимдері (CMC және EME) дискінің секторларын қауіпсіз шифрлеу үшін жасалған (дискіні шифрлеу теориясын қараңыз). Көптеген режимдер инициализациялық векторды (IV) пайдаланады, ол режимге байланысты, бір рет қана қолданылуы (nonce) керек немесе оның жариялануынан бұрын болжау мүмкін емес болуы керек. CTR, GCM немесе OFB режимінде бір кілтті қайта пайдалану екі немесе одан көп қара мәтінді бірдей кілттік ағынмен XOR операциясына салу болып табылады, бұл ағынды дұрыс пайдаланбау және қауіпсіздіктің күрт жоғалуына әкеледі. NIST Key Wrap алгоритмі және SIV (RFC 5297) AEAD режимі сияқты детерминистік куәландырылған шифрлау режимдеріне IV енгізу ретінде қажет емес, және берілген қара мәтін мен кілт үшін әрқашан бірдей шифрмәтін мен куәландыру таңбасын қайтарады. Басқа IV-ді дұрыс пайдаланбауға төзімді режимдер, мысалы AES GCM SIV, IV-ді пайдаланады, мысалы, бір кілтпен қауіпсіз шифрлене алатын деректердің максималды мөлшері үшін, ал бірдей IV бірнеше рет қолданылса, күрт сәтсіздікке ұшырамайды. Блок шифрлері басқа криптографиялық протоколдарда да қолданылуы мүмкін. Олар әдетте осы жерде сипатталған блок режимдеріне ұқсас режимдерде қолданылады. Барлық протоколдар сияқты, криптографиялық қауіпсіздікті қамтамасыз ету үшін осы режимдерді дұрыс жобалауға көңіл бөлу керек. Криптографиялық хэш-функция құру үшін блок шифрлерін пайдаланатын бірнеше схемалар бар. Мұндай әдістердің сипаттамалары үшін бір бағытты сығу функциясын қараңыз. Криптографиялық қауіпсіз псевдорандомдық сандар генераторларын (CSPRNG) блок шифрлерін пайдалана отырып құруға болады. Хабарламаларды куәландыру кодтары (MAC) көбінесе блок шифрлерінен құрылады. CBC MAC, OMAC және PMAC мысалдар болып табылады.