The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
Алгоритмы вычисление контрольной суммы., !*! ufobject, 23-Ноя-06, 14:15  [смотреть все]
Приветствую вас, онлайн-духи Ж)! Есть задача запихать модуль вычисления контрольной суммы в некую, не особо шуструю, железяку. Сия железяка должна вычислять эту самую контрольную сумму "на лету" при копировании и записи (на нее/с нее), причем максимально быстро... Так как с этими алгоритмами вычисления контрольных сумм я никогда дело не имел и слабо представляю сколько их всего существует, прошу помощи у вас. Подскажите, где бы мне почитать статейку грамотную да кодов для тестирования скорости набрать?
Заранее благодарю вас, уважаемые линуксойды.
P.S. особо интересуют MD5 HASH MD4
  • Алгоритмы вычисление контрольной суммы., !*! perece, 15:58 , 23-Ноя-06 (1)
    >Приветствую вас, онлайн-духи Ж)! Есть задача запихать модуль вычисления контрольной суммы в
    >некую, не особо шуструю, железяку. Сия железяка должна вычислять эту самую
    >контрольную сумму "на лету" при копировании и записи (на нее/с нее),
    >причем максимально быстро... Так как с этими алгоритмами вычисления контрольных сумм
    >я никогда дело не имел и слабо представляю сколько их всего
    >существует, прошу помощи у вас. Подскажите, где бы мне почитать статейку
    >грамотную да кодов для тестирования скорости набрать?
    >Заранее благодарю вас, уважаемые линуксойды.
    >P.S. особо интересуют MD5 HASH MD4
    если железка не шустрая, то пусть они вас особо не интересуют. MD2 или даже CRC - это ваш удел

    \^P^/

  • Алгоритмы вычисление контрольной суммы., !*! Boris Polevoy, 18:24 , 23-Ноя-06 (2)
    >Приветствую вас, онлайн-духи Ж)! Есть задача запихать модуль вычисления контрольной суммы в
    >некую, не особо шуструю, железяку. Сия железяка должна вычислять эту самую
    >контрольную сумму "на лету" при копировании и записи (на нее/с нее),
    >причем максимально быстро... Так как с этими алгоритмами вычисления контрольных сумм
    >я никогда дело не имел и слабо представляю сколько их всего
    >существует, прошу помощи у вас. Подскажите, где бы мне почитать статейку
    >грамотную да кодов для тестирования скорости набрать?
    >Заранее благодарю вас, уважаемые линуксойды.
    >P.S. особо интересуют MD5 HASH MD4

    Основной вопрос: для чего расчитывать контрольную сумму?
    - проверка целостности коротких блоков данных (сетевых пакетов): CRC16, CRC32, in_cksum;
    - проверка целостности больших файлов: функции хеширования md5, sha1 и т.д. и т.п.

    Защита от подмена данных - хеши, защита от ошибок при передачи данных - контрольные суммы.

    • Алгоритмы вычисление контрольной суммы., !*! ufobject, 15:18 , 24-Ноя-06 (3)
      >>Приветствую вас, онлайн-духи Ж)! Есть задача запихать модуль вычисления контрольной суммы в
      >>некую, не особо шуструю, железяку. Сия железяка должна вычислять эту самую
      >>контрольную сумму "на лету" при копировании и записи (на нее/с нее),
      >>причем максимально быстро... Так как с этими алгоритмами вычисления контрольных сумм
      >>я никогда дело не имел и слабо представляю сколько их всего
      >>существует, прошу помощи у вас. Подскажите, где бы мне почитать статейку
      >>грамотную да кодов для тестирования скорости набрать?
      >>Заранее благодарю вас, уважаемые линуксойды.
      >>P.S. особо интересуют MD5 HASH MD4
      >
      >Основной вопрос: для чего расчитывать контрольную сумму?
      >- проверка целостности коротких блоков данных (сетевых пакетов): CRC16, CRC32, in_cksum;
      >- проверка целостности больших файлов: функции хеширования md5, sha1 и т.д. и
      >т.п.
      >
      >Защита от подмена данных - хеши, защита от ошибок при передачи данных
      >- контрольные суммы.

      вообще онтрольная сумма нужна для провеки подленности скопированного файла. Должно это происходить следующим образом - юзер копирует файл на некий носитель, файл может быть любого размера. В процессе копирования необходимо просчитывать контрольную сумму файла, причем максимально быстро, чтоб не тормозить процесс копирования слишком сильно. Я расчитываю реализовать просчет алгоритмом MD2. Но тут всплыла еще одна проблемка - дело в том, что для просчета контрольной суммы требуется весь файл целиком, а в данном случае я могу просчиьывать "на лету" только фрагмент копируемого файла (так как заранее не известно размер файла да и достаточный буфер выделить не смогу если большой файл будет). Получается что если я буду брать размер фрагмента в 1Кб, а копироваться будет файл на 10Кб, у меня будет 10 различных контрольных сумм, а мне нужна 1 сумма на весь файл. Как бы мне реализовать быстрый поточный подсчет? Может есть еще какие алгоритмы более подходящие для решения этой задачи, чем MD2?


      • Алгоритмы вычисление контрольной суммы., !*! perece, 11:53 , 27-Ноя-06 (4)
        >вообще онтрольная сумма нужна для провеки подленности скопированного файла. Должно это происходить
        >следующим образом - юзер копирует файл на некий носитель, файл может
        >быть любого размера. В процессе копирования необходимо просчитывать контрольную сумму файла,
        >причем максимально быстро, чтоб не тормозить процесс копирования слишком сильно. Я
        >расчитываю реализовать просчет алгоритмом MD2. Но тут всплыла еще одна проблемка
        >- дело в том, что для просчета контрольной суммы требуется весь
        >файл целиком, а в данном случае я могу просчиьывать "на лету"
        >только фрагмент копируемого файла (так как заранее не известно размер файла
        >да и достаточный буфер выделить не смогу если большой файл будет).
        >Получается что если я буду брать размер фрагмента в 1Кб, а
        >копироваться будет файл на 10Кб, у меня будет 10 различных контрольных
        >сумм, а мне нужна 1 сумма на весь файл. Как бы
        >мне реализовать быстрый поточный подсчет? Может есть еще какие алгоритмы более
        >подходящие для решения этой задачи, чем MD2?
        считай дайджест поблочно (т.е. каждого куска 8К скажем, или сколько у тебя там промежуточный буфер размером, однако для MD2 желательно кратно 16 байт, чтобы не было lead-out) и делай xor на "накопленый" (инициализируешь нулями)

        \^P^/




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру