- PVSM.RU - https://www.pvsm.ru -
Управление ключами играет важнейшую роль в криптографии, как основа защищённого обмена информацией, идентификации и целостности данных.

Важным свойством хорошо спроектированной системы управления ключами является решение, как минимум, двух сложных задач: обеспечения безопасности многочисленных ключей и локализации ответственности пользователя.
«Мечта об исправно работающей PKI стара, как сама идея криптоключа, – сказал как-то автор одного PKI решения [1]. — Сделать основанные на криптографии инструменты простыми и доступными каждому пользователю — это еще одна сложная задача, которую разработчики общедоступной инфраструктуры поддержки и использования криптоключей давно пытаются решить и, похоже, им это начинает удаваться.»
Автор и разработчик программы Олег Ховайко рассказал блогу Hashflare [2] о практических свойствах и значении своей разработки. (Напомним, что ранее мы уже писали о новой криптовалютной сети Эмеркоин [3], в рамках которой функционирует несколько инновационных разработок):
Предположим, что вы — системный администратор довольно крупной распределённой сети. Под вашим управлением — десятки и сотни компьютеров, к которым нужно обеспечивать доступ пользователей через ssh (secure shell). В нашей сети существуют также групповые адреса-роли, к которым имеют доступ сразу несколько пользователей.
Один из примеров управления сетью – это система pubmed.gov [4], над которой я когда-то работал. Для администрирования сети из 500 компьютеров, и нескольких десятков групповых аккаунтов, к которым имеют доступ десятки человек, необходим удобный способ управления этими данными.
Допустим, если на работу принимают нового сотрудника, ему необходимо предоставить доступ в какие-то аккаунты. Если сотрудника увольняют, доступ для него, соответственно, должен быть закрыт. Чтобы не перенастраивать вручную более 500 машин, с целью добавить или удалить нужный публичный ключ, нужна инфраструктура управления публичными ключами, PKI.
Олег пояснил, что ранее для решения проблемы управления публичными ключами применялись только PKI-решения корпоративного уровня с выделенными серверами авторизации: домен-контроллерами (на которых работал LDAP/Kerberos).Подобные решения требуют многократного дублирования (на случай падения сервера) и решения проблемы репликации данных между серверами авторизации. В результате, получается отдельная сеть в сети, требующая дополнительного обслуживания и соответствующих расходов. Коммерческие предложения по домен контроллерам от Oracle [5], IBM [6], HP [7] стартуют от $5000. Создать глобальную систему достоверной аутентификации на базе таких решений никто ранее не пытался. Но на базе блокчейна сделать это оказалось возможным.
Emcssh — это инфраструктура публичных ключей общемирового масштаба, World Wide Public Key Infrastructure. Она решает проблему управления ключами, используя то свойство блокчейна, что он достоверен и не может быть фальсифицирован. Достоверность поддерживается постоянной работой майнеров.
Индивидуальный пользователь генерирует пару ключей, и в своём кошельке регистрирует публичный ключ из пары в EmerCoin NVS.
В качестве имени ключа используется произвольная текстовая строка с сервис-префиксом «ssh:», например: ssh:geek.
После регистрации этот ключ попадает в блокчейн и становится доступным каждому кошельку сети. Любой сервер, участвующий в emcshh, держит запущенным EMC-кошелёк, из которого может, при необходимости, быстро извлечь тот или иной публичный ключ. При логине пользователя на сервер, поддерживающий emcshh, запускается программа emcssh, которая читает локальный файл, содержащий имена ключей с разрешенным доступом.Предположим, имеется групповой акаунт netadm, к которому разрешён доступ emcshh -пользователям kamillo и emergator. Тогда файл emcshh_keys будет содержать две строки-имени:
kamillo
emergatorЕсли администратор решил дать доступ к этому аккаунту пользователю geek, то это имя он просто добавляет в файл.
Вместо самих ключей, в файле хранятся только имена держателей ключей, по которым emcssh из блокчейна достаёт ключи. Администратору не приходится иметь дело с длинными строками нечитаемых символов, вместо них — короткие имена. В случае, если пользователь решил заменить свой ключ, он может сам, локально, в своём кошельке заменить его в NVS-записи — и новый ключ распространится по сети, после чего все сервера начинают распознавать новый ключ, а старый автоматически отзывается.
Еще одно важное свойство emcssh заключается в том, поясняет Олег, что списки доступа также могут находиться в блокчейне, и управление ими становится столь же удобным, как управление индивидуальными ключами.
Допустим, администратор решил дать доступ к групповому акаунту netadm всем сотрудникам проекта EmerCoin. Для этого он должен добавить в свой файл emcssh_keys ссылку на NVS-запись EmercoinTeam. Cсылку можно добавить, присоединив символ '@' к имени.
Тогда файл emcssh_keys будет иметь вид:
kamillo
emergator
geek
@ EmercoinTeamПри обработке такого файла emcssh найдёт ключи для пользователей (kamillo, emergator, geek), а ссылку @EmercoinTeam обработает как список, имён пользователей, и уже для них найдёт соответствующие ключи. Списки могут быть вложенными, и обрабатываются рекурсивно. Например, может существовать список corp_team, который ссылается на списки
@ support, @ admins, @ tech. А те, в свою очередь, могут содержать как ssh-ключи, так и ссылки на другие имена и списки.
Таким образом, преимущество emcssh заключается в том, что стоит один раз при установке сервера включить EmerCoin клиент – и все администрирование доступа будет сведено к управлению именами в вашем кошельке.
Эта разработка решает две существенных задачи, одна из которых – обеспечение простоты администрирования доступа: все изменения в панели управления администратора автоматически распространяются через EmerCoin-сеть и становятся доступными всем участникам. Вторая задача, во сути своей еще более глобальна, так как она относится к сфере локализации ответственности. При помощи emcssh пользователь может сам управлять своей записью, отвечать за ее сохранность, изменять ее содержание. Будь то идентифицирующие данные или пароли от криптокошельков. А администратор группы аккаунтов несет ответственность за свою группу.
В качестве еще одного примера практического применения этой разработки, Олег приводит опыт компании HashCoins:
HashCoins [8] с успехом применяет технологию emcssh для управления доступом к массиву майнеров, расположенных в нескольких дата-центрах. Это решение позволило радикально снизить затраты на администрирование распределённой вычислительной сети. Причём emcssh, помимо стандартного применения (храненине ssh-ключей), использован и для управления списками SerialID SSL-сертификатов подсистемы WEB-доступа EMCSSL.
Публичные ключи ssh не имеют срока давности, поэтому действуют до тех пор, пока не будут заменены хозяином, или же запись в NVS не истечёт.
По всей видимости, emcssh можно отнести к разряду тех инструментов, которые помимо удобства использования, реализуют еще одну важную функцию: позволяют пользователям почувствовать себя более уверенно в виртуальном мире, самолично владея и управляя собственными ключами (списками), и не полагаясь на посредников и третьих лиц.
Автор: HashFlare
Источник [9]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/informatsionnaya-bezopasnost/100704
Ссылки в тексте:
[1] автор одного PKI решения: http://www.coindesk.com/keybase-project-plans-make-cryptography-easy-twitter/
[2] Hashflare: http://geektimes.ru/company/hashflare/blog
[3] новой криптовалютной сети Эмеркоин: http://geektimes.ru/company/hashflare/blog/262600/
[4] pubmed.gov: http://pubmed.gov/
[5] Oracle: http://www.oracle.com/us/products/servers-storage/storage/storage-software/oracle-key-manager/overview/index.html
[6] IBM: http://www-05.ibm.com/dk/security/cccc/products/ekmf.html
[7] HP: http://www8.hp.com/h20195/v2/GetDocument.aspx?docname=4AA5-0654ENW
[8] HashCoins: https://www.hashcoins.com/
[9] Источник: http://geektimes.ru/post/263750/
Нажмите здесь для печати.