Зашифровать и расшифровать строку (без mcrypt)

зверек

Новичок
Зашифровать и расшифровать строку (без mcrypt)

Добрый день.

Задача такая: нужно при переходе с сайта 1 на другой сайт 2 передать в адресной строке имя юзера, зарегистрированного на сайте 1. С тем чтобы на сайте 2 в зависимости от этого имени дать посетителю те или иные возможности.
Разумеется строку с ником надо как-то зашифровать, чтобы у юзера имеющего ограниченные возможности не появилось желание подставить имя юзера, имеющего расширенные возможности и воспользоваться ими.

библиотеку mcrypt хостеры сайтов отказываются подключать.
Есть ли еще какие-нибудь механизмы зашифровать адрес на сайте 1 и потом расшифровать его на сайте 2?
Так чтобы злоумышленник, естейственно, не мог этого сделать...То есть какой-то секретный ключ должен быть, который бы знали только владельцы сайта 1 и 2.

Помогите, пожалуйста!
 

svetasmirnova

маленький монстрик
А что случится, если злоумышленник перехватит зашифрованную строку?
 

зверек

Новичок
А что может случится? Ничего. Пусть перехватывает..Если честно не очень поняла вопрос.
Главное, чтобы злоумышленник не мог строку расшифровать.
 

svetasmirnova

маленький монстрик
Хорошо, объясню подробно.
>при переходе с сайта 1 на другой сайт 2 передать в адресной строке имя юзера,
Т.е. строка вида: http://www.site2.ru?user=encrypted_login
Я злоумышленник. Открываю юрл http://www.site2.ru?user=encrypted_login на сайте 2. Что я получу? Страничку этого пользователя?
 

CCCP_MOCKBA

Новичок
а что такого секретного в имени юзера ? насчет "чтобы злоумышленник не мог строку расшифровать" не уверен ;)
PHP:
<?php
$string = 'user';
$crypt = ~$string;
print 'c: '.$crypt.'<br>';
print 'd: '.~$crypt;
?>
 

svetasmirnova

маленький монстрик
CCCP_MOCKBA
расшифрует или нет в данном случае неважно: по приведённому алгоритму он всё равно поимеет доступ
 

зверек

Новичок
svetasmirnova

"Я злоумышленник. Открываю юрл http://www.site2.ru?user=encrypted_login на сайте 2. Что я получу? Страничку этого пользователя? "
Нет. Страница открывается для всех одна и та же. Но в зависимости от имени юзера на этой странице можно делать разные вещи. Большинство юзеров имеет возможность добавлять некую информацию. Но несколько из них - не только добавлять, но и редактировать и удалять. Причем всю, не только свою. Типа админы. Вот чтобы не возникло желания зайти на страницу с именем админа и всю базу с иформацией нафиг грохнуть, нужно зашифровать это имя :)


CCCP_MOCKBA
все чудесно, но операцию расшифровки одного имени и обратной зашифровки какого-то другого - сможет сделать любой, кто знаком с предложенным вами механизмом.
Кстати, а что это такое вообще? :) Где можно описание прочитать?
 

full_lamer

Новичок
имхо: а если организовать сайт 1 в виде 2х фреймов, 1 фрейм - типа сверху, страничка с первого сайта, 2 фрейм - снизу - сайт 2... соответственно все ссылки на сайт 2 разместить на верхнем фрейме, и пусть юзер дергает эти ссылки если хочет получить привилигированный доступ...
 

svetasmirnova

маленький монстрик
Нет. Страница открывается для всех одна и та же. Но в зависимости от имени юзера на этой странице можно делать разные вещи.
Хорошо. Но имя юзера ты откуда берёшь? Из юрла? Зашифрованное?
 

зверек

Новичок
svetasmirnova

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

svetasmirnova

маленький монстрик
Ещё раз: что произойдёт, если злоумышленник подсмотрит юрл в строке браузера и в зашифрованном виде передаст его твоему скрипту?
 

clevel

Новичок
1.Если оба сайта находятся в одном доемнном имени (два субдомена), то можно через куки на домен передавать переменную, где хранится логин и хеш пароля..
2.если оба сайта на одном хостинге, то можно передавать 2-3 переменных, которые в совокупности уникаль - например, тот же логин и хеш пароля.. а на втором, имея доступ к бд первого сайта, по логину находить пароль и сверя хеши..
3. Проверку надо делать при переходе. в дальнейшем ставить галку в сессии, что такой-то юзер и больше не проверять...
 

physh

поедатель запятых
сделай свою функ. например разбей всю строку по чарам(split)
переведи все из 16- в n-цати-ричную сис-му
соедини все в одну строку
разбей ее по 5-6 чаров
вставь 5-6 рандомных чисел между каждым кусочком...
ну и еще че-нить от себя добавь... Разве что у тебя очень серьезный банковский сайт, никому так гемороиться над расшифровкой не захочется.
 

CCCP_MOCKBA

Новичок
Автор оригинала: зверек
Кстати, а что это такое вообще? :) Где можно описание прочитать?
Битовые оперции, почитать можно в мануале ) Но не уверен , что поможет, все настолько запутанно ;)
наверное проще смотреть в сторону сессии.
 

crocodile2u

http://vbolshov.org.ru
зверек
Ты можешь толком ответить на вопрос svetasmirnovoi? Она ведь тебе помочь пытается и спрашивает не из праздного любопытства...
 

svetasmirnova

маленький монстрик
physh, CCCP_MOCKBA
Вы тоже ответьте, пожалуйста на вопрос:
что произойдёт, если злоумышленник подсмотрит юрл в строке браузера и в зашифрованном виде передаст его скрипту?
и объясните зачем ей использовать двусторонний алгоритм шифрования?
 

basboy

Новичок
Я так полагаю, что инфа о юзере лежит в базе. Если на сайтах 1 и 2 базы эдентичны, то можно манипулировать с ID - записи пользователя.
С id- то злоумышленник ничего не сделает.
 

kvf77

Red Devil
basboy

а с паролем что он сделает? вы кажется не въезжаете - а меж тем, если ответить Свете на ее вопрос, сразу поймете, что и к чему
 

зверек

Новичок
svetasmirnova
Прошу прощения, отвлекли.

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

-~{}~ 10.10.05 16:50:

clevel

сайты находятся на совершенно разных хостингах.

physh

Примерно такое в голову только и лезет. Разбить имя на части, закодировать каждую часть по-разному.... Просто хотелось узнать, может существуют уже какие-то фукции или механизмы..типа того, что дает библиотека mcrypt.
 

crocodile2u

http://vbolshov.org.ru
зверек
Что и требовалось доказать. Злоумышленнику _не нужно_ ничего расшифровывать, и вся защита летит в трубу.

ЗЫ: хотя до тебя, как видно, это никак не дойдет...
 
Сверху