Является ли кодировка base 64 секретным ключом строк возможным способом защиты? - PullRequest
1 голос
/ 29 июня 2011

Я читаю, что в статье

Любой конечный пользователь может изменить эти значения (поскольку они созданы в его браузере), но если веб-разработчик, например, кодирует, преобразуя все символы вURL-кодировка (шестнадцатеричная) или использует определенную кодировку для отправки параметров GET / POST (например, base64 с некоторой строкой секретного ключа), вектор атаки должен быть пересмотрен.

, значит, это означаетчто является хорошей практикой кодирования переменных с помощью базы 64 и секретного ключа?как реализована url-кодировка?

это имеет смысл?я никогда не читал о переменных кодирования как способ защиты

спасибо

бумага страница 5

Ответы [ 3 ]

4 голосов
/ 29 июня 2011
Схемы кодирования

Base64 обычно используются, когда необходимо кодировать двоичные данные, которые необходимо хранить и передавать по носителям, предназначенным для работы с текстовыми данными (например, HTTP).Это необходимо для того, чтобы данные оставались без изменений во время транспортировки.

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

Спецификация для URL (RFC 1738, Dec. '94 ) создает проблему, поскольку ограничивает использование разрешенных символов в URL только ограниченным подмножеством набора символов US-ASCII:

"... Только буквенно-цифровые символы [0-9a-zA-Z], специальные символы" $ -_. +! * '(), "[Не включая кавычки - ed] и зарезервированные символыиспользуется в зарезервированных целях, может быть использован в незашифрованном виде в URL. "

Вот хорошая статья на эту тему http://www.blooberry.com/indexdot/html/topics/urlencoding.htm

В PHP вы можете использовать string urlencode ( string $str ) метод для кодирования URL.

3 голосов
/ 29 июня 2011

итак, это хорошая практика кодирование переменных с помощью базы 64 а секретный ключ? как это реализовано URL-кодировка?

это имеет смысл?

Нет, это не имеет смысла. base64 - это не схема шифрования, это просто способ кодирования двоичных данных в подмножество 7-битного текста, который вряд ли будет изменен серверами электронной почты и т. Д.

base64 не имеет ключа, не может шифровать или дешифровать.

Я предполагаю, что авторы статьи говорили о какой-то схеме шифрования до того, как вы процитировали бит, и позже они упомянули только base64 как способ безопасной передачи своих уже зашифрованных данных через параметры HTTP GET или POST.

Не видя остальной части того, что вы цитировали, мы не знаем.

2 голосов
/ 29 июня 2011
Кодирование

base 64 не обеспечивает никакой безопасности.это почти так же плохо, как моно-алфавитный шифр замещения

, вот как кодировать / декодировать в базе 64, также известной как radix64 http://en.wikipedia.org/wiki/Base64

я не уверен, что значит кодироватьключ в этом контексте

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...