Как безопасно перенести старый закрытый ключ на новый?

Я могу подписать новый (общедоступный) ключ старым (закрытым) ключом для безопасной передачи от одного к другому. Но, насколько я могу судить, ничто не мешает любому, кто получит старый ключ, подписать другой новый ключ как официальный, даже намного позже, после того, как я отказался от старого.

Если я отзову старый закрытый ключ, никто не сможет сделать эту фальшивую подпись, и это хорошо. Но разве отзыв ключа не означает, что его подпись нового ключа будет признана недействительной? (А также каждую сделанную подпись?)

Так что тот, кто знает меня как «Элис», сможет сказать, что я такой же, даже если я «Боб». Но потом они видят отзыв «Алисы», и в этом случае им приходится выбрасывать все свои знания обо мне, будь то Алиса или Боб?


person cyisfor    schedule 28.06.2016    source источник
comment
Как вы установили свое право собственности на исходную пару ключей? Можете ли вы повторить этот процесс для нового?   -  person Thilo    schedule 29.06.2016
comment
security.stackexchange.com лучше подходит для этого вопроса.   -  person user2357112 supports Monica    schedule 29.06.2016


Ответы (1)


Обычный способ справиться с этим — использовать разные ключи для подписи ключей и для подписи «полезных» данных.

Ключ подписи данных находится на онлайн-сервере, где он вызывается автоматически, и поэтому существует риск неправильного использования. Этот ключ регулярно поворачивается. В принципе, его не нужно было бы вращать: просто отозвать, если что-то не так. Но на практике аннулирование затруднено: часто трудно гарантировать, что каждая сторона, полагающаяся на подписи, своевременно увидит сообщение об аннулировании. Срок действия гарантирует, что даже если сторона не увидит сообщение об отзыве, она не будет долго принимать скомпрометированные подписи.

Ключ подписи ключа находится на автономном сервере со строгим контролем доступа, и, поскольку он намного лучше защищен, риск его компрометации очень низок.

Система с ключами, которые подписывают другие ключи, называется инфраструктурой открытых ключей. Многие системы имеют несколько уровней ключей подписи. Самая известная экосистема PKI — это та, которая используется для HTTPS, с серверами, имеющими сертификат, подписанный промежуточный центр сертификации, который, в свою очередь, имеет сертификат, подписанный другим ЦС, пока вы не достигнете корневого ЦС . Промежуточные центры сертификации находятся в сети, но управляют специализированными системами, которые только и делают, что подписывают сертификаты. Ключи к корневым сертификатам ЦС распределяются между несколькими сотрудниками, которые раз в несколько лет собираются в хранилище без подключения к Интернету для создания нового промежуточного ключа.

Запуск собственного ЦС с OpenSSL не тривиален, но выполним, и вы найдете множество руководств в Интернете.

person Gilles 'SO- stop being evil'    schedule 19.03.2019