46 lines
1.4 KiB
PHP
Executable File
46 lines
1.4 KiB
PHP
Executable File
<?php
|
|
function cryption($hash, $method)
|
|
{
|
|
// Method e=encrypt, d=decrypt
|
|
// Store the cipher method
|
|
# Für PHP 7.1 noch 128
|
|
$ciphering = "AES-128-CTR";
|
|
|
|
|
|
// Use OpenSSl Encryption method
|
|
$iv_length = openssl_cipher_iv_length($ciphering);
|
|
$options = 0;
|
|
|
|
// Store the encryption key
|
|
$key = "!O3JoDLnBI6#[M%4S!sZH1zU0?8+5C_!}";
|
|
|
|
// Non-NULL Initialization Vector for encryption
|
|
$vector = '0843413489572156';
|
|
|
|
if ($method == 'e') {
|
|
// Use openssl_encrypt() function to encrypt the data
|
|
$encryption = openssl_encrypt($hash, $ciphering, $key, $options, $vector);
|
|
return $encryption;
|
|
}
|
|
// Store a string into the variable which
|
|
// need to be Encrypted
|
|
|
|
|
|
if ($method == 'd') {
|
|
// Use openssl_decrypt() function to decrypt the data
|
|
$decryption = openssl_decrypt($hash, $ciphering, $key, $options, $vector);
|
|
|
|
# kryptische Returnwerte bei falschem String entfernen: Nur Zahlen und Buchstaben
|
|
#$decryption = preg_replace('![^0-9a-zA-Z]!', '', $decryption);
|
|
|
|
# https://stackoverflow.com/questions/1176904/php-how-to-remove-all-non-printable-characters-in-a-string
|
|
$decryption = preg_replace('/[\x00-\x1F\x7F-\xFF]/', '', $decryption);
|
|
|
|
return $decryption;
|
|
}
|
|
}
|
|
#$crypt = cryption("!DWdMiU#", 'e');
|
|
#echo $crypt;
|
|
#echo "<br>";
|
|
#echo cryption($crypt, 'd');
|
|
?>
|