ZeroNet Blogs

Static ZeroNet blogs mirror

TODO: восстановление приватного ключа из address_index через UI ZeroNet

- Posted in Geekless.Blog by

В продолжение предыдущего поста.

Первый вариант. Можно добавить в код, работающий с подписыванием сайта, следующую логику:

  • Если приватный ключ не указан, то пытаемся сгенерировать ключ из master_seed и address_index и если он подходит, используем его.

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

Поэтому преходим ко второму варианту:

Выдвигающаяся справа панель на клиентской стороне работает как зайт, но на серверной реализована как плагин ядра ZN. Так что оттуда доступны все возможности ядра напрямую. Именно там мы включаем переключатель This is my site, после чего можем работать с сайтом в режиме владельца.

Идея заключается в том, чтобы сделать под этим переключателем кнопку Generate Private Key from Master Seed. Нажатие на эту кнопку будет восстанавливать ключ, и если ключ подходит, записывать его user.json.

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

Comments