php - crypt, decrypt.txt

(1 KB) Pobierz
<?
function szyfruj($txt,$haslo)
{
  $strlen1 = strlen($txt);
  $strlen2 = strlen($haslo);
  $suma_kontrolna = ord($haslo[0]);
  for($i=1; $i<$strlen2; $i++)
   $suma_kontrolna ^= ord($haslo[$i]);
  $suma_kontrolna = 255-$suma_kontrolna;
  for($i=0; $i<$strlen2; $i++)
    $haslo[$i] = chr(ord($haslo[$i])^$suma_kontrolna);
  $i = $j = 0;
  $zaszyfrowane = array();
  while ($i < $strlen1)
  {
    $zaszyfrowane[$i] = chr(((ord($txt[$i])+ord($haslo[$j]))%256)^ord($haslo[$j]));
    $i++;
    $j++;
    if ($j == $strlen2) $j = 0;
  }
  return implode('',$zaszyfrowane);
}
/////////////
function deszyfruj($txt,$haslo)
{
  $strlen1 = strlen($txt);
  $strlen2 = strlen($haslo);
  $suma_kontrolna = ord($haslo[0]);
  for($i=1; $i<$strlen2; $i++)
   $suma_kontrolna ^= ord($haslo[$i]);
  $suma_kontrolna = 255-$suma_kontrolna;
  for($i=0; $i<$strlen2; $i++)
    $haslo[$i] = chr(ord($haslo[$i])^$suma_kontrolna);
  $i = $j = 0;
  $zdeszyfrowane = array();
  while ($i < $strlen1)
  {
    $tmp = (ord($txt[$i])^ord($haslo[$j]))-ord($haslo[$j]);
    $zdeszyfrowane[$i] = chr($tmp<0 ? $tmp+256 : $tmp);
    $i++;
    $j++;
    if ($j == $strlen2) $j = 0;
  }
  return implode('',$zdeszyfrowane);
}

echo $t = szyfruj('Texcik ca�kiem ma�y:)','hase�ko');
echo '<BR>';
echo deszyfruj($t,'hase�ko').'<BR>';

?>
Zgłoś jeśli naruszono regulamin