The OpenNET Project / Index page

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



Индекс форумов
Составление сообщения

Исходное сообщение
"Сбои в системах сборки из-за изменения контрольных сумм архи..."
Отправлено Аноним, 03-Фев-23 19:53 
> архиватор, который дает одинаковые контрольные суммы

Я подозреваю тебя тут кусают в зад твои вольные формулировки. Архиватор не даёт контрольных сумм, контрольные суммы считаются другими утилитами. Что архиватор может дать этим утилитам -- это совпадение файла бит-в-бит. Но смысла тогда в настройках сжатия, если вне зависимости от них, результат не меняется?

Внешние утилиты могут считать контрольные суммы так, чтобы они оставались бы неизменными вне зависимости от архиватора. Можно контрольную сумму считать распаковывая, прогоняя через tar или любой другой сериализатор, чтобы объединить всё в один блоб, и считать sha512 по результату. Но чтобы этот блоб получался одинаковым бит-в-бит, придётся всё распаковать на диск, после чего упаковать приводя к каноническому виду. Это не получится делать потоковым пайплайном, потому что архиватор может в разном порядке файлы упаковывать, и надо сначала распаковать, потом упаковать, упорядочивая файлы (включая всякие тонкости, типа симлинков) канонично.

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

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
  Введите код, изображенный на картинке: КОД
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



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

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