Frantishek
И да и нет. Да поскольку есть риск нарушения целостности потока данных, нет если используются коды коррекции ошибок типа кодов Ридда-Соломона , Хемминга, или подобных им по корректирующим свойствам. Но использование кодов коррекции ошибок автоматически означет ввдение избыточности, и мы встаём пред иной проблемой - проблемой выбора баланса "надёжность - потери полезной ёмкости накопителя". А учитывая, тот факт, что он имеет конечную ёмкость, при использовании кодов коррекции мы всегда будем иметь соотношение "данные/ёмкость" меньшие единицы. Правда есть один единственный способ увеличения данного соотношения не прибегая к архивации - методы группового кодирования. Их суть в том, что мы используем код с меньшей длинной единичного информационного символа (кодового слова) кодирующего сразу группу символов стандартного блочного кода. Правда есть и второй подход (в своё время проданный одим из сотрудников нашей базовой кафедры одной крупных фирм вместе с моими рабочими материалами): мы используем вместо групповых вероятностные коды Хафмена. Эти коды строяться по принципу частотного анализа большого инфрмационного массива для конкретного естественного языка. Их применение позволяет резко уменьшить среднюю длинну кодового слова за счёт того, что более часто встречающиеся символы мы кодируем более коротким кодовым словом. Длинна кодового слова увеличивается по мере того, как частота встречи символа снижается. Но, выплывает иная проблема, с ходу не специалисту не видимая - как распознать длинну каждого кодового слова? В блочном коде всё ясно, длинна фиксированная, а здесь? Поэтому используется таблица длин кодовых слов. Часто данная таблица применяется в комбинации с разбивкой кода на "зоны" - участки содержащие N кодовых слов, где N равно числу входов в таблице длин. Кодовый блок и таблица длин для исключения ошибок защищаются корректирующим кодом. Данный метод позволяет достичь двух результатов: уменьшения средней длинны кодового слова и увеличение надёжности кода, но не в смысле его криптостойкости, а в плане устойчивости к ошибкам устройств хранения данных, а так же к помехам в цепях питания и каналах связи. В своё время я делал такой код и получил среднюю длинну кодового слова 5,43 бит при блочном коде с длинной 8 бит. В итоге информационная ёмкость носителя может быть увеличена 1,47 раза при более высокой стойкости к ошибкам. А это и ответ на твой вопрос, и путь к увеличению криптостойкости контейнера - можно использовать более криптостойкий алгоритм вносящий большую избыточность в поток без снижения удельной информационной ёикости. Доказательства математических основ этих утверждений достаточно объёмны и сложны, и я позволю себе их опустить, но обычно такие преобразования кодов делаются аппаратно для сокращения времени обработки. Кстати, именно на подобных принципах постороены цифровые ленточные накопители - стриммеры. За счёт аппаратной компрессии эффективный объём носителя в них практически удваивается. Пример - COMPAQ/SONY SDT-9000 - 12 Gb без сжатия, и 24 Gb с аппаратным сжатием данных на стандартной DDS-3 4mm DAT кассете.
А ответ на вопросы 2) и по поводу шифрования отдельных файлов 3) и открытия их на другой системе я бы сформулировал так:
2) При шифровании отдельных файлов возникает проблема надёжного хранения ключа дешифровки к ним и излишней избыточности, смотрим анализ выше;
3) Использование средств криптозащиты которые можно открыть где угодно зная только параль доступа? По моему такие "средства криптозащиты" не нужны. Ведь применение любого защитного механизма базируется на простой идее: максимального увеличения времени необходимого для несанкционированного доступпа к информации так что бы она либо безнадёжно устарела к моменту взлома защиты, либо стала известа, либо её ценность для злоумышленника по иным причина к моменту достижения им успеха стала бы столь малой, что сам факт достижения успеха станет невыгоден. В идеально случае время для взлома защиты с целью доступа к защищённым данным должно быть бесконечным.
А вопрос 3) предполагает резкое снижение порога доступности данных и идёт вразрез с основным принципом криптозащиты и делает её применение бессмысленной.
И да и нет. Да поскольку есть риск нарушения целостности потока данных, нет если используются коды коррекции ошибок типа кодов Ридда-Соломона , Хемминга, или подобных им по корректирующим свойствам. Но использование кодов коррекции ошибок автоматически означет ввдение избыточности, и мы встаём пред иной проблемой - проблемой выбора баланса "надёжность - потери полезной ёмкости накопителя". А учитывая, тот факт, что он имеет конечную ёмкость, при использовании кодов коррекции мы всегда будем иметь соотношение "данные/ёмкость" меньшие единицы. Правда есть один единственный способ увеличения данного соотношения не прибегая к архивации - методы группового кодирования. Их суть в том, что мы используем код с меньшей длинной единичного информационного символа (кодового слова) кодирующего сразу группу символов стандартного блочного кода. Правда есть и второй подход (в своё время проданный одим из сотрудников нашей базовой кафедры одной крупных фирм вместе с моими рабочими материалами): мы используем вместо групповых вероятностные коды Хафмена. Эти коды строяться по принципу частотного анализа большого инфрмационного массива для конкретного естественного языка. Их применение позволяет резко уменьшить среднюю длинну кодового слова за счёт того, что более часто встречающиеся символы мы кодируем более коротким кодовым словом. Длинна кодового слова увеличивается по мере того, как частота встречи символа снижается. Но, выплывает иная проблема, с ходу не специалисту не видимая - как распознать длинну каждого кодового слова? В блочном коде всё ясно, длинна фиксированная, а здесь? Поэтому используется таблица длин кодовых слов. Часто данная таблица применяется в комбинации с разбивкой кода на "зоны" - участки содержащие N кодовых слов, где N равно числу входов в таблице длин. Кодовый блок и таблица длин для исключения ошибок защищаются корректирующим кодом. Данный метод позволяет достичь двух результатов: уменьшения средней длинны кодового слова и увеличение надёжности кода, но не в смысле его криптостойкости, а в плане устойчивости к ошибкам устройств хранения данных, а так же к помехам в цепях питания и каналах связи. В своё время я делал такой код и получил среднюю длинну кодового слова 5,43 бит при блочном коде с длинной 8 бит. В итоге информационная ёмкость носителя может быть увеличена 1,47 раза при более высокой стойкости к ошибкам. А это и ответ на твой вопрос, и путь к увеличению криптостойкости контейнера - можно использовать более криптостойкий алгоритм вносящий большую избыточность в поток без снижения удельной информационной ёикости. Доказательства математических основ этих утверждений достаточно объёмны и сложны, и я позволю себе их опустить, но обычно такие преобразования кодов делаются аппаратно для сокращения времени обработки. Кстати, именно на подобных принципах постороены цифровые ленточные накопители - стриммеры. За счёт аппаратной компрессии эффективный объём носителя в них практически удваивается. Пример - COMPAQ/SONY SDT-9000 - 12 Gb без сжатия, и 24 Gb с аппаратным сжатием данных на стандартной DDS-3 4mm DAT кассете.
А ответ на вопросы 2) и по поводу шифрования отдельных файлов 3) и открытия их на другой системе я бы сформулировал так:
2) При шифровании отдельных файлов возникает проблема надёжного хранения ключа дешифровки к ним и излишней избыточности, смотрим анализ выше;
3) Использование средств криптозащиты которые можно открыть где угодно зная только параль доступа? По моему такие "средства криптозащиты" не нужны. Ведь применение любого защитного механизма базируется на простой идее: максимального увеличения времени необходимого для несанкционированного доступпа к информации так что бы она либо безнадёжно устарела к моменту взлома защиты, либо стала известа, либо её ценность для злоумышленника по иным причина к моменту достижения им успеха стала бы столь малой, что сам факт достижения успеха станет невыгоден. В идеально случае время для взлома защиты с целью доступа к защищённым данным должно быть бесконечным.
А вопрос 3) предполагает резкое снижение порога доступности данных и идёт вразрез с основным принципом криптозащиты и делает её применение бессмысленной.