Кіріспе
Цифрлық қолтаңбаның түрі Криптографияда Дэвид Шоум енгізгендей, соқыр қолтаңба – бұл хабарламаның мазмұны қол қойылмас бұрын жасырылатын (соқырланған) цифрлық қолтаңбаның түрі. Нәтижесінде пайда болған соқыр қолтаңбаны әдеттегі цифрлық қолтаңба сияқты бастапқы, соқырланбаған хабарламаға қатысты ашық түрде тексеруге болады. Соқыр қолтаңбалар көбінесе қол қоюшы мен хабарлама авторы әртүрлі тараптар болатын құпиялылықты қамтамасыз ететін протоколдарда қолданылады. Мысалдарға криптографиялық сайлау жүйелері және цифрлық ақша схемалары жатады. Криптографиялық соқыр қолтаңбаға жиі қолданылатын аналогия – сайлаушының толық толтырылған анонимді бюллетеньді арнайы көмірқағазбен жабылған конвертке салып, сыртында сайлаушының куәлігі алдын ала басылған жағдай. Шенеунік куәлікті тексеріп, конвертке қол қояды, осылайша оның қолы көмірқағаз арқылы ішкі бюллетеньге көшіріледі. Қол қойылғаннан кейін пакет сайлаушыға қайтарылады, ол қол қойылған бюллетеньді жаңа, таңбаланбаған конвертке салады. Осылайша, қол қоюшы хабарламаның мазмұнын көрмейді, бірақ үшінші тарап кейіннен қолтаңбаны тексеріп, оның негізгі қолтаңба схемасының шектеулерінде жарамды екенін біле алады. Соқыр қолтаңбалар байланыстыру мүмкін еместігін қамтамасыз ету үшін де қолданылуы мүмкін, бұл қол қоюшыға қол қойған соқырланған хабарламаны кейіннен тексеруге шақырылатын соқырланбаған нұсқасымен байланыстыруға кедерес келтіреді. Бұл жағдайда қол қоюшының жауабы тексеруден бұрын «соқырландырылады», осылайша қолтаңба соқырланбаған хабарлама үшін жарамды болып қалады. Бұл анонимділік қажет болатын схемаларда пайдалы болуы мүмкін. Соқыр қолтаңба схемаларын көптеген жалпы ашық кілт қолтаңба схемаларын пайдалану арқылы жүзеге асыруға болады, мысалы RSA және DSA. Мұндай қолтаңбаны орындау үшін хабарды алдымен «соқырландыру» керек, әдетте оны кездейсоқ «соқырландыру факторымен» біріктіру арқылы. Соқырланған хабарлама қол қоюшыға жіберіледі, ол оны стандартты қол қою алгоритмі арқылы қол қояды. Нәтижесінде алынған хабарлама және соқырландыру факторы кейіннен қол қоюшының ашық кілтімен салыстырылуы мүмкін. Кейбір соқыр қолтаңба схемаларында, мысалы RSA, қолтаңба тексерілгенге дейін соқырландыру факторын жоюға болады. Бұл схемаларда соқыр қолтаңба схемасының соңғы нәтижесі (хабарлама/қолтаңба) қалыпты қолтаңбалау протоколымен бірдей.
In cryptography a blind signature, as introduced by David Chaum, is a form of digital signature in which the content of a message is disguised (blinded) before it is signed. The resulting blind signature can be publicly verified against the original, unblinded message in the manner of a regular digital signature. Blind signatures are typically employed in privacy related protocols where the signer and message author are different parties. Examples include cryptographic election systems and digital cash schemes. An often used analogy to the cryptographic blind signature is the physical act of a voter enclosing a completed anonymous ballot in a special carbon paper lined envelope that has the voter's credentials pre printed on the outside. An official verifies the credentials and signs the envelope, thereby transferring his signature to the ballot inside via the carbon paper. Once signed, the package is given back to the voter, who transfers the now signed ballot to a new unmarked normal envelope. Thus, the signer does not view the message content, but a third party can later verify the signature and know that the signature is valid within the limitations of the underlying signature scheme. Blind signatures can also be used to provide unlinkability, which prevents the signer from linking the blinded message it signs to a later un blinded version that it may be called upon to verify. In this case, the signer's response is first "un blinded" prior to verification in such a way that the signature remains valid for the un blinded message. This can be useful in schemes where anonymity is required. Blind signature schemes can be implemented using a number of common public key signing schemes, for instance RSA and DSA. To perform such a signature, the message is first "blinded", typically by combining it in some way with a random "blinding factor". The blinded message is passed to a signer, who then signs it using a standard signing algorithm. The resulting message, along with the blinding factor, can be later verified against the signer's public key. In some blind signature schemes, such as RSA, it is even possible to remove the blinding factor from the signature before it is verified. In these schemes, the final output (message/signature) of the blind signature scheme is identical to that of the normal signing protocol.
Қолданылуы
Соқыр қолтаңба схемалары жіберушінің құпиялылығы маңызды қолданбаларда кеңінен қолданылады. Бұған түрлі "цифрлық ақша" схемалары мен дауыс беру протоколдары жатады. Мысалы, кейбір электрондық дауыс беру жүйесінің қауіпсіздігі үшін әрбір бюллетень санауға қабылданбас бұрын сайлау органымен расталуы керек; бұл органға дауыс берушінің өкілеттіліктерін тексеруге, оларға дауыс беруге рұқсат етілгенін және бір бюллетеньнен артық жібермегенін қамтамасыз етуге мүмкіндік береді. Сонымен қатар, осы органның дауыс берушінің таңдауын білмеуі өте маңызды. Қолтаңбалаусыз соқыр қолтаңба осы кепілдікті қамтамасыз етеді, себебі орган қол қойған бюллетеньдердің мазмұнын көре алмайды және қол қойған соқыр бюллетеньдерді санау үшін алған соқыр емес бюллетеньдермен байланыстыра алмайды.
Соқыр қолтаңбалау жүйелері
Көптеген ашық кілт қол қою протоколдары үшін соқыр қол қою схемалары бар. Көбірек формальды түрде, соқыр қолтаңба схемасы – екі тарапты қамтитын криптографиялық протокол: өзінің хабарламаларына қолтаңба алуды қалайтын Alice пайдаланушысы және құпия қол қою кілтіне ие Bob қол қоюшы. Протоколдың соңында Алиса Бобтың m хабарына қолтаңбасын алады, бірақ Боб бұл хабар туралы ештеңе білмейді. Бұл "ешнәрсе білмеу" түсінігін математикалық тұрғыда бейнелеу қиын. Көбінесе, әрбір (жаман ниетті) қол қоюшы үшін, қол қоюшы сияқты бірдей ақпаратты шығара алатын симулятор бар екенін көрсету арқылы дәлелдейді. Бұл нөлдік білімді дәлелдеу жүйелеріндегі нөлдік білімнің анықтамасына ұқсас.
RSA-ның соқыр белгіленуі
RSA, RSA соқырлау шабуылына ұшырайды, осы арқылы басқа хабарламаға соқыр қол қою арқылы хабарламаны шифрлауға алдануға болады. Қол қою процесі қол қоюшының құпия кілтімен шифрлауды шешумен тең болғандықтан, шабуылшы қол қоюшының ашық кілтімен шифрланған хабарламаның соқырланған нұсқасын қол қою үшін ұсына алады. Шифрланған хабарлама әдетте шабуылшы қол қоюшының ашық кілтімен шифрланған түрде жіберілгенін байқаған құпия ақпарат болады, оны шабуылшы көбірек білуге тырысады. Шабуылшы соқырлауды жойғанда, қол қойылған нұсқада ашық мәтін пайда болады:
мұнда – хабарламаның шифрланған нұсқасы. Хабар қол қойылған кезде, ашық мәтін оңай алынады:
Ескеріңіз, бұл Эйлердің тотиенттік функциясын білдіреді. Хабарды енді оңай алуға болады. Бұл шабуыл соқыр қолтаңба схемасында қол қоюшы хабарламаға тікелей қол қойғандықтан жұмыс істейді. Керісінше, соқырланбаған қолтаңба схемасында қол қоюшы әдетте толтыру схемасын қолданады (мысалы, хабарламаның өзіне қол қоюдың орнына, хабарламаға қолданылған криптографиялық хэш-функцияның нәтижесіне қол қою арқылы), бірақ қол қоюшы нақты хабарламаны білмейтіндіктен, кез келген толтыру схемасы соқырланғанда дұрыс мәнді бермейді. RSA-ның осы көбейту қасиетіне байланысты, шифрлау және қол қою мақсаттары үшін бір кілтті ешқашан қолдануға болмайды.