Шифровка и расшифровка на php

245
03 июля 2017, 19:36

Есть код товара: 544049568640 возможно ли это шифровать например как то так: ZUePM2pD7zChI1 потом обратно расшифровать в 544049568640

  • 544049568640 такой вид нужно для запроса
  • ZUePM2pD7zChI1 а этот вид нужно для пользователя

еще есть вариант что пользователь может поискать товары в таком виде: 544049568640 тогда такую не надо шифровать, может у кого нибудь было похожие ситуации?

Answer 1

Mcrypt криптографические расширения для php.

функции дешифрования и шифрования mcrypt_decrypt()
mcrypt_encrypt()

Код, который будет шифровать/дешифровать будет выглядеть так:

<?php
$string = '544049568640'; 
$iv = '55555555'; 
$passphrase = '8chrsLng'; 
$encryptedString = encryptString($string, $passphrase, $iv); 
$decryptedString = decryptString($encryptedString, $passphrase, $iv); 
function encryptString($unencryptedText, $passphrase, $iv) { 
  $enc = mcrypt_encrypt(MCRYPT_BLOWFISH, $passphrase, $unencryptedText, MCRYPT_MODE_CBC, $iv); 
  return base64_encode($enc); 
} 
function decryptString($unencryptedText, $passphrase, $iv) {
  $enc = base64_decode($unencryptedText);
  $enc = mcrypt_decrypt(MCRYPT_BLOWFISH, $passphrase, $enc, MCRYPT_MODE_CBC, $iv); 
  return  rtrim($enc, "\0");
} 
var_dump($encryptedString);
var_dump($decryptedString);

Это расширение объявлено устаревшим в PHP 7.1.0 и перемещено в PECL в PHP 7.2.0.

READ ALSO
Каким образом отменить перенаправление с поддомена

Каким образом отменить перенаправление с поддомена

ЗдравствуйтеХочу сделать динамическое создание поддоменов

205
Возможно ли сделать подобие ssas на front-end

Возможно ли сделать подобие ssas на front-end

У меня есть небольшой парсер на php, он "делает всё, что нужно делать" с кодом и отправляет готовый файл пользователю

213
Изменить ключ в многомерном массиве

Изменить ключ в многомерном массиве

Есть многомерный массив:

188
warning: comparison between signed and unsigned integer expressions [-Wsign-compare]

warning: comparison between signed and unsigned integer expressions [-Wsign-compare]

Ошибка в 17 строкеЯ уже на компилятор Code Blocks грешу (постоянно перлы выдает)

274