|
|
|
| Шифрование HTML кода При загрузке страницы код шифрует на лету.
<?
function _fwk_filter_encrypt($content)
{
$table = "0123456789abcdefghijklmnopqrstuvwxy zABCDEFGHIJKLMNOPQRSTUVWXYZ_@";
$xor = 165;
// Prepare encoding table
$table = array_keys(count_chars($table, 1));
$i_min = min($table);
$i_max = max($table);
for ($c = count($table); $c > 0; $r = mt_rand(0, $c--))
array_splice($table, $r, $c - $r, array_reverse(array_slice($table, $r, $c - $r)));
// Encode sequence
$len = strlen($content);
$word = $shift = 0;
for ($i = 0; $i < $len; $i++)
{
$ch = $xor ^ ord($content[$i]);
$word |= ($ch << $shift);
$shift = ($shift + 2) % 6;
$enc .= chr($table[$word & 0x3F]);
$word >>= 6;
if (!$shift)
{
$enc .= chr($table[$word]);
$word >>= 6;
}
}
if ($shift)
$enc .= chr($table[$word]);
// Decode sequence
$tbl = array_fill($i_min, $i_max - $i_min + 1, 0);
while (list($k,$v) = each($table))
$tbl[$v] = $k;
$tbl = implode(",", $tbl);
$fi = ",p=0,s=0,w=0,t=Array({$tbl})";
$f = "w|=(t[x.charCodeAt(p++)-{$i_min}])<<s;";
$f .= "if(s){r+=String.fromCharCode({$xor}^w&255);w>>=8;s-=2}else{s=6}";
// Generate page
$r = "<script language=JavaScript>";
$r.= "function decrypt_p(x){";
$r.= "var l=x.length,b=1024,i,j,r{$fi};";
$r.= "for(j=Math.ceil(l/b);j>0;j--){r='';for(i=Math.min(l,b);i>0;i--,l--){{$f}}document.write(r)}";
$r.= "}decrypt_p(\"{$enc}\")";
$r.= "</script>";
return $r;
}
ob_start("_fwk_filter_encrypt");
?>
|
Почему английские буквы нормальные, а русские не поймешь что за буквы, что надо исправить в этом коде. | |
|
|
|
|
|
|
|
для: Runar
(04.09.2006 в 23:54)
| | наверное в переменную $table следует добавить русский алфавит | |
|
|
|
|
|
|
|
для: Lelik
(05.09.2006 в 06:14)
| | Неплохой скрипт, но только для английских текстов. Кто знает, как сделать его рабочим с русскими буквами? | |
|
|
|
|
|
|
|
для: Runar
(04.09.2006 в 23:54)
| | Как и все заумное ломается с черного хода:)
Вот это
заменил вот на это
document.write(escape(r))
|
а результат прогнал через urldecode()
кидайте еще:) | |
|
|
|
|
|
|
|
для: Loki
(05.09.2006 в 17:22)
| | Не понял? | |
|
|
|
|
|
|
|
для: Runar
(06.09.2006 в 02:09)
| | Давайте зашифрованную страницу, я ее расшифрую в течение 30 секунд даже не разбираясь в алгоритме шифрования:) | |
|
|
|
|
|
|
|
для: Loki
(05.09.2006 в 17:22)
| | проще в начало добавить <textarea> | |
|
|
|
|
|
|
|
для: Trianon
(06.09.2006 в 09:47)
| | я чувствовал что должен быть вариант проще:) | |
|
|
|