- ベストアンサー
暗号化ソフトのファイルサイズを減らす方法について
- 暗号化ソフトのファイルサイズを減らす方法について調査しました。
- 暗号化ソフトはファイルを事前に圧縮して暗号化の計算量を減らす方法があります。
- また、暗号化アルゴリズム自体がファイル圧縮を自然に行う場合もあります。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
仮説1・・・として理解していても、それほど大きな間違いではないです。 暗号化ロジックを適用するとき、空白など、同じコードが連続していると、 そこから暗号が容易に解かれる可能性が高いので、なるべくデータに その手の「穴」が無いように処理しているんです。 この手の暗号化は「1文字を1文字に対応させる」ような単純な方法は 使っていませんので、結果として「圧縮ソフト」と同じ動きをしてしまい、 データ容量が減るんです。 ちなみに、実際よくつかわれるZip圧縮には、暗号化ができるロジックも 組み込まれています。要は「同じようなことをしてる」んで、こんな商品も あるんです。 https://www.hde.co.jp/hsm/zip/
その他の回答 (2)
- hanabutako
- ベストアンサー率54% (492/895)
メールの暗号化というと、使われているプロトコルはOpenPGPやSMIMEだと思います。 https://tools.ietf.org/html/rfc3851 (SMIME) https://tools.ietf.org/html/rfc4880 (OpenPGP) どちらもメッセージの圧縮についての説明がプロトコルに含まれていますが、暗号化するデータを圧縮してもいいというだけのことです。暗号化の前に圧縮をしないといけないこと以外は特に決まっていないと思います。 以下仮説に応えます。 > 仮説1:暗号化の高速化のために、事前にファイルを圧縮してしまう。 圧縮にかかるコストと暗号化のためのコストのどちらが大きいかという問題はありそうですが、圧縮しておけば暗号化しないといけない量は減ります。圧縮の方法、暗号化の方式によっては圧縮した方が高速にあることがあるでしょう。 > 仮説2;私の誤解で暗号化アルゴリズムはそもそもファイル圧縮が自然におきる様なアルゴリズムである 違います。暗号化のためにパディングしたり、暗号化についての情報をつけたりする分容量が増えることはあっても減ることはありません。 > 仮説3:単純に使い勝手が良いから あると思います。昔は今ほど帯域がなかったので、容量を減らせばそれだけ通信時間が減ったと思います。それは他社製品からの差別化となったでしょう。 > 仮説4:ユーザーを自社製品に囲い込むため あると思います。「圧縮機能あり」とした方がカタログ上の見栄えはよくなりますよね。 ただ、ある程度効果がある圧縮の方法やフォーマットを誰でも使える以上、自社フォーマットに変換して囲い込みをするのは現実的ではないと思います。
お礼
そうです。PGPのソフトをよく見かけていました。 仕様のなかに圧縮をしてもいいと書いてあるならそりゃ圧縮をしたくなりますよね。 開発者のエゴもあるでしょうが。 勉強になりました。ありがとうございます。
- Gotthold
- ベストアンサー率47% (396/832)
NTFS暗号化や、GnuPG、TrueCryptなどは圧縮しませんよ。 あなたが見たソフトが圧縮するソフトばかりだったと言うだけです。 (メールに使うのだから通信量は少なくした方が良いと開発者が考えたのでしょうけど。) 余談ですが、暗号化前の圧縮は、場合によっては脆弱性を生むことがあります。 以下のCRIME攻撃などが有名。(メールで同じ事ができるわけでは無いですが。) SSL暗号を無効化する仕組み – BREACH, CRIME, etc | yohgaki's blog http://blog.ohgaki.net/breach-attack-explained-why-and-how
お礼
余談、おもしろかったです 正直この攻撃方法も理解した瞬間、どこまでも面倒臭いことをと感じてしまいました。
お礼
ありがとうございます。かなり専門的な項目を質問をしたはずなのですが。 お早い回答でした。 ファイルを短くしつつ、ランダムさを増すのならランレングス符号化とかに近いのかな? zip圧縮に暗号化が付いているのは使ったことがあるので心当たりはありましたが 暗号化は完全にオプションで圧縮とは別の仕組みがあるものだと思っていました。 大変勉強になりました。ありがとうございます。