Реверс-инжиниринг неизвестного бинарного формата файла – задачка нечастая, но, на мой взгляд, вкусная. Самое то, чтобы в пятницу с утра отвлечься от организационной текучки, техподдержки, бизнес-планов, заполнения восьмёрок в системах отчётности - и поиграть в Шерлока Холмса. В этой статье я расскажу об опыте изучения бинарного файла с временными данными технологических параметров и о небольшой фишке чтения хитрым способом сохранённых строк из другого формата. Файлы несложные, времени на анализ потребовалось немного, но мне было интересно, и вам, я надеюсь, тоже будет интересно.
User
Уроки компьютерного зрения на Python + OpenCV с самых азов. Часть 8
На прошлом уроке мы углубились в изучение контуров. В частности, научились работать со структурой, которую возвращает функция выделения контуров, научились аппроксимировать и обходить контур, научились программировать кое-какие геометрические операции, чтобы создать инвариантное описание объекта. Напомню, как это мы сделали: нашли контур объекта, аппроксимировали его, обошли этот контур, вычислили косинусы углов между гранями аппроксимированного контура.
Сегодня продолжим тему прошлого урока. Вычислим инвариантный вектор новым методом: через отношения длин сторон. Мы начнем обход так же с самой удаленной от центра точки, только будем брать стороны, а не углы межу сторонами. И первая сторона это та, что прилегает к первой точке. То есть она соединяет первую точку и следующую за ней по часовой стрелке. И все эти длины сторон мы разделим на самую длинную сторону. Хотя нет, сделам лучше. Сделаем минимакс нормализацию: вычтем из длины стороны минимум и разделим на разницу между минимумом и максимумом. У нас будет вектор чисел от 0 до 1.
И так, займемся кодингом. Сначала напишем цикл, создающий исходный масcив:
Криптостойкость Биткоина против квантового компьютера QIANSHI от китайского гиганта поисковой системы Baidu Inc
В погоне за кубитами Baidu Inc как лидер среди китайских поисковых систем не отстаёт от своего западного конкурента Alphabet Inc.
Все супермощные компьютеры используют квантовую физику для решения сложных задач, недоступных для традиционных устройств, с помощью кубитов - эволюции классического двоичного бита. Кубиты могут одновременно представлять значение 1 или 0, что обещает экспоненциальный рост вычислительной мощности.
Биткоин использует сразу несколько криптографических алгоритмов: алгоритм цифровой подписи на эллиптической кривой (ECDSA)
для подписи транзакций и две хэширующие функции — SHA-256
и RIPEMD160
.
Наиболее распространенный хэши функции используют вариант 128 ключей
который может быть взломан квантовыми компьютерами. В обозримом будущем RIPEMD160
может оказаться так же под угрозой.
Внедрение обновления шифрования для системы блокчейна кажется самой большой головной болью для криптографов, так как процесс обновления существующих приватных ключей может создать новые уязвимости.
Новые приватные ключи будут генерироваться системой после успешного внедрения постквантового шифрования. Чтобы активировать переход на новый приватный ключ, пользователи должны будут подписать для утверждения свой старый приватный ключ. Однако неактивные пользователи Биткоина могут никогда не обновить свой приватный ключ, что может вызвать серьезные проблемы, так как бездействующие Биткоин Кошельки, такие как те, которые содержат более 1 миллиона монет BTC, которые предположительно принадлежат Сатоши Накамото, вероятно, никогда не увидят улучшения шифрования.
Один из наиболее часто упоминаемых способов атаки на Биткойн который может быть применим квантовыми компьютерами это атака «дней рождения» (Birthday attack)
Этот метод основан на поиске коллизий хеш-функций на основе парадокса дней рождения.
Information
- Rating
- Does not participate
- Location
- Москва, Москва и Московская обл., Россия
- Date of birth
- Registered
- Activity