Криптография.

Криптография.

Anarchy and Recreation

Тема сегодняшнего выпуска - обеспечение конфиденциальности приватной информации и переписки, то есть применение средств криптографии. К методам этой науки относятся все возможные способы скрыть от третьих лиц содержание документов/писем, при этом не скрывая факт их наличия. Сокрытием самого факта наличия зашифрованных данных занимается другая наука - стеганография, но о ней как-нибудь в другой раз.

Самые простые методы шифрования, как например использование символьного алфавита вместо обычного, не имеют практически никакой стойкости перед методами криптоанализа, но тем не менее, также относятся к средствам криптографии.

В этой статье речь пойдёт лишь о шифровании цифровых данных. Проведение всех тех же операций теоретически возможно и с материальными носителями данных (рукописи, распечатанные документы), но потребовало бы очень большого количества материальных ресурсов и времени на осуществление. По этим причинам все современные криптографические системы - цифровые.


Теория. Классификация криптографических систем.

Все алгоритмы шифрования можно поделить на три группы:

Симметричные алгоритмы используют один ключ (Здесь и в дальнейшем ключ - последовательность бит. Ключом может быть практически что угодно.) для шифрования и расшифровки данных. Они непрактичны при использовании для шифрования переписки, так как в этом случае необходимо передать ключ собеседнику по безопасному каналу, что не всегда возможно. Зато симметричные шифры идеально подходят, когда информацию необходимо зашифровать лишь для конфиденциального хранения, без цели передавать её кому-либо. При этом такие алгоритмы работают заметно быстрее асимметричных.

Симметричное шифрование считается наиболее криптостойким. Во многих случаях не зная ключа расшифровать защищённые данные оказывается физически невозможно.

Примерами симметричных алгоритмов являются DES, AES, Twofish, Blowfish, Serpent и т.д.

Асимметричные алгоритмы используют два взаимосвязанных ключа: публичный и секретный. Публичный распространяется всем желающим и используется при шифровании сообщений для владельца ключевой пары и идентификации его сообщений посредством цифровой подписи. Секретный необходим для подписывания своих сообщений и декодирования полученных.

Такие шифры работают медленнее симметричных, но позволяют вести конфиденциальную переписку при отсутствии защищённого канала связи. Асимметричные системы больше подходят для зашифрованной переписки, чем для хранения информации.

С математической точки зрения реализация работы асимметричных криптосистем очень сложна. Из-за того, что публичный и секретный ключи хоть и отличаются по строению и длине, но являются взаимодополняющими, любые асимметричные алгоритмы теоретически могут быть вскрыты методами криптоанализа. При достаточной вычислительной мощности теоретически возможно вычислить секретный ключ из публичного. Такие криптосистемы существуют лишь потому, что на подобные вычисления даже самым мощным компьютерам понадобилось бы от ста до нескольких тысяч лет непрерывной работы.

Широко известны такие асимметричные алгоритмы, как DSA, RSA, Elgamal.

Хеш-функции в полной мере не являются алгоритмами шифрования, хотя и действуют сходным образом. Информацию, зашифрованную хеш-функцией, уже невозможно расшифровать, но можно использовать для проверки подлинности исходных данных. Длинна хеш-функции фиксированная, независимо от длинны сообщения, к которому она применена.

Хеш-функций очень много, самые распространённые из них: SHA-1, SHA-2 (в том числе SHA-256 и SHA-512), MD5, CRC32, RIPEMD160, ADLER32, WHIRLPOOL.

На практике для разных целей применяются криптосистемы, содержащие все три вида алгоритмов.

(С) AnarchyAndRecreation.

Report Page