1. Есть функция вычисления хеша, она одно сторонняя вычислить изначальные параметры зная результат мы не можем(пока что?).
2. Я вычислил хеш, далее оно переводится в числовой вид и если оно входит в установленные текущие рамки, то ура я в дамках, если нет, снова считается.
3. Выходит я постоянно считаю этот хеш пока не попаду с числовым значением в рамки установленные на этот раз. Если рамки узкие, я реже в них попадаю, если широкие то чаще. Таким образом и регулируется среднее время вычисления.
function bitcoin($val) {
for ($result = 0; $result != $val; sleep(1)) {
$result = rand(000000000000000000000, 99999999999999999999);
}
echo "успех";
}
bitcoin(000000000000000000001);
function bitcoin($val) {
for ($result = 0, i=0; $result != $val; sleep(1), ++$i) {
$result = $i;
}
echo "успех";
}
bitcoin(600); // 600 секунд
Если я тебе скажу: а расшифруйка мне 0000000000000000000000abcde - ты мне ответишь: "Ты что?! я буду делать это вечно!!!!11!!!!"
А если я тебе скажу: найди ка мне исходные данные, хеш который в итоге будет 0000000000000000000000abcde - ты ответишь: "Ок, 10 минут жди"
зачем что-то тогда отвечать в теме, в которой ты не разбираешься
Всё с точностью наоборот, ты сама и не разбираешься, вот и пришла задавать вопросы. Тебе уже несколько человек ответили одно и то же.
Вот я ищу и нахожу хеши и первожу их в число. У меняя выходят следущие числа: 1, 200030320, 45, 38778968, 99999911182, 13.
function bitcoin($val) {
for ($result = 0, i=0; $result != $val; sleep(1), ++$i) {
$result = $i;
}
echo "успех";
}
bitcoin(600); // 600 секунд
//Время генерации
time = 111
//Условно хеш предыдущего блока
prevBlock = "1"
//Цель, которая задаёт сложность
target = '50000'
//Наша угадайка
try = 0
maxTry = 999999999999999999999999
while try < maxTry {
//Создаем заголовок
header = time + prevBlock + try
//Считаем хеш
hash = sha256(header)
if(hash <= target)
echo 'Ура я нашел хеш'
break
try += 1
}
hash <= target
). Нужный хеш может попасться сразу, может и через некоторое время. Но параметр target автоматически устанавливается так, чтобы это было примерно раз в 10 минут, меняется каждые 2016 блоков. Больше никакого волшебства. Можно конечно сразу придумать нужный хеш, который входит в условия, но проблема в том, что я не смогу угадать какой там будет значение переменной try.то таких тупых ответов не было бы
Поэтому невозможно рассчитать время, тем более 10 минут.
ловят хеш, который имеет вид: 0000000000000000000000abcde