Кстати да, к твоей идее. Я в своем том посте немного криво объяснил, но извлекать публичный ключ из сигнатуры можно только зная саму подпись + тело сообщения + вид использованой кривой. Это может добавить лишнего геммора для аутентификации. Сервер должен отправить сообщение, сохранить его, получить подпись и тогда уже работать (в итоге он получит два публичных ключа, один из которых наш искуемый)
В общем-то, эти три параметра можно определить по
формату подписанного сообщения. Например, если речь о Bitcoin или Ethereum, то эллиптической кривой будет secp256k1 (разумеется, с различными методами хеширования публичного ключа). Если же речь о Monero, то кривая будет ed25519, и так далее.
Большое количество аков может и не создавать трудностей в открытой системе, при наличии системы ранжирования. Например, сейчас любой сайт может нагенерировать миллиард страниц. Но только эти страницы не попадут в поисковую выдачу. Поэтому пропадает смысл в такой генерации. Аналогично и с аккаунтами. Посты (или другой контент) от аков с нулевым рейтингом (трастом) могут просто не отображаться в списке, или быть на 100500 странице. Тоже самое и в различных системах голосования и оценки контента - вес разных аков может отличаться от 0 до 1000000.
Насчёт ранжирования участников верно отмечено. Это похоже на публикацию своих PGP-ключей на тематических сайтах, которые пользователи сами выкладывают для последующей идентификации и авторизации при утере контроля над аккаунтом. Но следует заметить, что в PGP по умолчанию используется асимметричная криптография RSA, а не ECDSA.
Собственно, как раз на форуме Bitcointalk реализовано
стейкирование своего Bitcoin-адреса для последующего восстановления в случае взлома профиля. При этом вовсе не обязательно, чтобы на кошельке лежали монеты BTC.