function encode_str($str) {
$encoded = '';
**$alpha_map = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'];**
$str = ''.$str;
$len = strlen($str);
$ascii_arr = [];
**$salt = 1505;//rand(100, (999 - 255));**
echo $salt;
for ($x = 0; $x < $len; $x++) {
$ascii_arr[$x] = (rand(1, 9) * 1000) + ($salt + ord($str[$x]));
}
$enc = implode('', $ascii_arr) . $salt;
$enc_len = strlen($enc);
for ($x = 0; $x < $enc_len; $x++) {
if (array_key_exists($enc[$x], $alpha_map)) {
$encoded .= $alpha_map[$enc[$x]];
} else {
$encoded .= $enc[$x];
}
}
return strtolower($encoded);
}
function decode_str($str) {
$str = strtoupper($str);
$unit_size = 4;
$alphatonum = function($s) {
$alpha_map = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'];
$l = strlen($s);
$s_ = '';
for ($x = 0; $x < $l; $x++) {
$pos = array_search($s[$x], $alpha_map);
$s_ .= in_array($s[$x], $alpha_map) ? array_search($s[$x], $alpha_map) : $s[$x];
}
return $s_;
};
$decoded = '';
**$salt = $alphatonum(substr($str, -4));
$data = $alphatonum(substr($str, 0, strlen($str) - 4));**
$loop = strlen($data) / $unit_size;
$unit_arr = [];
for ($x = 0; $x < $loop; $x++) {
$unit = substr($data, $x * $unit_size, $unit_size);
**$ascii_ = ($unit % 10000) - $salt;**
$decoded .= chr($ascii_);
}
return $decoded;
}
Please see my changed code and let me know what i'm wrong?
I want to change salt and alpha_map.
I try with paragraph but enter characters are lost, I dont want this.