Способ подбора числовых и цифровых комбинаций

Alexbank

Guest
Способ подбора числовых и цифровых комбинаций

Приветствую всех.
У меня возник такой вопрос, как сделать так что бы php подбирал сам цифры и буквы пока не найдет верный вариант, по например обычной ломалки паролей. Есть на пример такая комбинация 48d59z7, и вот мне нужно, чтобы php способом подстановки всех вариантов нашел эту комбинацию цифр и букв. Оговорюсь сразу, что мне это нужно не для взлома или какой-нибудь наживы.
 

ONK

Пассивист PHPСluba
Значит надо взять и написать генератор строк.

строка из 7 буквоцифр из латинского шрифта содержит больше 52 миллиардов вариантов комбинаций.
 

Alexbank

Guest
Автор оригинала: ONK
Значит надо взять и написать генератор строк.
Это и ежику понятно!!!!
А вот как это сделать в технческом плане я не знаю!!!
Вот я и интересуюсь как???
 

HEm

Сетевой бобер
это очень сложная техническая задача и без помощи высококвалифицированных программистов Вам ее не решить
Обратитесь к таковым и всего за $150 Вам напишут эту программу + добавят административный интерфейс
 

Demiurg

Guest
на php это делается точно так же как и на остальных языках.
 

Alexbank

Guest
Автор оригинала: HEm
это очень сложная техническая задача и без помощи высококвалифицированных программистов Вам ее не решить
Я понимаю что она не из легких, но я решить ее хочу сам, и даже дело не в деньгах. Мне нужно, хотя первая ступенька, толчек, как ее начать а дальше я думаю уже сам разберусь, в смысле как вообще происходит этот подбор, в практическом плане.
 

Alexbank

Guest
Автор оригинала: Demiurg
на php это делается точно так же как и на остальных языках.
Меня и интересует как именно, просто я эту задачу никогда не решал, да и небыло необходимости, а сейчас она возникла, и я ее хочу решить по средствам php:)
 

Vasya

Guest
Ниче, что я так вот сразу пишу код, да? :)
PHP:
<pre><?

$bt = time();

$str = "48d59z7";
//echo $s;

function inc(&$s) {
//echo "$s\n";
	$cs = "0123456789abcdefghijklmnopqrstuvwxyz";
	$len = strlen($s);

	$i = $len-1;
	while($i>=0) {
		$ch = $s{$i};
		if( $ch != 'z' ) {
			$p = strpos($cs, $ch) + 1;
			$s{$i} = $cs{$p};
			break;
		} else {
			$s{$i} = $cs{0};
			$i--;
		}
	}
//echo "$s\n";
}

$j=0;
for($i="0000000"; ($i!=$str && $i!="zzzzzzz" );inc($i)) {
	$j++;
	if($j%100000 == 0) {
		$t = time() - $bt;
		echo "$t : $j -- '$i'\n";
	}
}

if($i == $str) {
	echo "String found: " . $i ." == ". $str. "\n";
} else {
	echo "String not found.\n";
}

?></pre>
 

fixxxer

К.О.
Партнер клуба
это очень сложная техническая задача и без помощи высококвалифицированных программистов Вам ее не решить
HEm, я из за тебя чаем чуть не облился. Ну нельзя же так смешить :)
 

Alexbank

Guest
Я посмотрел ну тут возник один прабл...php выдает такую ошибку
Fatal error: Maximum execution time of 30 seconds exceeded in c:\apache\htdocs\script.php on line 17
тоесть в этой строчке:
$len = strlen($s);
 

Vasya

Guest
Это не трабл... :)
Это ПХП тебя ненавязчиво предупреждает, что скрипт слишком долго работает...
Я тут прикинул -- для перебора всех вариантов на моей машине понадобится примерно около месяца...
 

ONK

Пассивист PHPСluba
Я предупреждал что вариантов больше 52миллиардов -;)
 

ONK

Пассивист PHPСluba
Vasya, код надо сказать весьма кривой, работает на честном слове, хотя я пока не понял работает ли он вообще.
 

Alexbank

Guest
Да а если еще каждый результат проверять, как я это планирурю то ваще вешалка будет надо альтернативу искать,
Хотя код я проверил нормально работает по крайне мере сама подстановка значений
 

Vasya

Guest
Alexbank:
... надо альтернативу искать
Чему альтернативу? :)
Ты сформулировал задачу и в рамках этой задачи получил решение... А то, что оно не юзабельное -- так надо правильно формулировать задачу!
А учитывая, что с условиями ты темнишь и такие вещи пишешь:
Оговорюсь сразу, что мне это нужно не для взлома или какой-нибудь наживы.
Можно смело предположить, например, что ты решил заломать фриварного провайдера, чтобы оттуда рассылать спам! :)
Поделись секретом -- чего задумал?!
 
Сверху