Я думаю, что за рубежом фрилансить можно будет без гемора. Ну, а у нас без гемора уже давно даже умереть нельзя...
А если серьёзно, то, не претендуя на ответ, думаю что все будет можно. Конечно будет какой-то мизирный шанс попасть под показательную порку, но закон явно вводится не для этого, тут цель очевидна - повысить лояльность окружения и крепче повязать его. Укрепить вертикаль перед лицом превращения ее в осиновый кол, так сказать.
uaSaint: вконтактик работает на PHP и это ему никак не мешает. Так что дело не в скриптах видимо. Быструю обработку сейчас может обеспечить все что угодно. Даже java. Тут требования больше к тому что может выдержать база и насколько решение масштабируемо. А это уже никак не зависит от того на чем оно сделано.
Ошибка-то не в этой строчке.
<? - вот это что у вас в шестой строчке значит? Это не может быть открытие открытие блока PHP потому что он открыт уже открыт в 4. Ошибка.
uaSaint: Нет. Я с ним не работаю. Дело-то не в том чтобы посмотреть, а в том чтобы сделать. Нагрузочная прочность на 99% зависит от правильно спроектированной архитектуры, а нет от используемых решений.
FanatPHP: да - так.
Причем еще можно соль добавлять к паролю перед шифрованием. Соль генерить на клиенте. Если она будет фиксированной длины, то от дешифрованной строки на сервере ее можно будет отрезать. Ваще круть.
1) Ну да, логично. Я дурак. Можно передавать.
2) Нет, не в обратимом. Мы шифруем не пароль, а хэш. Он не обратим по определению. Но да - предвычесленные таблицы сделают нам больно - согласен.
На дерибасовскую же мы не выходим. Тут вы ошиблись - мы же не передаем хэш!
FanatPHP: Нет. Не нужно. Потому, что если передавать соль, то она лишается смысла для использования. Весь смак соли в том, что она хранится на сервере и не доступна. От использования соли нужно будет отказаться. Это не так страшно как принято думать, тем более что существуют альтернативные методы.
Как мы обычно храним пароль? hash(pass+sold)
А что нам мешает вместо этого хранить его так: encrypt(hash(pass),sold), где encrypt функция симметричного шифрования использующая в качестве ключа sold.
Можно даже круче: encrypt(hash(pass)+rand(),sold)
Надеюсь понятно.
> если мы авторизуемся по хэшу, то этот хэш превращается в пароль
Ну да. Но его тоже можно не хранить в открытом виде. Но вы правы - перехват этого хэша для злоумышленника имеет ту же ценность что и перехват пароля, поскольку ему пофиг что он перехватил - главное, что это достаточно передать на сервере и быть авторизованным.
FanatPHP: да и хрен бы с ним.
Сам вопрос при этом вполне решаем. Кстати "сервак со своей стороны так же солит пароль" можно легко заменить на "сервак со своей стороны так же солит хэш" и, вуаля, у нас снова карета. Правда все равно не едит, но это другая история.
В любом случае защищенную передачу организовать возможно и это никак не мешает хранению хэша.
А если серьёзно, то, не претендуя на ответ, думаю что все будет можно. Конечно будет какой-то мизирный шанс попасть под показательную порку, но закон явно вводится не для этого, тут цель очевидна - повысить лояльность окружения и крепче повязать его. Укрепить вертикаль перед лицом превращения ее в осиновый кол, так сказать.