Автоматическая регистрация на форуме, при нажатии на ссылку с другого сайта.

warobushek

Новичок
Здравствуйте
На одном сервере - форум.
на другом - сайт.

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

Я так понимаю, на том сайте можно сделать ссылку вида
http://forum/register.php?ref=12345
где 12345 - некоторый особый код для регистрации.
При нажатии на нее на том сайте писать в куки определенные данные.

На форуме проверять $_GET['ref'], $_COOKIE и $_SERVER['HTTP_REFERER']
Но как быть уверенным в том , что пользователь пришел именно с того сайта? (ведь $_SERVER['HTTP_REFERER'] можно подделать при желании).
 

Фанат

oncle terrible
Команда форума
А какая разница?
Форум открытый? Любой может кликнуть по ссылке?
 

warobushek

Новичок
Форум закрытый. Регистрация только по этой ссылке либо по подтверждению администратора.
Разница в том, чтоб человек не мог прочитать темы из группы пользователей, к которой он не принадлежит. С этого сайта еще буду передавать инфу в какую группу пользователей его включить.

Сам сайт, на котором ссылка, работает по https, т.е. точно известно что за человек нажимает ссылку.

Использовать RSA-шифрование?
 

С.

Продвинутый новичок
В "12345" при желании можно закодировать и реферер, и пользователя, и вообще сделать одноразовым.
 

warobushek

Новичок
но все равно будет использоваться асимметричное шифрование?
 

Ragazzo

TDD interested
warobushek
возьми открытый ключ , зашифруй им какой нибудь ключ и синхропосылку по ГОСТ и на другом расшифруешь им же, дальше и общайся ГОСТом...сверхсекретность еп)
 

Mamont

Новичок
На сайте сделать ссылку site.my/forumreg.php
При переходе на нее, скрипт генерит уникальный ключ, записывает его в базу и инфу о пользователе.
И происходит редирект на форум forum.my/reg.php?key=AKI987VP989Q2340IA
Скрипт с форума запрашивает подтверждение этого уник. ключа. При успешной проверке, получает инфу о юзере.

Ну как-то так
 

Активист

Активист
Команда форума
Сто пудов незаконный прон!
(вот в точности такие были у меня в далеком фрилансе клиенты, все шифровались, регистрация тут, проверки там, домен безобидный, чатик уютненький, HTTPS, .htpasswd, пока не выяснилось, что это педофилы внутри обменивались и фотками и впечатлениями), я чуть не купил караоке потом.

Дк, я еще раз спрошу, что за ресурс, что за шифрование и почему в одном месте регистрация в другом контент?
 

warobushek

Новичок
Активист
это не так. Что и почему к сожалению не могу сказать - коммерческая тайна.
А зачем оно тут? Пусть в открытом виде будет, плюс простенькая подпись/хеш/контрольная сумма
это через ГОСТ шифрование сделать можно? Я уже просто начал его разбирать.
 

warobushek

Новичок
история моей болезни:
- реализовал алгоритм ГОСТ 28147-89
- потом узнал о том, что есть такая вещь как mcrypt_encode
- потом подумал и решил, зачем заморачиваться, если можно проверять подлинность по хеш: в адр. строке передаем register.php?data=данные&hash=dkfd8734e3g74djfdf
где hash = md5(данные.секретное_слово);
на форуме проверять совпадение хешей.
но в моем случае data будет для некоторых пользователей одинаковым
- и тут я всерьез забоялся снова - заспамят.


И вот сейчас появилась идея к data добавлять какой-нибудь открытый идентификатор пользователя, чтобы hash всегда был разным.
Что думаете насчет этого?
 

tz-lom

Продвинутый новичок
я думаю что вы всё равно неуловимый джо , поэтому можете заняться уже написанием кода,а не беганием от спамеров
чтобы сильно не расстраивались прилагаю картинку
 

warobushek

Новичок
tz-lom
Вы бы лучше по делу говорили. Пока вижу только вашу критику.
Я ж спрашиваю не потому что мне лень написать (ведь ГОСТ написал).
Я спрашиваю как лучше?
а неосмысленно писать незачем.
 

Mamont

Новичок
И вот сейчас появилась идея к data добавлять какой-нибудь открытый идентификатор пользователя, чтобы hash всегда был разным.
Что думаете насчет этого?
А теперь вопрос: зачем для связи между 2 серверами использовать пользователя?
 

warobushek

Новичок
действительно ступил, можно любое случайное число
либо дату, ведь
 

Mamont

Новичок
Перефразирую вопрос: чем не устраивает реализация, когда 2 сервера общаются напрямую, минуя пользователя?
 
Сверху