На стороне клиента (мобильное устройство) я шифрую пароль пользователя с помощью CryptoJS: var lib_crypt = require('aes'); $.loginButton.addEventListener('click', function(e){ var key = lib_crypt.CryptoJS.enc.Hex.parse('bcb04b7e103a0cd8b54763051cef08bc55abe029fdebae5e1d417e2ffb2a00a3'); var iv = lib_crypt.CryptoJS.enc.Hex.parse('101112131415161718191a1b1c1d1e1f'); var encrypted = lib_crypt.CryptoJS.AES.encrypt($.passwordInput.value, key, { iv: iv }); var password_base64 = encrypted.ciphertext.toString(lib_crypt.CryptoJS.enc.Base64); return password_base64; }); На стороне сервера я хочу расшифровать его с помощью mcrypt_decrypt: function decryptPassword($password) { […]
в настоящее время у нас есть mcrypt implentation на наших системах, чтобы склеить некоторые разумные данные в нашем PHP-приложении. Теперь у нас есть новое требование, чтобы мы изменили модуль склепа на openssl. Еще одна важная вещь заключается в том, что мы используем шифр blowfish и режим ecb. Поэтому я начал проверять, что такое различия, и […]
ПРИМЕЧАНИЕ. Поддержка MCrypt библиотек зависит от того, что они не обновлялись в течение многих лет, и MCrypt больше не должен считаться жизнеспособным или безопасным способом шифрования данных. Более того, MCrypt устарел на PHP 5 и полностью удалился в PHP 7. Если у вас есть какой-либо код, который запускает MCrypt, вы должны реорганизовать его, чтобы использовать […]
Я шифрую свой пароль пользователя в JavaScript следующим образом: var encryptedPassword = CryptoJS.AES.encrypt(password, "Secret Passphrase"); Он отлично работает, но теперь я пытаюсь расшифровать PHP на стороне сервера следующим образом: $iv = mcrypt_create_iv(mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_CBC), MCRYPT_RAND); $decryptPassword = mcrypt_decrypt(MCRYPT_RIJNDAEL_128, "Secret Passphrase", base64_decode($password), MCRYPT_MODE_CBC, $iv); он вообще не работает, расшифрованная строка пароля выглядит очень странно: string(64) "> OX2MS […]
Ситуация, которую я пытаюсь решить: в моем приложении Cocoa мне нужно зашифровать строку с симметричным шифрованием, POST его на PHP, и этот сценарий декодирует данные. Процесс должен работать обратным образом для возврата ответа (PHP кодирует, декодирует Cocoa). Я пропускаю что-то, потому что, хотя я могу получить как ключ, так и вектор инициализации (iv) одинаковым как […]
Объявление mcrypt-extension устарело, будет удалено в PHP 7.2 в соответствии с комментарием, размещенным здесь . Поэтому я ищу альтернативный способ шифрования паролей. Прямо сейчас я использую sometihng как mcrypt_encrypt(MCRYPT_RIJNDAEL_128, md5($key, true), $string, MCRYPT_MODE_CBC, $iv) Мне нужно ваше мнение о наилучшем / сильном способе шифрования паролей, поэтому зашифрованный пароль должен поддерживаться PHP 7.xx, а также должен […]
Основные факты: $algorithm = MCRYPT_BLOWFISH; $mode = MCRYPT_MODE_CBC; $randSource = MCRYPT_DEV_URANDOM; Примечание. Это не является строгим вопросом кодирования. Контекст: CentOS 7, Apache 2.4.12 и PHP 5.6.20. Я делаю HTML-адрес электронной почты с ссылкой «подтвердить свой адрес электронной почты», что позволяет завершить процесс регистрации. Все, что находится на моем виртуальном частном сервере, это UTF-8, и все […]
Извиняюсь заранее за возможные вопросы n00b, я пытаюсь установить расширение mcrypt для PHP на моей машине OSX Mountain Lion. Следующие шаги в терминале – это то, что я сделал до сих пор, чтобы выполнить мою установку PHP cd /path/to/downloaded/php-5.3.21/ext/mcrypt/ /usr/bin/phpize ./configure cd /path/to/downloaded/php-5.3.21 ./configure –with-config-file-path=/private/etc/php.ini –with-apxs2=/usr/sbin/apxs make sudo make install Что, похоже, хорошо работает и […]
Сначала шифрование Node.js. // Both of key and IV are hex-string, but I hide them in Stackoverflow. var secretKey = new Buffer('aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa', 'hex'), // 48 chars iv = new Buffer('bbbbbbbbbbbbbbbb', 'hex'); // 16 chars var str = 'This string will be encrypted.'; var cipher = crypto.createCipheriv('des-ede3-cbc', secretKey, iv), cryptedStr = cipher.update(str, 'utf8', 'base64') + cipher.final('base64'); […]
У меня есть зашифрованный бит текста, который мне нужно расшифровать. Он зашифрован AES-256-CBC. У меня есть зашифрованный текст, ключ и iv. Однако, что бы я ни старался, я просто не могу заставить его работать. Интернет предложил, чтобы cipher Rijndael mcrypt мог это сделать, поэтому вот что у меня есть сейчас: function decrypt_data($data, $iv, $key) { […]