Задать вопрос
  • Где найти воздушный ресивер?

    @oldd
    Программист, архитектор, тимлидер
    40 атмосфер - это неслабая такая бомба, если что-то пойдёт не так - мало не покажется. Прям очень не рекомендую.
    Ответ написан
    1 комментарий
  • Где найти воздушный ресивер?

    @AlexVWill
    А точно надо это все пневматически делать? Насколько я помню, все подобные установки работают механически, за счёт быстрого вращения двух валов, между которыми подаётся мяч. Удобно же, никакой пневматики, все работает от сети, значит не надо баллоны накачивать, проверять узлы на предмет удержания давления, допусков и т.д.
    Ответ написан
    Комментировать
  • Как работает ленивость в регулярных выражениях?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Ленивые квантификаторы - повторять минимальное число раз. Жадные - максимальное число раз. В данном случае проще всего просто выбрать весь текст вокруг целевого слова до слэшей:
    /[^\/]*МОСКВА[^\/]*/g
    Второй вариант просто - разделить строку на группы, если вам надо работать с несколькими группами. Например:
    /(.*?)\/\/(.*?)\/\/(.*?)\/\/(.*)/

    Пишу регулярку //.+?МОСКВА.+?// , вроде указана ленивость, но захватывает она кусок // фио персонажа // адрес МОСКВА адрес // , то есть захватывает лишнего, а именно - ФИО персонажа

    Возможно вы подумали, что регулярное выражение будет делать поиск назад от слова - но нет, регулярка работает слева направо и по-порядку. В данном случае найти пару слешей - вот оно и находит первую же пару, далее любой символ один или более раз до слова "МОСКВА". Рекомендую почитать мануалы по регулярным выражениям.
    Ответ написан
    Комментировать
  • Как работает регистрация и аутентификация с помощью ЭЦП?

    Есть два стандарта:
    1. Международный FIDO2 (работает из коробки в большинстве браузеров)
    2. Российский ГОСТ Р 34.10 (требует специальный плагин в браузер и установленный csp)

    Работают они по схожей схеме, различается только момент с выпуском сертификатов.

    1. Клиент каким-то образом генерирует ключевую пару (закрытый ключ шифрует, открытый расшифровывает).
    Тут используется одно из двух: RSA или Эллиптические кривые.
    2. Клиент передаёт свой публичный ключ на сервер

    При аутентификации:
    1. Клиент сообщает, кто он есть
    2. Сервер генерирует челендж (просто длинное случайное число, которое определенным критериям отвечает)
    3. Клиент шифрует этот челендж своим закрытым ключом
    4. Сервер расшифровывает его открытым ключом и сравнивает, что результат получился такой, какой он и сгенерировал изначально.

    Таким образом сервер убеждается, что клиент владеет нужным закрытым ключом и аутентифицирует его.
    Ответ написан
    Комментировать
  • Как анти-бот системы определяют ботов и как от них защищаться?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Если я отправлю гет запрос из консоли то увидит-ли меня сайт где именно я нахожусь?

    Напрямую нет, но косвенно можно понять это по ip адресу исходящего запроса.
    Если я будут использовать селениум то увидит-ли меня сайт где именно я нахожусь?

    Напрямую нет, но косвенно можно понять это по ip адресу + гуглите, что такое утечки dns и как можно определить настоящий ip (минуя прокси) через webrtc.
    Селениум хороший анти-детект браузер? Видел еще playwright он лучше?

    Selenium - это вообще не антидетект браузер, а лишь программа, которая использует browser-driver для управления браузером. Selenium + undetected-chromedriver простая защита сайта не обнаружит, но вот средненькие антибот системы он уже часто не проходит. Playwright лучше определяется антибот системами.
    Как обычно парсят сайты со сложной защитой? Где продаются такие боты?

    Пишут свои приватные реализации ботов, которые обычно не продаются, т.к. прибыль от бота сильно выше его разовых продаж, а как только его продадут, так о нем сразу узнают те, кто пишет антибот системы. Либо используют готовые паблик сервисы, которые предоставляют api доступ по подписке с приличной стоимостью, но они не всегда в состояние преодолеть сложную защиту, т.к. этими же сервисами пользуются и те, кто пишут эту самую антибот защиту.
    Как анти-бот системы определяют ботов наверное есть какие отличительные признаки?

    Профессионально обнаружением ботов занимаются отдельные команды или даже целые компании (Radware, DataDome, Cloudflare, Imperva, Arkose Labs, HUMAN Security, Akamai, hCaptcha итп). Обнаружение сводится к прямому и косвенному методам.

    Прямые методы обнаружения:
    - Частота запросов и "доверие" (trust) к конкретному ip.
    - Проверка заголовков User-Agent. Заголовки от iphone, версия браузера от андройда, а размер дисплея от ноута - надежно!
    - Отпечатки рукопожатий TLS/QUIC (векторы JA3/JA4, ALPN, расширенный порядок).
    - Проверка выполнения JS.
    - Обнаружение признаков использования драйверов браузеров (window.navigator.webdriver, window.document.__webdriver_script_fn итп), открытости DevTools итп.
    - Шрифты: через js получают список шрифтов (откуда у вас Ubuntu шрифт на Андройде?), затем выборочно печатают на canvas изображение нужным шрифтом или печатают невидимый шрифт без канваса (применяют css свойство с найденным шрифтом), затем замеряют размеры результата и сверяют его с эталоном.
    - Видеокарта: через js рисуют на canvas невидимое изображение с цифрами, спецсимволами и смайликами, затем получают представление изображения в виде кода. Через WebGl можно нарисовать 3D изображение.
    - Камера. Как это у вас 3 камеры на samsung a32, если их 4?
    - Гироскоп, компас, акселерометр (все это без разрешения работает на андройде). Почему ваш гироскоп не двигается несколько минут подряд, хотя геолокация и ip gsm вышек меняются?
    - Анализ аудио рендеринга без разрешения на доступ к аудио (используется только программный аудио стек), где собираются уникальные артефакты обработки звука в зависимости от аппаратного обеспечения. Генерируется аудиосигнал, который обрабатывается через цепочку фильтров и эффектов (динамическая компрессия, частотные изменения, реверберация, изменение частотной или амплитудной модуляции итп).
    - Остальная проверка характеристик браузера->устройства: процессор, оператива, дисплей, плагины, часовой пояс, язык. У вас в браузере установлен русский язык, тайм-зона германии, последняя геолокация час назад в италии, а сейчас вы используете ip адрес гондураса, и как ему удается свайпать по НЕ сенсорному дисплею? - чистокровный человек, пропускаем! ;)
    = Собираем данные, хэшируем и получают относительно уникальный отпечаток (fingerprint). Уникальность заявляется разная, вплоть до 99%.

    Косвенные методы обнаружения:
    - Частота запросов и "доверие" (trust) к конкретному ip. Внезапно начался наплыв пользователей, да и еще примерно с одинаковыми характеристиками устройств, при этом хозяин сайта не давал рекламы или как то привлекал пользователей...
    - Нестандартный скролл/свайпы/клики у пользователей, ошибки и скорость ввода текста. Внезапно резко наплывшие пользователи стали скролить примерно до одного блока, делали 3 свайпа по 5-6 точек в каждом, хотя до этого все скролили по разному...
    - Нестандартная реакция на всплывающие окна. Скролл поверх фиксированного окна - бесценно... ;)
    - Нестандартная последовательности посещенных страниц.
    - Нестандартное количество проведенного времени на странице.
    - Клики по невидимым для живого человека ссылкам, заполнение невидимых полей и отправка формы, когда она не может быть отправлена, в результат не верной js валидации полей - это вообще не стареющая классика.
    - Геолокация - только с разрешения, но после разрешения можно получить много косвенных данных для анализа. Какая точная у вас геолокация, всегда до метра, и прыгает всегда по 10 метров, а у других на таком же устройстве все дергается как го*но в проруби...
    = Собираем данные, заливаем в нейронку и сравниваем с эталонными пользователями.

    Это лишь самые распространенные методы обнаружения, которые используют большинство топовых антибот систем.
    Ответ написан
    6 комментариев
  • Как работает регистрация и аутентификация с помощью ЭЦП?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    При регистрации клиент передаёт серверу открытый ключ ЭЦП.
    При авторизации сервер генерирует случайное значение, отсылает его клиенту. Клиент шифрует закрытым ключом, возвращает зашифрованное значение. Сервер расшифровывает открытым ключом и сверяет значение.
    Ответ написан
    Комментировать
  • Какие есть средства для проверки правильности настройки почты?

    @res2001
    Developer, ex-admin
    Например на вскидку mxtoolbox.com. Вообще их довольно много.
    По минимуму нужно проверить MX запись DNS сервера, закрыт ли open relay, а так же прохождение входящей и исходящей почты.
    Ответ написан
    Комментировать
  • С чего начать изучение инженерной части БД?

    @sergeperovsky
    Если всерьез, то с математических основ. Без реляционной алгебры не было бы современных БД.
    Нужно только понимать, что отношение это математическая модель заполненной базы, не предполагающей дальнейшего пополнения. Все приемы нормализации будут иметь смысл только в этом случае.
    Ответ написан
    Комментировать
  • Как можно реализовать фиксирование заброшенной шайбы в ворота?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Фиксацию шайбы нужно делать на скоростной видеокамере. Вопрос, что нормальная скоростная камера должна быть как минимум 120 fps, и чем выше, эти самые fps, тем лучше.

    Поэтому для видеофиксации линий, бросков, и прочей спортивной хрени ставят обычно линейные видеокамеры. Картинка с них так себе, мягко говоря, толкьо для компухтерной обработки (интернет в помошь), но, с той картинки можно однозначно запечатлеть шайбу, бегуна, авто и прочие спортивные снаряды, пересекающие некую черту. - https://en.wikipedia.org/wiki/Line-scan_camera

    И да, скорее всего это будет Ч/Б камера.

    Про блютуз на спортивных площадках можно просто забыть! Пр и большом стечении народа он работает в радиусе полу метра. Wifi еще как-то подходит, но нужна направленная антена. Иначе приходит телевидение со своими направленными антеннами, передатчиками для SDI и у вас все ложится.
    (В течении 7 лет проводил спортивные мероприятия, знаю о чем пишу).
    И Увы, это дорого, очень дорого!

    Конкретно к хоккею, вот статья - https://www.silversevensens.com/nhl-puck-tracking-...
    Ответ написан
    Комментировать
  • Почему происходит разряд идеального конденсатора, если поле вне его равно нулю?

    15432
    @15432
    Системный программист ^_^
    Ну вы не всё нарисовали же. Когда отрицательный/положительный заряд убежал к внутренней стороне обкладки, на противоположной (внешней) её стороне скопился противоположный по знаку заряд (поскольку атомы в целом нейтральны) и создал там уже своё поле. Которое вы оппа - замыкаете проводником. И побежали электрончики уравнивать скопившиеся заряды на внешних частях обкладки
    Ответ написан
    Комментировать
  • Как починить данную поломку своими руками?

    ProgrammerForever
    @ProgrammerForever
    Учитель, автоэлектрик, программист, музыкант
    Покупайте экран и меняйте.
    Экран стоит 1000р на али, клей b7000 рублей 300
    Проще и надежней - отнести в сервис
    Ответ написан
    Комментировать
  • Как исправить русские символы?

    Zettabyte
    @Zettabyte
    Проф. восстановление данных ▪ Вопрос? См. профиль
    Исправлять надо не символы, а кодировку.

    File -> Reopen with encoding -> Cyrillic (Windows 1251)

    File -> Save with encoding -> UTF-8
    Ответ написан
    Комментировать
  • Как создать платную лицензию для программы на C++?

    @EDIsaev
    Даже если вы разработаете "идеальную" защиту, она работает до первой покупки, при попадании ключа в нужные руки вся защита снимается, а потратить на её разработку можно годы!...
    А простенькую защиту от "дурака" вам в первом ответе описали.
    Ответ написан
    Комментировать
  • Мощный светодиод крепится к радиатору на термоклей или на припой?

    sotvm
    @sotvm
    Умный поймёт, а дураку и так всё равно.
    клей
    если паять(да обычным припоем≈200℃), запросто можно убить :(
    на сколько я помню, допускается нагрев <3-4сек ≈220-230℃
    Ответ написан
    Комментировать
  • Мощный светодиод крепится к радиатору на термоклей или на припой?

    fox_12
    @fox_12
    Расставляю биты, управляю заряженными частицами
    Радиатор во-первых алюминиевый, а во-вторых - хорошо отводит тепло - поэтому нужно сильнее греть.
    Поэтому даже если найти припой который паяет алюминий, и очень хорошо разогреть радиатор, - то кристалл светодиода при пайке к радиатору очень быстро привет пожелает напоследок...
    Ответ написан
    Комментировать
  • Компьютер зависает намертво, из-за чего может быть?

    Zettabyte
    @Zettabyte
    Проф. восстановление данных ▪ Вопрос? См. профиль
    SSD M.2 NVMe:Apacer

    Посмотрите SMART у ССД. Он и под подозрение попадает и проверяется быстро. Можно Р.тестером: https://rlab.ru/tools/rtester.html или другой утилитой, которая работает с НВМе.

    Хотя сюрпризы могут быть и менее очевидными - как я понимаю, у вас мат. плата с Али, и, возможно, память оттуда же. Полноценная диагностика, как минимум, м/п может оказаться сродни квесту.

    UPD:
    В гугле по номеру модели за несколько кликов нашёл вот такой отзыв на SSD Apacer: ssd-apacer-otzyvy.png
    Ответ написан
    3 комментария
  • Что такое кластерный индекс в mysql?

    @Akina
    Сетевой и системный админ, SQL-программист.
    Кластерный индекс... это на самом деле понятие крайне виртуальное.

    Что такое обычный некластерный индекс? берём выражение индекса, считаем его значение для каждой записи, сортируем и пишем на диск. Получаем отдельную структуру, в которой выражение индекса сортировано. Когда потребуется искать заданное значение этого выражения, мы вместо просмотра от записи к записи сразу половинным делением быстренько найдём нужное значение, возьмём из него уникальный идентификатор записи, и обратимся за записью. Если в таблице 1000 записей, то для поиска заданного значения без индекса нам в среднем пришлось бы просмотреть 500 записей, а с индексом - всего 10.

    Теперь что такое кластерный индекс... сначала почти то же. Берём выражение индекса, считаем его значение для каждой записи, сортируем и... а вот теперь не записываем по порядку эти значения с номерами соответствующих записей в отдельную структуру, а сами записи располагаем в этом порядке. Теперь, когда потребуется искать заданное значение этого выражения, мы вместо просмотра от записи к записи, как это было, когда записи не сортированы, сразу половинным делением быстренько найдём нужное значение. Но нам уже не надо получать номер записи и обращаться за ней - мы нашли саму нужную запись.

    В MySQL (точнее, в используемом по умолчанию движке InnoDB) первичный индекс, во-первых, существует ВСЕГДА, во-вторых, определяется так (в статье, на которую дали ссылку, имеются неточности в пункте 2):
    1. Если первичный ключ задан явно, то его выражение является также и выражением кластерного индекса. Или иначе - первичный ключ и есть кластерный индекс.
    2. Если первичный ключ явно не задан, но в таблице имеется индекс, отвечающий всем следующим требованиям:
      • является уникальным
      • не является функциональным, в т.ч. не использует в выражении вычисляемые поля
      • не использует в выражении поля, которые определены как допускающие значение NULL

      то именно такой индекс используется в качестве первичного. А если таких индексов несколько, то используется первый по тексту запроса на создание таблицы
    3. Если не имеется ни того, ни другого - генерируется синтетический скрытый 6-байтовый номер записи, который и используется как первичный ключ. Следует отметить, что штатных способов доступа к этому значению не существует.


    Выглядит так, как будто это просто физическая сортировка данных по индексируемому полю.

    Фактически - именно так.

    Создаётся ли отдельная таблица или просто упорядочивается хранение существующих данных?

    Не создаётся. Но при изменении первичного индекса таблица полностью пересоздаётся с новым физическим порядком записей.

    Если данные упорядочиваются этим индексом, допустим по ID, то почему при select без сортировки данные могут возвращаться в произвольном порядке, а не отсортированные по ID по-умолчанию?

    Если не задан явно ORDER BY, сервер имеет право вернуть записи в любом порядке, как ему удобнее. В большинстве случаев, но не всегда, он будет возвращать записи в порядке чтения с диска...

    Представь такой (на самом деле невозможный, но не суть) случай - ты запросил таблицу. Вторая половина её ещё лежит в кэше, а первая уже выдавлена оттуда данными другой таблицы, нужными для выполнения запроса. Конечно, наиболее оптимальным будет начать передачу данных клиенту с этих записей, а пока они передаются, подчитать остальные, и передать их позже. Вот тебе порядок-то и поломался...

    ===

    PS. Кстати, правило выбора индекса, который будет использоваться в качестве кластерного, имеет неприятный побочный эффект. Если у некоторых полей, входящих в какие-то индексы, изменяется свойство NULLability, то это может привести к изменению того, какой из имеющихся индексов станет использоваться в качестве первичного по пункту 2. В результате мы получим невозможность использования INSTANT / INPLACE методов, и будет использован длинный COPY. Впрочем, ситуация такая крайне редка.
    Ответ написан
    2 комментария
  • Что стоит использовать для защиты PHP-кода на текущий момент?

    ipatiev
    @ipatiev Куратор тега PHP
    Потомок старинного рода Ипатьевых-Колотитьевых
    Сообщество считает, что всё это бессмысленные ужимки, которые в 99% случаев используются только для того, чтобы прикрыть крайнее убожество кода. Серьёзные продукты никто не шифрует. Чем, в частности, объясняется заброшенность всех этих, на первый взгляд многочисленных, проектов, которые не выходят из стадии "мы тут с одноклассниками придумали крутую штуку". потом одноклассники либо умнеют и перестают теребить ерунду, либо находят занятие более интересное, чем пхпе.

    Сам по себе код мёртв. Он устарел ещё до релиза. В работе софта важна не дискетка с исходниками, а поддержка. Вот поддержку и надо продавать. И не дрожать над каждым вором. Потому что защита от одного вора отпугивает 10 честных покупателей.

    Плюс всегда есть SAAS.
    Ответ написан
    4 комментария
  • Как понять эти селекторы?

    Get-Web
    @Get-Web Куратор тега CSS
    Front-End Developer
    К элементу у которого есть оба класса:
    <div class="class-1 class-2">
        Some text
    </div>

    Если бы между ними был пробел .class-1 .class-2 тогда стиль применялся бы к .class-2 который находится внутри .class-1
    <div class="class-1">
    	<div class="class-2">
    		Some text
    	</div>
    </div>
    Ответ написан
    Комментировать