Читать «Введение в криптографию» онлайн - страница 29
Филипп Циммерманн
Как защитить открытый ключ от подмены
В среде криптосистем с открытым ключом вам нет нужды предохранять открытые ключи от компрометации. Напротив, гораздо лучше, когда они широко распространены. Но очень важно защищать их от подделки, дабы всегда сохранялась уверенность, что конкретный открытый ключ действительно принадлежит человеку, чьё имя указано в сведениях сертификата. В этом состоит самое слабое место криптосистем с открытым ключом и это их главная уязвимость. Давайте для начала представим потенциально возможный инцидент, а затем разберёмся, как его не допустить.
Предположим, вам нужно отправить секретное послание Алисе. Вы скачиваете её сертификат и открытый ключ с сервера-депозитария, затем этим ключом зашифровываете письмо и отправляете его по электронной почте.
К несчастью для вас и Алисы, злоумышленник Мэллори сгенерировал собственную ключевую пару с идентификационными сведениями Алисы в сертификате (имя, email), взломал сервер и незаметно подменил подлинный открытый ключ Алисы своей подделкой. Ничего не подозревая, вы использовали поддельный ключ Мэллори вместо открытого ключа Алисы, ведь всё выглядело вполне правдоподобно, поскольку на поддельном ключе была идентификационная информация Алисы. Теперь Мэллори может перехватить и расшифровать сообщение, предназначенное Алисе, поскольку в его распоряжении соответствующий закрытый ключ. Он даже может вновь зашифровать письмо реальным ключом Алисы и отправить его по назначению, так что никто не заметит ничего подозрительного. Более того, он может делать собственным закрытым ключом подписи, якобы принадлежащие Алисе, поскольку для их проверки все будут использовать его подставной открытый ключ.
Единственный способ избежать подобной проблемы — не допускать махинаций с открытыми ключами. Это несложно, если вы получили открытый ключ Алисы непосредственно от неё при личной встрече, но может оказаться весьма проблематичным, если она в тысячах миль от вас или просто в данный момент недоступна.
Вероятно, вы сможете получить ключ Алисы от вашего с ней общего друга Дэвида, который имеет подлинную копию её открытого ключа. Дэвид может подписать открытый ключ Алисы собственным закрытым, тем самым поручаясь за его достоверность.