Кіріспе
Икемділік – кейбір криптографиялық алгоритмдердің қасиеті. Шифрлау алгоритмі "икемді" деп есептеледі, егер шифрмәтінді басқа шифрмәтінге түрлендіруге болып, ол сәйкес ашық мәтінді шығаратын болса. Яғни, ашық мәтіннің шифрлануы берілгенде, белгілі бір функция бойынша шифрланған мәтінді, мәліметті білмей немесе үйренбей, басқа шифрмәтінге түрлендіруге болады. Икемділік – жалпы мақсаттағы криптожүйеде көбінесе қажетсіз қасиет, себебі ол шабуылшыға хабарламаның мазмұнын өзгертуге мүмкіндік береді. Мысалы, банк қаржылық ақпаратын жасыру үшін ағынды шифр қолданса және пайдаланушы, мысалы, "." деген шифрланған хабарлама жіберсе, шабуылшы сымдағы хабарламаны өзгерте алса және шифрланбаған хабарламаның форматын болжаса, транзакция сомасын немесе қаражатты алушыны өзгерте алады, мысалы: "". Икемділік шабуылшының шифрланған хабарламаны оқу қабілетіне байланысты емес. Бұрын да, кейін де шабуылшы шифрланған хабарламаны оқи алмайды. Дегенмен, кейбір криптожүйелер дизайны бойынша икемді болады. Яғни, кейбір жағдайларда, кез келген адам ашық мәтіннің шифрлануын (шектеулі функциялар класы үшін) жарамды шифрлауға түрлендіре алатыны мүмкіндік ретінде қарастырылады. Мұндай схемалар гомоморфты шифрлау схемалары деп аталады. Криптожүйе таңдалған ашық мәтіндік шабуылдарға немесе тіпті бейімделмейтін таңдалған шифрмәтіндік шабуылдарға (CCA1) қарсы семантикалық тұрғыдан қауіпсіз болуы мүмкін, бірақ сонымен қатар икемді болуы да мүмкін. Алайда, адаптивті таңдалған шифрмәтіндік шабуылдарға (CCA2) қарсы қауіпсіздік, икемсіздікке тең.
Malleability is often an undesirable property in a general purpose cryptosystem, since it allows an attacker to modify the contents of a message. For example, suppose that a bank uses a stream cipher to hide its financial information, and a user sends an encrypted message containing, say, "." If an attacker can modify the message on the wire, and can guess the format of the unencrypted message, the attacker could change the amount of the transaction, or the recipient of the funds, e. g. "". Malleability does not refer to the attacker's ability to read the encrypted message. Both before and after tampering, the attacker cannot read the encrypted message. On the other hand, some cryptosystems are malleable by design. In other words, in some circumstances it may be viewed as a feature that anyone can transform an encryption of into a valid encryption of (for some restricted class of functions ) without necessarily learning Such schemes are known as homomorphic encryption schemes. A cryptosystem may be semantically secure against chosen plaintext attacks or even non adaptive chosen ciphertext attacks (CCA1) while still being malleable. However, security against adaptive chosen ciphertext attacks (CCA2) is equivalent to non malleability.
Қисық крипто жүйелердің мысалы
Ағымдық шифрлауда шифрмәтін жазық мәтін мен құпия кілт негізіндегі псевдорандомдық ағымның эксклюзивті немесе операциясы арқылы шығарылады. Қарсылас кез келген үшін шифрлау құрастыра алады. RSA криптожүйесінде жазық мәтін , онда – ашық кілт ретінде шифрланады. Мұндай шифрмәтін берілген кезде қарсылас кез келген үшін шифрлау құрастыра алады. Осы себепті RSA көбінесе OAEP немесе PKCS1 сияқты толтыру әдістерімен бірге қолданылады. ElGamal криптожүйесінде жазық мәтін , ашық кілт ретінде шифрланады. Мұндай шифрмәтін берілген кезде қарсылас кез келген үшін жарамды шифрлау болып табылатын есептей алады. Керісінше, Крамер-Шоуп жүйесі (ElGamal-ға негізделген) өзгертілмейді. Пайлье, ЭльГамал және RSA криптожүйелерінде бірнеше шифрмәтінді өзара байланысты шифрмәтін жасау үшін пайдалы түрде біріктіруге болады. Пайльеде, тек ашық кілт және шифрлау берілген және , олардың қосындысының жарамды шифрлауын есептеуге болады. ЭльГамал мен RSA-да және шифрлауларын біріктіруге болады, олардың көбейтіндісінің жарамды шифрлауын алуға болады. Шифрлау блоктарының тізбектелу режиміндегі блок шифрлары, мысалы, ішінара өзгертілгіш: шифрмәтін блогындағы битті өзгерту, оның шифрланған мәтінін толығымен бұзады, бірақ келесі блоктың жазық мәтінінде сол биттің өзгертілуіне әкеледі. Бұл шабуылшыға келесідегі кейбір деректерді өзгерту үшін жазық мәтіннің бір блогын «құрбан етуге» мүмкіндік береді, мүмкін хабарламаны қасақана өзгертуге мүмкіндік береді. Бұл негізінен CBC-ге жасалған толтыру оракулының шабуылының негізгі идеясы, бұл шабуылшыға кілтты білмей, шифрмәтіннің көп бөлігін дешифрлеуге мүмкіндік береді. Осы және көптеген себептерге байланысты, кез келген манипуляцияға қарсы қорғаныс үшін хабарламаны аутентификациялау коды қажет.
In the RSA cryptosystem, a plaintext is encrypted as , where is the public key. Given such a ciphertext, an adversary can construct an encryption of for any , as For this reason, RSA is commonly used together with padding methods such as OAEP or PKCS1. In the ElGamal cryptosystem, a plaintext is encrypted as , where is the public key. Given such a ciphertext , an adversary can compute , which is a valid encryption of , for any In contrast, the Cramer Shoup system (which is based on ElGamal) is not malleable. In the Paillier, ElGamal, and RSA cryptosystems, it is also possible to combine several ciphertexts together in a useful way to produce a related ciphertext. In Paillier, given only the public key and an encryption of and , one can compute a valid encryption of their sum In ElGamal and in RSA, one can combine encryptions of and to obtain a valid encryption of their product
Block ciphers in the cipher block chaining mode of operation, for example, are partly malleable: flipping a bit in a ciphertext block will completely mangle the plaintext it decrypts to, but will result in the same bit being flipped in the plaintext of the next block. This allows an attacker to 'sacrifice' one block of plaintext in order to change some data in the next one, possibly managing to maliciously alter the message. This is essentially the core idea of the padding oracle attack on CBC, which allows the attacker to decrypt almost an entire ciphertext without knowing the key. For this and many other reasons, a message authentication code is required to guard against any method of tampering.
Толық пішінсіздігі
Фишлин 2005 жылы толық өзгермейтін қасиетті жүйенің өзгермейтін қасиетін сақтай отырып, қарсыластың бастапқы ашық кілтінің функциясы болатын жаңа ашық кілтті таңдауға қосымша мүмкіндік беру ретінде анықтады. Яғни, қарсылас жасырын мәтінді жасауға шамасы жетпеуі керек, оның астындағы ашық мәтіні бастапқы хабарламамен және ашық кілттерді ескеретін қатынас арқылы байланысты болса.