170 похожих чатов

Валидировать на что?

25 ответов

32 просмотра

На уникальность.

Алексей- Автор вопроса
Максим Ильченко
На уникальность.

это обычный несолёный хэш файла

Алексей
это обычный несолёный хэш файла

Ну так вот ты через постам передал файл я его принял снял хеш оригинала. Потом ты полез через мобильное приложение. Так же передал его на сервер но для сервера это уже будет другой файл так как приложение его уже сжало. А если бы мне приложение подсказало бы хеш оригинала я бы тогда точно понимал что этот файл у меня уже есть.

Алексей- Автор вопроса
Максим Ильченко
Ну так вот ты через постам передал файл я его прин...

отправляй оригинальный хэш вместе со сжатым файлом, соль тут бесполезна абсолютно

Максим Ильченко
Ну так вот ты через постам передал файл я его прин...

это зависит от алгоритма сжатия. если сжатие с необратимыми потерями, как условный jpeg, то у тебя проблема, Хьюстон, т.к. после сжатия семантически это уже другой файл.

Все правильно. По этому и создается проверка. С хешем файла до сжатия.

откуда сервер знает хэш файла до сжатия?

Максим Ильченко
Все правильно. По этому и создается проверка. С хе...

просто храни в системе два хеша. хеш без сжатия, хеш после сжатия. и ищи в обоих колонках.

The Zazaeil
просто храни в системе два хеша. хеш без сжатия, х...

Тогда все должны 100% одинаково сжимать файлы. Боюсь это сложнее чем просто строку передать.

Максим Ильченко
Тогда все должны 100% одинаково сжимать файлы. Бою...

у тебя нет заранее известных ограничений как чего можно, а как чего нельзя сжимать?

Максим Ильченко
Он будет лежать с самс файлом.

ничего не понимаю 🙃 у вас есть файл на клиенте, вы его хотите сохранить в сжатом виде на сервере и с помощью чексуммы дедуплицировать. Насколько я понял, вы хотите сделал ответственным за сжатие и чексумму мобильное приложение, чтобы не тратить ресурсы сервера. Но если ваш сервер принимает чексумму и файл от клиента: 1. как вы проверите валидность чексуммы не посчитав её на сервере? 2. как вы поймёте прислали ли вам файл в сжатом или несжатом виде?!

Roman Sharkov
ничего не понимаю 🙃 у вас есть файл на клиенте, в...

1. никак. это невозможно. 2. это возможно, но не нужно.

Алексей- Автор вопроса
Roman Sharkov
ничего не понимаю 🙃 у вас есть файл на клиенте, в...

ну второй пункт: само приложение пришлёт признак того что файл сжат

Максим Ильченко
Узко мыслите)

ну так расширьте мне кругозор, мне аж любопытно стало как вы с помощью шифрования пытаетесь чексумму и факт сжатия проверить

Roman Sharkov
ну так расширьте мне кругозор, мне аж любопытно ст...

осеннее обострение просто полным ходом.

The Zazaeil
1. никак. это невозможно. 2. это возможно, но не н...

кстати про сжатие, я такого ещё не делал, но действительно ли можно распознать факт сжатия? предполагаю разные алгоритмы создают некоторые header'ы в самом сжатом файле по которым можно предположить какой алгоритм использовался но опять-же такое можно превратить в условный zip-bomb

Roman Sharkov
кстати про сжатие, я такого ещё не делал, но дейст...

можно по заголовкам. многие протоколы сжатия в байты в начало или в конец зашивают метаинфу.

The Zazaeil
можно по заголовкам. многие протоколы сжатия в бай...

но это же легко подделать и подсунуть серверу бомбу

Roman Sharkov
но это же легко подделать и подсунуть серверу бомб...

как и любой другой протокол. в данном случае "бомбо" - это просто ошибка при попытки разжать обратно, не более.

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта