Вот такой вопрос: необходимо зашифровать данные и передать их по URL другому сценарию который будет расшифровывать эти данные, но какой использовать алгоритм шифрования и как передавать ключ?
Ключ не нужно передавать (если оба "сценария на одном серваке то ключ может храниться там") А шифровать вообще не проблема, есть полно функций реализующих шифрование... В зависимости от ситуации (например если требуется крос-серверное решение) можно придумать что нибудь ещё, но для этого опиши ситуацию, иначе этот топик равносилен тыканию пальцем в небо...
Нет, просто заказчик поставил в такие условия. Точно, как то не подумал на счет этого. PS: че-то совсем запутался в mcrypt функциях, их так много и все похожие, какие использовать?
Тогда mcrypt() или если не устраивает по тем или инным причинам то скажи подробнее условия, иначе не понятно даже в какую сторону смотреть
У него в ТЗ написано "данные должны шифроваться, генерируя уникальный ID, затем эти данные декодируются".
Vitas Шифрование с открытым ключём с помощью какой-нибудь мощной функции,чтобы не было коллизий.Например,клиент генерирует закрытый ключ с помощью которого будет расшифровывать данные,и отсылает тебе открытый ключ, с помощью которого ты будеш шифровать эти данные.
вы имеете право не стесняясь спросить у заказчика, что он курил, когда его больной мозг родил данную формулировку. данные зашифровываются не просто так, а для хранения или передачи (а никак не "шифроваться а затем декодироваться" без какого-либо промежуточного действия . в вашем случае неплохо бы обратить внимание заказчика, что если данные передаются через инет, то гораздо проще использовать ssl канал, чем разрабатывать новую схему шифрования. не пытайтесь догадаться за него. в любом случае, когда в тз появляются некоторые нетривиальные требования, они должны быть объяснены досконально. это в его же (заказчика) интересах, иначе разработчик может реализовать алгоритм шифрования с генерацией уникального ключа, который к шифрованию отношения вообще не имеет. кстати, в чём должна состоять уникальность ключа? например, для одного и того же набора данных он должен быть одним и тем же? он должен создаваться до, во время или после кодирования? короче, схем криптографии много хороших и разных. если уж заказчик вдаётся в такие детали как генерация уникального ключа, пусть поясняет свою идею до конца. пусть приводит воспроизводимый алгоритм. да, кстати, не ведитесь на лабуду типа "ну вы же опытный специалист, что я вам должен основы пересказывать". пусть самовыражается. в противном случае предупредите его, что вы действительно опытный специалист и схему шифрования сможете разработать без его руководства. но тогда пусть выкидывает из тз идиотские требования. можно оставить требование, что "передача данных по открытым каналам должна производиться в зашифрованном виде"