3.14.3. Асимметричные алгоритмы шифрования
Симметричные методы шифрования удобны, когда заранее известен круг лиц, участвующих в обмене информацией, подлежащей шифрованию и дешифрованию.
Асимметричные алгоритмы шифрования позволяют получателю обеспечивать шифрование информации, направляемой ему неограниченным количеством отправителей. Кроме того, использование этих алгоритмов позволяет проводить аутентификацию участников обмена информацией и осуществлять контроль целостности передаваемой информации.
Общий принцип работы асимметричных алгоритмов заключается в следующем:
участник информационного обмена генерирует пару ключей. При этом данные, зашифрованные одним из ключей, могут быть расшифрованы только другим ключом. Один из этих ключей является открытым (общедоступным), другой — закрытым (секретным). Секретный ключ участник хранит у себя, а открытый распространяет всем желающим отправлять ему шифрованные сообщения. Открытый ключ — это функция, при помощи которой отправитель может зашифровать свое сообщение, но ни он сам, ни кто-либо другой не может дешифровать это сообщение, используя открытый ключ. Для дешифрования сообщения (т. е. осуществления обратной операции — вычисления значения аргумента по значению функции) необходимо знать некоторый параметр указанной функции, который, по сути, и является закрытым ключом;
отправитель сообщения шифрует информацию открытым ключом и передает ее получателю по каналам связи;
получатель дешифрует сообщения, используя свой закрытый ключ.
Наиболее распространенные алгоритмы асимметричного шифрования приведены ниже:
RCA. Алгоритм разработан в 1977 году и использует открытые ключи, обеспечивающие преобразование информации "только в одну сторону" (шифрование) за счет сложности решения задачи факторизации (разложения на множители) больших чисел;
ЕСС (Elliptic Curve Cryptography). Однонаправленность пpeобразований (шифрования) обеспечивается в этом методе сложностью математических вычислений, связанных с эллиптическими кривыми.