LINUX.ORG.RU
решено ФорумTalks

шифрование архивированного файла


0

1

Понадобилось мне передавать данные через фтп и соответственно встал вопрос защиты этих данных.

У меня сейчас есть 2 варианта:

1. заархивировать(deflate), а потом зашифровать(AES)

2. наоборот, сначала зашифровать, а потом архивировать

проверочные данные текстовые, 18кб

Во втором случае получается что зашифрованный файл архиватор не берет и на выходе что с архивацией, что без те же 18кб. А вот в первом случае deflate сжимает текст до 3кб, а потом уже шифруются 3кб и на выходе имеем в 6 раз меньший файл.

вроде все очевидно, но задумался я вот о чем: а не теряю ли я сильно в криптостойкости, когда предварительно архивирую?

//в девелопмент вроде ни о чем, в другие разделы тем более, поэтому в торксах. если не прав - перенесите.

★★★★★

Последнее исправление: Loki13 (всего исправлений: 1)

не теряю ли я сильно в криптостойкости, когда предварительно архивирую?

Нет.

Gotf ★★★
()
Ответ на: комментарий от CYB3R

NSA маловероятно что заинтересуется этими данными. а алгоритм я что нашел заимплеменченное уже на сях на кодпрожекте, то и пользовать начал. самому имплементить лениво, да и не настолько это важные данные.

Loki13 ★★★★★
() автор топика
Ответ на: комментарий от Gotf

т.е. если гипотетическому злоумышленнику будет известен алгоритм архивирования данных перед шифрованием, то ему это ничем не поможет для взлома шифра?

Loki13 ★★★★★
() автор топика
Ответ на: комментарий от Loki13

Если алгоритм шифрования достаточно стойкий, то не слишком поможет. А если неизвестны алгоритм и параметры шифрования, то вообще не поможет.

Gotf ★★★
()

В тесте на Cryptography I (coursera) был такой вопрос. ЕМНИП правильный ответ был сначала шифрование потом архивация, т.к. атакующий ничекго не должен знать об исходных данных. На практике я думаю, что это не так уж и опасно.

zinfandel ★★
()

вроде все очевидно, но задумался я вот о чем: а не теряю ли я сильно в криптостойкости, когда предварительно архивирую?

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

А вот после шифрования пытаться архивировать бессмысленно. Шифртексты практически не сжимаются.

в девелопмент вроде ни о чем, в другие разделы тем более, поэтому в торксах. если не прав - перенесите.

А я-то думал, чего раздел «безопасность» пустует...

segfault ★★★★★
()

проверочные данные текстовые, 18кб

А вот тут лучше не городить велосипеды, а использовать проверенные методы. Например, шифровать с MAC-ом (режимы CCM и GCM).

segfault ★★★★★
()
Ответ на: комментарий от Gotf

А если неизвестны алгоритм и параметры шифрования, то вообще не поможет.

Какие параметры? Ключ? Думаю, и так понятно, что его следует держать в секрете. А вот неизвестность алгоритма вряд ли сильно затруднит ему жизнь - перебор по всем известным алгоритмам проблем не составляет.

segfault ★★★★★
()

вроде все очевидно, но задумался я вот о чем: а не теряю ли я сильно в криптостойкости, когда предварительно архивирую?

не теряешь.

dikiy ★★☆☆☆
()

Во втором случае получается что зашифрованный файл архиватор не берет и на выходе что с архивацией, что без те же 18кб.

Шифрование — псевдослучайная перестановка. У хорошего алгоритма результат должен статистически мало отличаться от случайного шума. На что ты вообще рассчитывал, пытаясь сжать зашифрованный файл?

Я считаю, что нужно сначала сжимать, а потом шифровать.

i-rinat ★★★★★
()
Последнее исправление: i-rinat (всего исправлений: 1)
Ответ на: комментарий от segfault

А я-то думал, чего раздел «безопасность» пустует...

Даже забыл что такой раздел есть ;)

Loki13 ★★★★★
() автор топика

Всем спасибо за ответы. Буду архивировать, а потом шифровать.

Loki13 ★★★★★
() автор топика
Ответ на: комментарий от Loki13

таки сжимать и шифровать // архив - это тот же тарболл несжатый.

jeuta ★★★★
()
Ответ на: комментарий от Gotf

Ключ?

Его длина.


Если не брать во внимание некоторые поточные шифры, то возможных длин ключей для каждого шифра бывает немного - обычно от 1 до 3. Так что это тоже не больно важная информация.

segfault ★★★★★
()
Ответ на: комментарий от zinfandel

Не так, специально сейчас сходил проверил. Правильный ответ — Compress then encrypt, и пояснение к нему: Ciphertexts tend to look like random strings and therefore the only opportunity for compression is prior to encryption.

W0lfX
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.