Ru-Board.club
← Вернуться в раздел «Программы»

» Программы для SFV & CRC32 & SHA1 & MD5

Автор: lelik007
Дата сообщения: 23.01.2015 07:00
encode
Илья, вообще то имелся ввиду прогресс бар - кажется так этот элемент называется.
Автор: Alpha_Dog
Дата сообщения: 23.01.2015 09:45
Я правильно понимаю, что один и тот же файл может иметь некое (бесконечное?!) количество контрольных сумм?
Автор: encode
Дата сообщения: 23.01.2015 13:28

Цитата:
Илья, вообще то имелся ввиду прогресс бар - кажется так этот элемент называется.

Знаю про прогресс бар. Тестировал много идей, но пока почему-то не пришел к тому, чтобы я хотел видеть у CHK. Очень неплохо выглядит прогресс бар на Таскбаре (Фишка Виндоуса начиная с семерки, которой нет в ХР)


Цитата:
Я правильно понимаю, что один и тот же файл может иметь некое (бесконечное?!) количество контрольных сумм?

Разные алгоритмы вычисления выдают разные результаты. Как пример, MD5 какого-то файла не равняется SHA1 того же файла.
Автор: Alpha_Dog
Дата сообщения: 23.01.2015 13:59
Хорошо. А при одном алгоритме - у файла на компе у меня и у соседа - всегда одинаковые суммы?
Автор: Aleks78
Дата сообщения: 23.01.2015 14:03
Alpha_Dog
А какой смысл если будут разные то ?
Автор: Alpha_Dog
Дата сообщения: 23.01.2015 14:10
Ну, допустим так - все суммы разные, но и все правильные, по некоему правилу для данного алгоритма.
Автор: Skif_off
Дата сообщения: 23.01.2015 17:32
Alpha_Dog
Если файлы одинаковые, то и контрольные суммы будут одинаковые. Хотя есть неприятность: md5-коллизии, когда контрольные суммы md5 совпадают у разных файлов, т.е.при поиске дубликатов с помощью md5-сумм можно облажаться.
Автор: Alpha_Dog
Дата сообщения: 23.01.2015 17:41
Вот я как бы это знал, в смысле, догадывался, но не мог правильно сформулировать)
Автор: Aleks78
Дата сообщения: 23.01.2015 17:48
Alpha_Dog
Это как проверка целостности архива, если он целый то сумма одинаковая будет а тут просто без архива - по файлам.
Автор: lelik007
Дата сообщения: 23.01.2015 18:09
Alpha_Dog
Вам ответили уже конечно, но как раз смысл хеш-функций, чтобы они одно и тоже значение от одних и тех же данных всегда давали. А если если разные значения для одних и тех же данных - это и есть коллизия. Коллизии доказаны точно для MD5, еще говорят что можно для SHA-1 сделать специально коллизию. Вот представьте пароль или цифровую подпись - что будет если хеш-функция даст другое значение. Хеш-функции так проектируют, чтобы коллизий не было, но это не всегда получается.
encode
Я про красивости не сильно понимаю, я просто к тому чтобы время было понятно, сколько будет процесс длится. А что не планируете ли BLAKE2sp в CHK сделать?
Автор: Skif_off
Дата сообщения: 23.01.2015 18:14
Тоже спрошу, раз заглянул: из-за возможных проблем с md5 перешёл на sha1, а какой метод самый быстрый и без коллизий?
Автор: Aleks78
Дата сообщения: 23.01.2015 18:22
Skif_off
Да лучше сразу и всё делать.

CRC-32:
MD4:
MD5:
SHA-1:
Автор: lelik007
Дата сообщения: 23.01.2015 19:29
Skif_off
BLAKE2 один из самых быстрых, но мало где есть.
Tiger. SHA-512 - оптимизирован для 64 бит, то есть если 64-битное приложение на 64-х битной ОС. Тоже достаточно быстро. SHA-256 - удобочитаемые контрольные суммы, но он не быстрый.

Можно просто проверить, то что предлагает Aleks78, поставить
HashCheck Shell Extension - он явно ее имеет ввиду, перешехировать папку, засечь время.
и RapidCRC Unicode SHA-512 или SHA-256,
я как то тестировал, SHA-512 точно быстрее в этом исполнении чем HashCheck Shell Extension а за SHA-256 не уверен.
Автор: encode
Дата сообщения: 23.01.2015 22:19

Цитата:
Я про красивости не сильно понимаю, я просто к тому чтобы время было понятно, сколько будет процесс длится. А что не планируете ли BLAKE2sp в CHK сделать?

Добавил индикатор прогресса (% done, пока так) - CHK v1.82
BLAKE2 планирую добавить - пока просто тестирую. Не очень радует путанница с BLAKE2 вариантами (BLAKE2b, BLAKE2bp, BLAKE2s, BLAKE2sp)
Автор: lelik007
Дата сообщения: 24.01.2015 08:16
encode
Илья, странно вы рассуждаете, ну это же семейство BLAKE2, вам же не кажется странным,
что семейства SHA-2 у вас в программе аж 4 представителя? Хотя на деле используют 2. И не все же поголовно знают, что SHA-512 оптимизирован для 64-бит, а SHA-256 для 32-х (SHA-512 на 32-х битах зело тормозной). Так и тут...
---
Сделайте все семейство если можете, просто потому что нету таких GUI программ которых все семейство BLAKE2 могут считать, вот и будет фишка. И прям так и называйте как они и есть (BLAKE2b, BLAKE2bp, BLAKE2s, BLAKE2sp). HashTab умеет только BLAKE2sp, checksum от corz.org только BLAKE2s.
---
А про прогресс бар, нормально сделали, чего там. Вот представьте, новый пользователь открыл вашу программу, выбрал файл на 4 Гб и она, зависла... А как ты узнаешь что там значок крутится и она не висит,
а так понятно, работает, считает.
Автор: encode
Дата сообщения: 24.01.2015 12:44

Цитата:
Илья, странно вы рассуждаете, ну это же семейство BLAKE2, вам же не кажется странным,
что семейства SHA-2 у вас в программе аж 4 представителя? Хотя на деле используют 2. И не все же поголовно знают, что SHA-512 оптимизирован для 64-бит, а SHA-256 для 32-х (SHA-512 на 32-х битах зело тормозной). Так и тут...

Странным не кажется, так как SHA-2 - это уже более 10 лет стандарт хеширования, поддерживается всеми программами и стандартами (PGP, OpenPGP, OpenSSL, ...). Поэтому он имеет полное право на масштабное присутствие (правда новые SHA512/256 и SHA512/224 хоть я и написал, но в CHK не включил). В тоже время, RIPEMD160 у CHK только один. Tiger, кстати, очень хорош - быстрее MD5 на 64-битных машинах.


Цитата:
Сделайте все семейство если можете, просто потому что нету таких GUI программ которых все семейство BLAKE2 могут считать, вот и будет фишка. И прям так и называйте как они и есть (BLAKE2b, BLAKE2bp, BLAKE2s, BLAKE2sp). HashTab умеет только BLAKE2sp, checksum от corz.org только BLAKE2s.

Учту, спасибо за идею!
Автор: lelik007
Дата сообщения: 24.01.2015 19:26
encode
Я Илия, как мыслю. BLAKE2sp применил Евгений Рошал в WinRar 5.x - а если файл допустим большой, что тебе его распаковывать и хеш сверять? А тут можно сразу и проверить что у тебя в архиве, а что вне архива.

Про Tiger - алгоритм очень хороший, но средней распространенности к сожалению. Предпочитают конечно комбинацию MD5/SHA-1 или SHA-2 просто.

Про BLAKE2b, BLAKE2bp - я честно говоря, не знаю зачем нужно считать КОНТРОЛЬНУЮ СУММУ файла,
вообще чем то с 512-битным хешем. То же Wirlpool - ну совсем не для этого он, ну это криптографическая хеш-функция, еще и медленная в добавок. Для криптографии хорошо, для контрольных сумм - плохо.
К тому неудобочитаемый 512-битный хеш.

Просто как я уже отмечал SHA-512 быстрее SHA-256 на 64 машинах, поэтому использую его.
Автор: encode
Дата сообщения: 24.01.2015 22:38
Я какраз планирую добавить SHA512/256 (обрезанный до 256-бит SHA512 с другими IV)
Да, думаю будущее за BLAKE2s/BLAKE2sp, а даже не за SHA3/Keccak - стандарт, которого так еще и не утвердили. (В старых версиях CHK был Keccak512, потом выяснилось что SHA3-512 будет другим, а каким он будет в конечном счете неясно... Хотя уже во всю добавляют SHA3-* в утилиты, до финальной стандартизации... ну-ну)
Автор: data man
Дата сообщения: 25.01.2015 20:25
encode
Как насчёт поддержки xxHash 32/64?
C BLAKE я его пока не сравнивал, но остальных он по скорости бьёт.
Да и тесты SMHasher он проходит.
Автор: encode
Дата сообщения: 26.01.2015 01:28
XxHash добавлять не буду - так как это самодеятельность для внутреннего использования.
Из быстрых хешей у CHK есть:
CRC32 (алгоритм slice-by-8) - на 3770K скорость выше 2 ГБ/сек
Adler32 (с моей оптимизацией) - на том же 3770K скорость выше 3,5 ГБ/сек
Все это явно быстрее SSD, к тому же это стандартные и хорошо изученные алгоритмы которые присутствуют во многих программах (хоть пусть и в тормозном исполнении)
Автор: lelik007
Дата сообщения: 26.01.2015 07:51
encode
Понимаете Илья, Keccаk то этот, я его видел в HashTab - ну цело тормозной, ну вот медленнее всех вообще в этом исполнении. VSCryptoHash который как я сильно подозреваю использует возможности Crypto++ программка действительно что там пытается Keccak читать, но тоже по сравнению с другими...

Просто я как писал, мне лично непонятно зачем нужен Whirlpool или Keccak для вычисления контрольных сумм, просто это ИСКЛЮЧИТЕЛЬНО криптографические хеш-функции, а они чем тормознее тем и лучше для замедления атаки Brute Force (помимо прочих средств).

Я просто считаю, что для вычисления контрольных сумм нужна именно критпостойкая хеш-функция, но самая быстрая из возможных и ну с хешем 128-256 бит (и пространство вариантов большое и глазами читать удобно). Ну вот Tiger подходит и BLAKE2. Кстати в RSC32 сделан какой то твик BLAKE2 на базе вроде как документации даже, там 128 бит BLAKE2 - но не урезанный от BLAKE2b, BLAKE2bp, BLAKE2s, BLAKE2sp а как то он по своему делается. Интересное решение.
Автор: SFC
Дата сообщения: 26.01.2015 10:02
Файл: 7,516,196,864 байт. т.е. 7GB
Алгоритм: MD5
CHK Checksum Utility (х64)= 1 мин 09 сек
HashCheck Shell Extension = 1 мин 14 сек (посчитано все, а не только MD5. оставить подсчет только MD5 нельзя)

Диск конечно не SSD, а обычный винт.
Можно ли говорить о глобальном преимуществе CHK Checksum Utility ? имхо - нет.
И размер исполняемого файла как то слишком большой для такой простейшей программы. И интеграции в оболочку нет пока
Автор: encode
Дата сообщения: 26.01.2015 10:29
lelik007
С Вами согласен! Но хеши еще используются для проверки подлинности файлов. Например, скачал человек с торрентов образ диска Винды. Как проверить был образ модифицирован или нет? На сайте Майкрософт есть SHA1 всех ISO...

SFC
На 3770K и SSD, MD5 гигового файла CHK (64-битная) просчитывает за 2 секунды. 7 гигов - это где-то 14 секунд максимум. Не думаю, что на других процессорах это намного медленнее, все остальное время забирает винт - замерять на нем скорость некорректно!
Тем не менее, спасибо за тестирование! (Про размер Экзешника знаю)
Автор: Tilks
Дата сообщения: 26.01.2015 11:48
поправил шапку:
исправил не рабочие ссылки.

добавил Febooti Hash & CRC - freeware hash verification utility.
похожа на Hashtab

// текущий бэкап #
Автор: krserv
Дата сообщения: 02.02.2015 02:12
Посоветуйте пжс. утилиту полный автомат для SHA 256 - т.е указал я ей директорию, она в ней посчитала hash файла и сравнила с результатом в другом файле, не два файла сравнивает, а проверка после скачивания, когда идет сам файл и файл с записанным значением хэша.
Искал утилиты, все предлагают либо копировать значение и сравнивают их, либо совсем простые предлагают визуально самому сравнивать. А мне нужна та которая бы брала значение из файла самостоятельно.
Автор: maxvlas
Дата сообщения: 02.02.2015 16:28
RapidCRC Unicode 0.3.16

Цитата:
v0.3.16
posted on 01/24/2015 - 14:51
Another maintenance release...

Fixed problems with empty base path, for example when hashing from search results
Shellext: register for all users, now works with builtin admin
Fix hide verified in options dialog
Automatically add hash extension in file dialog


Здесь тему сделал RapidCRC Unicode,кому интересна программа
Автор: krserv
Дата сообщения: 04.02.2015 13:06
krserv

Цитата:
Посоветуйте пжс. утилиту полный автомат для SHA 256 - т.е указал я ей директорию, она в ней посчитала hash файла и сравнила с результатом в другом файле, не два файла сравнивает, а проверка после скачивания, когда идет сам файл и файл с записанным значением хэша.
Искал утилиты, все предлагают либо копировать значение и сравнивают их, либо совсем простые предлагают визуально самому сравнивать. А мне нужна та которая бы брала значение из файла самостоятельно.

Люди добрые, нужна такая утилита, может кто знает, наверняка есть такая же как gtkhash - под Linux, которая позволяет сравнивать беря значение из файла. Под MD5 такие программы есть под Windows, а вот под SHA 256 не могу найти.
Автор: boi1eI
Дата сообщения: 04.02.2015 13:59
krserv
Да хоть тот же hashtab, правда автоматизации там никакой.http://i.imgur.com/0kBuzjY.gif
Автор: lelik007
Дата сообщения: 04.02.2015 16:45
encode
Илья, я чего то не пойму, а как собственно в CHK проверить хеш, если у меня уже есть файл хешей?

Добавлено:
krserv
Skwire SFV Ninja По моему как раз сравнивает.
Автор: encode
Дата сообщения: 04.02.2015 20:02

Цитата:
Илья, я чего то не пойму, а как собственно в CHK проверить хеш, если у меня уже есть файл хешей?

Ответ прост - никак
На данный момент, CHK умеет верифицировать файлы следующими способами:
+ Если имя файла содержит правильный хеш - CHK поставит галочку (фича AnimeChecker)
+ Можно вручную ввести хеш для сравнения - команда "Verify..."
+ Для проверки папок можно сверять хеши самих файлов содержащих хеши
Как вариант, можно использовать RHASH или SFV Ninja - CHK польностью совместим с данными утилитами, в том числе, с UTF-8 именами файлов

Страницы: 12345678910111213141516

Предыдущая тема: Программa HTML Help Workshop


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.