mark_edinoroglove
@mark_edinoroglove

Как сделать decode только в mysql запросе?

Здравствуйте, есть функция на пыхе который декодирует строку
function decryptText($text) {
			$sSalt = 'marks';
			$sSalt = substr(hash('sha256', $sSalt, true), 0, 32);
			$method = 'aes-256-cbc';
		
			$iv = chr(0x0) . chr(0x0) . chr(0x0) . chr(0x0) . chr(0x0) . chr(0x0) . chr(0x0) . chr(0x0) . chr(0x0) . chr(0x0) . chr(0x0) . chr(0x0) . chr(0x0) . chr(0x0) . chr(0x0) . chr(0x0);
		
			$decrypted = openssl_decrypt(base64_decode($text), $method, $sSalt, OPENSSL_RAW_DATA, $iv);
			return $decrypted;
		}

задача такова, что нужно сделать в mysql запросе такое же декодирование ( на языке mysql ), как это можно сделать?
  • Вопрос задан
  • 151 просмотр
Решения вопроса 1
SagePtr
@SagePtr
Еда - это святое
Как-то так:
CREATE FUNCTION textDecrypt (input TEXT)
RETURNS TEXT DETERMINISTIC
BEGIN
  DECLARE crypt_str BLOB;
  DECLARE key_str BINARY(32);
  DECLARE init_vector BINARY(16);
  SET crypt_str = FROM_BASE64(input);
  SET key_str = UNHEX(SHA2('marks', 256));
  SET init_vector = REPEAT('\0', 16);
  SET block_encryption_mode = 'aes-256-cbc';
  RETURN AES_DECRYPT(crypt_str, key_str, init_vector);
END

https://sqlize.online/sql/mysql80/6fde6e8b7a619316...
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы