Скрипт Php
Недавно наталкнулся на очень полезный скрипт, который шифрует возможность просмотра исходного кода html страници,
всё бы ничего но он неработает с кирилицей, непонимает ни Utf-8 ни cp1251 - знатоки PHP помогите поправить скрипт
B J: Недавно наталкнулся на очень полезный скрипт, который шифрует возможность просмотра исходного кода html страници,
всё бы ничего но он неработает с кирилицей, непонимает ни Utf-8 ни cp1251 - знатоки PHP помогите поправить скрипт
я помог но невижу скрипта, скрипт в индекс вставляешь?
Скрипт инклудом в индекс идёт - он сам работает на отлично но кирилицу в дупень непонимает
B J: Скрипт инклудом в индекс идёт - он сам работает на отлично но кирилицу в дупень непонимает
чего ты закрыл его так окрой я посотрю
<?
function _fwk_filter_encrypt($content)
{
$table = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_@";
$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.= "}decrypt_p(\"{$enc}\")";
$r.= "</script>";
return $r;
}
ob_start("_fwk_filter_encrypt");
?>
B J: <?
function _fwk_filter_encrypt($content)
{
$table = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_@";
$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.= "}decrypt_p(\"{$enc}\")";
$r.= "</script>";
return $r;
}
ob_start("_fwk_filter_encrypt");
?>
Вопросы
1 ты просто вставляеш это в начале страници и все
2 В какой сборке ты это юзаеш.
я его вставляю в html тег моего php скрипта - не в сборке а в обвязке DLE и обвязка и база данных под cp1251
B J: я его вставляю в html тег моего php скрипта - не в сборке а в обвязке DLE и обвязка и база данных под cp1251
так и понял сотри знакомое ша помозгую посмотрю как процес в этом скрипте идет и напишу если получится
а в
русские символы дописать не судьба ?
WebDeveloper сервера DARKWORLD
B J: я его вставляю в html тег моего php скрипта - не в сборке а в обвязке DLE и обвязка и база данных под cp1251
$table = "0123456789абвгдеёжзиклмнопрс";
поменяй на это постри что будет будит ли какието бувы отображать руские
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_@";
или
uvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_@";
P.S. но почему-то не уверен ...
WebDeveloper сервера DARKWORLD
не стоит менять еще хуже будет
Knoxval:Код$table = "0123456789абвгдеёжзийклмнопрстуфхцчшщъыьэюяАБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_@";
илиКод$table = "0123456789бгдёжзийлнптфцчшщъыьэюяБГДЁЖЗИЙЛНПТФЦЧШЩЪЫЬЭЮЯabcdefghijklmnopqrst
uvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_@";
P.S. но почему-то не уверен ...
думаете я перед тем как сюда запостить непробовал разные варианты ? - вы бы метод кодирования посмотрели -помоему он вообще не работает с руской кодировкой с русской кодировкой т.е алгоритм шифрования нешефрует кирилицу
наткнулся на умные слова:
да, можно вывести его зашифрованным каким-нить алгоритмом, но на той же странице вам придётся выводить функцию расшифровки, а это значит, что при желании я всё равно узнаю хтмл-код
сам вопрос о сокрытии кода не имеет смысла - вы должны предоставить браузеру код в том формате, на который он(браузер) рассчитан, а этот формат есть хтмл, следовательно код известен
WebDeveloper сервера DARKWORLD
скрипт защиты от нуба - это вопервых - во вторых я уже читал те умные слова которые ты выделил - там тупа никто не помогал пареньку решить траблу а оффтопил тему
function _fwk_filter_encrypt($content)
{
$table = "0123456789абвгдеёжзийклмнопрстуфхцчшщъыьэюяАБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_@";
$xor = 255;
// 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.= "}decrypt_p(\"{$enc}\")";
$r.= "</script>";
return $r;
}
ob_start("_fwk_filter_encrypt");
?>
попробуй так скажи что будет
Неработает- алгоритм шифрования base64 используемый в этом скрипте не работает с кирилицей.... увы
B J: Неработает- алгоритм шифрования base64 используемый в этом скрипте не работает с кирилицей.... увы
ты поменял то что я дал я знаю что не работает chr функция работает в ascii


