ファイルを暗号化することにより、「情報漏えい対策」や「誤送信対策」になるのは暗号が十分な強度を持つ場合のみです。暗号が短時間で解析されてしまうのでは対策の意味をなしません。
しかし、暗号化ZIPには暗号の強度が十分でないという問題や、条件により暗号の解読が可能になる脆弱性が存在します。
暗号化ZIPの2つの方式
ZIPの暗号方式としては、ZipCryptoとAES-256の2つの方式があります。(他にもTripleDESなどもあるのですがほとんど使われていません。)しかし、組織間のやりとりで使われるのはZipCryptoがほとんどです。ZipCryptoはWindows標準の機能で復号することができますが、AES-256はWindows標準では復号できないため、サードパーティの圧縮・展開ソフトが必要になります。組織によっては勝手にソフトをインストールできないように制限されている場合もあり、受信側が確実に復号できるとは限りません。

図1 圧縮・展開ソフトがサポートする暗号化ZIPの形式
また、日本で使用率の高い圧縮・展開ソフトのLhaplusでは、ZipCryptoでの暗号化 のみに対応しており、AES-256での暗号化はできません。(AES-256で暗号化されたファイルの復号は可能)AES-256での暗号化に対応した製品でも多くはZipCryptoがデフォルトとなっており、設定等で暗号方式を指定しなければAES-256になりません。このような理由から現在でもZipCryptoが主流となっています。
暗号化ZIPの強度の問題
ZipCryptoは1993年に仕様策定された古い形式で、現在では暗号強度が十分とは言えなくなっています。

図2 暗号形式毎のパスワード解析速度の比較
図2は、ZIP(ZipCrypto)、ZIP(AES-256)、PDF PDF(PDF 1.7 Level 8)、Office 2010、Office 2013のそれぞれの暗号化フォーマットについて、AWSのGPUインスタンスp3.2xlarge(NVIDIA Tesla V100 GPU 1個)上でGPUでの解析に対応したパスワード解析ソフトhashcatを動作させて、1秒間に何件のパスワードを解析できるかを比較したものです。解析できる件数が多いほど高速に解析できる。つまり、それだけ弱い暗号形式と言うことができます。この結果を見ると、ZIP(ZipCrypto)はOffice 2013の暗号方式より約16万倍高速に解析できることがわかります。

図3 暗号形式毎の総当り攻撃の所要時間
図3は、図2での解析件数より、パスワードの文字種と桁数ごとの総当り攻撃の所要時間を算出したものです。所要時間は、総当り全件が完了するまでの時間です。使用しているパスワードを解析するのに必ずこれだけの時間が掛る訳ではないことに注意して下さい。総当たりの初期の段階でパスワードが判明してしまう可能性もあります。また、図2の検証で利用したGPUインスタンスの利用料金は1時間当り約3ドル程度ですが、より費用を掛けて高速なGPUを複数並列に使用した場合はこれ以上の速度で解析可能です。