Post
Topic
Board Идеи
Re: Авторизация на сайтах, при помощи биткоин
by
johhnyUA
on 03/08/2019, 12:15:06 UTC
Просто чудесно, где то на уровне трамваев на Эфире и сисек на блокчейне.
Объясняю:

1. Владельцем адреса биткоина - является владелец приватного ключа, соответствующего этому адресу.
2. Владелец, как клиент - заходит на сервер.
3. Сервер генерирует ему какое-то значение, и просит его подписать.

Здесь две проблемы: лень и безопастность. И они взаимосвязанны.
Не будешь же ты вводить приватный ключ в поле, которое любезно предоставит сайт, правда? Значит надо лезть в Core/Electrum/blockchain.info чтобы это сообщение подписать, а это лишний геммор. Это если мы не говорим что у человека аппаратный кошелек, тогда уровень геммора "достать из заначки Трезор - подключить его к компу - подписать сообщение" вообще зашкаливает.
Соответствовать полной безопастности даже мне лень будет (ради говно авторизации на сайте), следовательно, зачем пляски с блокчейном, если сайт может сделать так:

1. Сгенерировать ключ для пользователя, попросить его сохранить, так как это важно
2. Попросить подписать сообщение.


Ну типа зачем здесь биткоин или очередной говно форк, если можно это делать внутренними силами сайта?

4. Клиент, как владелец приватного ключа - подписывает это значение, как сообщение, своим приватным ключём.
5. Клиент - отправляет подписанное сообщение на сервер.

Клиенту лень и клиент посылает сервер нахуй.

7. Так как сообщение проверено на сервере, серверу доступен адрес подписанта

Что? Пока клиент не предоставит публичный ключ/адрес подпись ты никак не проверишь по сути. Приватный ключ шифрует (суть ЕЦП), и шифр без публичного ключа не имеет никакого смысла.


8. Сервер использует адрес подписанта - как уникальный идентификатор (username).

То еще новшество. Думаю это сделает революцию в интернет аутентификации, бегом получать патент.

Плюсы: Очень простая аутентификация. Можно реализовать на нескольких скриптах.
Ага, очень "простая". Зачем здесь именно биткоин, если серверу проще самому генерировать ключевую пару и выдавать ее клиенту?