![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| emmanuil |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 380 Регистрация: 9.1.2007 Репутация: нет Всего: 3 |
Как можно подсчитать сумму CRC данных файла на C#?
|
|||
|
||||
| Void |
|
|||
![]() λcat.lolcat ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 25 Всего: 173 |
Cyclic Redundancy Check бывает разный.
Вот найденная в собственных архивах реализация алгоритма CRC32 в его наиболее распространённой вариации. Если нужно проверять контрольную сумму данных, пришедших «со стороны», надо проверить, какая реализация CRC используется там. Если считать и проверять самому, то это подойдёт. Если нет очень жёстких требований к быстродействию, можно сразу использовать уже имеющиеся во фреймворке криптографические хэш-функции (MD5, SHA).
забыл финальный xor в перегрузке для Stream, fixed Это сообщение отредактировал(а) Void - 3.5.2007, 20:57 -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
| emmanuil |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 380 Регистрация: 9.1.2007 Репутация: нет Всего: 3 |
Void, спасибо! А как проверить, какая реализация CRC используется?
Задача такая: Приходит файл со стороны и с ним приходит контрольная сумма данных этого файла. Нужно проверить совпадают ли они. Это также нужно для того, чтобы ктонибудь, после того как пришел файл, самостоятельно не начал его править. Ведь если изменить хоть один символ, то CRC сразу меняется. Это своего рода защита от злоумышленников, в файле приходят денежные суммы с банка. А что за криптографические хэш-функции (MD5, SHA), где их взять, я недавно стал программировать на C# |
|||
|
||||
| adLucem |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 94 Регистрация: 17.4.2007 Где: Украина, Донецк Репутация: 4 Всего: 5 |
Статья о MD5 хэшах в Wikipedia Как использовать:
|
|||
|
||||
| Exception |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 4525 Регистрация: 26.12.2004 Репутация: 29 Всего: 186 |
||||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |