Сообщения в Мигрирующая авторизация

Мигрирующая авторизация

В рамках реализации elp прикручивание туда юзеров создало только лишние проблемы, и решил вообще вынести юзерскую часть в отдельный сервис - так я значительно упростил и то, и другое.

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

Сама система регистрации очень простая, исходники можно посмотреть на http://gk11.ru/s/regcenter.tar.gz, а пример - на http://u.gk11.ru

Есть публичный и приватный ключи. Станция регистрации подписывает своим приватным ключом некий квиток, в котором от своего имени гарантирует, что обладатель сего квитка - Вася с улицы Ленина,14. И все, кто принимает публичный ключ этой станции, принимают юзера, как Васю с улицы Ленина,14.

Формат квитка:
ИМЯ
УЛИЦА,ДОМ
ОПЦИИ
ПОДПИСЬ

Всё всё это упаковывается в urlsafe_base64, и чтобы было видно, это это именно квиток, по бокам оно маркируется символом :. Всё, теперь эту строку чуть более 100 байт можно применять на других доверяющих станциях, либо логинясь на них, либо прямо в форме ответа вставлять её.

В опциях сейчас проставляется дата создания регистрации, чтобы можно было отсекать или дополнительно просеивать новоделов.

Я сейчас реализовываю это на своей станции, кто хочет присоединиться - присоединяйтесь, дабы тестировать межстанционное взаимодействие. В идеале, в дальнейшем можно сделать один, но хороший и надёжный центр регистрации юзеров на несколько станций сразу.
gk11 to All (2017-11-24 02:25:06) [ссылка]

Re: Мигрирующая авторизация

Ответ на сообщение
центр выдачи виз на php
http://z90250ap.beget.tech/reg/

выдаёт одноразовые случайные аккаунты, валидные для всех, кто принимает ключ http://z90250ap.beget.tech/reg/php.key
gk11 to gk11 (2017-11-24 03:57:38) [ссылка]

Re: Мигрирующая авторизация

Ответ на сообщение
Исходники почитаю обязательно, но хотелось бы еще сухого описания протокола.
Difrex(mobile) to gk11 (2017-11-27 08:22:03) [ссылка]

Re: Мигрирующая авторизация

Ответ на сообщение
хм, исходная статья и есть сухое описание протокола. вот исходник php-шного ключегенератора
function b64($data) {return strtr(base64_encode($data), '+/', '-_');}
$priv_key = '-----BEGIN RSA PRIVATE KEY-----...-----END RSA PRIVATE KEY-----';
$addri = rand(1,9999);
$pkeyid = openssl_get_privatekey($priv_key);
$data = $u . "
php,$addri

";
openssl_sign($data, $signature, $pkeyid);
$key = b64($signature);
$kvitok = b64($data.$key);
чекинг ключа аналогичный - проверяется валидность по всем доступным ключам
после чего имя и адрес подставляются в отправляемое сообщение
gk11 to Difrex(mobile) (2017-12-05 02:53:45) [ссылка]

Re: Мигрирующая авторизация

Ответ на сообщение
gk11> хм, исходная статья и есть сухое описание протокола
Это не так. В качестве документации это плохо годится. Т.е. по твоему сообщению можно, наверное, что-то реализовать, но будет больно.

// Нужно читать код :)
Difrex(mobile) to gk11 (2017-12-05 20:29:28) [ссылка]

Re: Мигрирующая авторизация

Ответ на сообщение
это не документация, это сухое *полусладкое* описание протокола. хотя, честно говоря, я даже не знаю, что туда ещё добавить - если есть вопросы, спрашивай
gk11 to Difrex(mobile) (2017-12-06 00:24:12) [ссылка]