Size: a a a

2020 May 28

S

Skill in Go-go!
Спасибо
источник

ВС

Владимир Столяров... in Go-go!
"защита" тут в том, что клиент должен потратить дополнительное время/cpu, чтобы сделать запрос
источник

ВГ

Владимир Гришин... in Go-go!
Skill
Собственно исходный скрипт такой
script>
     function requestValidate(callback) {
       var str = '' + gebi('item').value + gebi('page').value + gebi('csrf_token').value,
         key = '0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff',
         sig = 0;
       (function step() {
         for (var i = 0; i < 1000000000; ++i, ++sig) {
           if (sha256(sig.toString(16) + str) <= key) {
             gebi('recaptcha').value = sig.toString(16);
             callback(true);
             return;
           }
         }
         setTimeout(step, 0);
       })();
     }
     </script>
а может просто инжектнуть скрипт, который вызывает callback(true)?
источник

S

Skill in Go-go!
Владимир Гришин
а может просто инжектнуть скрипт, который вызывает callback(true)?
Не в этом дело, запрос делается с параметром рекапча. И на сервере он проверяется
источник

ВГ

Владимир Гришин... in Go-go!
прям регекспом выпарсить это говно и заменить на
`
<script>
 function requestValidate(callback) {
    callback(true)
 }
</script>
источник

S

Skill in Go-go!
Правда не понимаю как сайт успевает это все обрабатывать. Он же тоже должен, пройтись этим циклом
источник

ВС

Владимир Столяров... in Go-go!
Так серверу надо один раз проверить то, что прислали. А клиенту надо подбирать значение, вычисляя хеш много раз
источник

@

@mr_tron in Go-go!
Pow для защиты от спама это прекрасно. Что за сайт?
источник

S

Skill in Go-go!
Владимир Столяров
Так серверу надо один раз проверить то, что прислали. А клиенту надо подбирать значение, вычисляя хеш много раз
Точно. Что самое интересное, уже не первый раз такую защиту встречаю
источник

S

Skill in Go-go!
@mr_tron
Pow для защиты от спама это прекрасно. Что за сайт?
Именно с параметром pow варгейминг
источник

C

Calculon in Go-go!
Если json декодер распарсил N полей, а потом упал с ошибкой, он вернет те N полей?
источник

C

Calculon in Go-go!
или вообще ничего не заполнит и вернет только ошибку?
источник

C

Calculon in Go-go!
я про stdlib-овский
источник

ВС

Владимир Столяров... in Go-go!
По идее должен заполнить, если изначальный json был валидный
источник

@

@mr_tron in Go-go!
Daniel Podolsky
я так понял - соответствующие тулзы есть для CUDA

и надо просто нарисовать взаимодействие - например, через сокеты
На вскидку видеокарта быстрее цпу в этой задаче в 3-4 раза всего. Минус накладные расходы это в лучшем случае будет в 2-3 раза быстрее.
Скорее всего купить больше процессоров окажется дешевле
источник

RA

Rinat Almakhov in Go-go!
hmirin
благодарю, гляну, но хотелось бы самому решить)))
но у тебя не выйдет)
источник

VM

Vladislav Milenin in Go-go!
можно ли как-то, зная размер файла, выгружать его по http в несколько подключений? Я так понимаю Reader в io.Copy(out, response.Body) работает по offset’у [n*buffSize:(n+1)*buffSize]?
в интернете не нашел подобного
источник

ВС

Владимир Столяров... in Go-go!
Content-Range, всякие download-master-ы и прочие качалки в несколько потоков так и делали
источник

ВС

Владимир Столяров... in Go-go!
если конечно сервер умеет так отдавать
источник

DP

Daniel Podolsky in Go-go!
Vladislav Milenin
можно ли как-то, зная размер файла, выгружать его по http в несколько подключений? Я так понимаю Reader в io.Copy(out, response.Body) работает по offset’у [n*buffSize:(n+1)*buffSize]?
в интернете не нашел подобного
короткий ответ - да
источник