Часть полного текста документа: Цифровая подпись Цифровая подпись: принципы работы Контрольные суммы, контроль CRC, хэширование и цифровая подпись - базовые средства аутентификации при цифровой передаче данных. Представьте себе ситуацию: вам отправили по электронной почте документ с конфиденциальной информацией по финансированию на будущий год. Вам необходима абсолютная уверенность в том, что полученный файл совершено идентичен оригиналу и содержащиеся в нем цифры не были изменены "в пути". Пара скорректированных значений могут стоить вашей фирме круглой суммы. Подозрение, что документ "в пути" был подделан появляется если некоторые цифры не сходятся, а электронная передача велась через внешнюю почтовую систему. Как убедится в том, что полученный вами документ - абсолютная копия отправленного вам оригинала? Рассмотренная ситуация не настолько искусственна, как может показаться с первого взгляд. В век, когда цифровая коммерция быстро становится реальностью, доверие пользователей к подобного рода системам целиком зависит от безопасности таких транзакций. Если отправить по электронной почте или передать на гибком диске файл с электронной таблицей, то каким образом получатель узнает о том, что никто, через кого эта информация прошла, не внес каких-либо изменений? Если переслать по сети Internet номер своей кредитной карточки, то как адресат убедится в том, что именно вы сделали этот заказ? Решение этих вопросов придется искать в специальном разделе математики, который называют криптографией. Часто под этим термином подразумевается обычное кодирование, однако область криптографии не ограничена лишь теорией шифрования данных. Она также охватывает вопросы, связанные с подменностью цифровых данных - как проверить достоверность цифровых данных и как по аналогии с рукописной подписью на бумаге проставить визу на электронных документах, имея в распоряжении лишь последовательности нулей и единиц. В этой статье рассматриваются ключевые понятия аутентификации цифровой информации - от простейших методов верификации целостности цифровых данных до рассмотрения проекта государственного стандарта США - Digital Signature Standard, а также основные правила оформления цифровой подписи. Контрольные суммы Наиболее простой способ проверки целостности данных, передаваемых в цифровом представлении, - это метод контрольных сумм. Под контрольной суммой понимается некоторое значение, рассчитанное путем сложения всех чисел из входных данных. Если сумма всех чисел превышает максимально допустимое значение, заранее заданное для этой величины, то величина контрольной суммы равна коэффициенту полученной суммы чисел - то есть это остаток от деления итоговой суммы на максимально возможное значение контрольной суммы, увеличенное на единицу. Если сказанное записать в виде формулы, то для расчета контрольной суммы будет использоваться следующее выражение: Checkssum = Total % (MaxVal + 1) где Total - итоговая сумма, рассчитанная по входным данным, и MaxVal - максимально допустимое значение контрольной суммы, заданное заранее. Допустим, документ, содержимое которого предстоит верифицировать, представляет собой следующую последовательность величин, длиной 10 байт: 36 211 163 4 109 192 58 247 47 92 Если контрольная сумма 1 байт величина, то максимальное число, которое она может содержать, равно 255 Для приведенного выше документа сумма всех его чисел равно 1159. ............ |