クラウド内のファイルを暗号化する方法

少し前に、ハブを読んでいるときに、クラウドにアップロードされたファイルを暗号化する必要性について著者が話している記事に出会いました。 クラウドストレージサービスを提供する「おじさん」は、自分の裁量でファイルを使用する機能を持っていると考えているだけのことを嫌う人なので、それらの暗号化について考え始めました。 クラウドが無料で提供されるという事実は、これらの考えを促しました。 当然、パスワード付きのアーカイブを使用することは、ダウンロードされた多数のファイルに関して、非常に不便な決定でした。 長い間、私は自分自身のために特別なユーティリティを作成したのはこの目的のためでしたが、今、質問をした場合、それについて話すことにしました。



クラウドストレージを使用する最初の段階で、単純なXOR暗号化を使用したいと考えました。 このアルゴリズムの実装は複雑ではありません(Friedman A.、Klander L. et al .: "C / C ++。Archive of Programs"-M。:CJSC "Publishing House BINOM"、2001-640 pp。)深刻な計算は必要ありません。 ただし、この暗号化方式にはプラスが1つしかありません。実行は比較的高速です。 出力には、その内容が素人だけを怖がらせるファイルがあります。 XOR暗号化は、一見すると思われるほどの保護を提供しません。 まず、1つのキーで多くのファイルを暗号化するのが楽しい場合、邪悪な叔父は、このシリーズのファイルの少なくとも1つのオリジナルを取得して、キーを開き、一連のファイル全体を復号化するだけで十分です:



キー= 01101001

テキスト= 10010001

エンコード= 01101001 ^ 10010001 = 11111000



キー=エンコード^テキスト= 11111000 ^ 10010001 = 01101001



一方、アルゴリズムの数学的な記述は単純すぎます。これに関連して、たとえばここに記述されている元のファイルがなくてもキーを開くことができます



この点で、この機能は使用しませんが、完全を期すためにソースへのリンクを投稿します。 最も単純でかなり暗号化されたアルゴリズムの1つは、AES-256標準です。 彼については多くの論争がありましたが、米国では州の秘密に関連する情報を暗号化することが許可されていました( Wikipediaアーカイブを参照)。今日、このアルゴリズムを妥当な時間内に攻撃する方法はありません。 ある親切な人がすでにこのアルゴリズムのソフトウェア実装に取り​​組んでおり、彼が彼のベストプラクティスを自由に使用できるようにしています( 開発者のサイト )。 このソリューションを使用することをお勧めしました。 ユーティリティソース:



github.com/asu2010/crypt-XORエンコーダー/デコーダー

github.com/asu2010/crypt_AES-256-AES-256-エンコーダー/デコーダー



どちらのプログラムも(もちろん)コンソールであり、Windows用に作成されています。 プログラムには、パスワードジェネレータプログラムによって作成されたデフォルトキーがあります。 DEFAULT_KEYマクロに格納されているため、簡単に変更できます。 使いやすくするために、プログラムの実行可能ファイルに「crypt ++。Exe」という名前を付け、このファイルへのパスをPATH環境変数に追加しました。 CMDからのデフォルトのキー暗号化は次のとおりです。



>crypt++ example.jpg enc
      
      







復号化:

 >crypt++ enc_example.jpg dec
      
      







別のキーを使用する必要がある場合は、enc / decパラメーターの後に指定できます。

 >crypt++ photo.jpg enc Ajk45BZ972pr
      
      







おそらく、このツールはあまり便利ではありませんが、絶望的ではありません。 小さなコウモリのニックネームを書きましょう。

 @echo off echo      /   echo     : set /P FoldPath= cd %FoldPath% for /f %%i in ('dir %FoldPath%\*.* /b') do ( crypt++ "%%i" enc del "%%i" )
      
      







これで、フォルダ内のファイルの配列を暗号化して、元のファイルを削除できます。 同じ方法でファイルを復号化するには、同様のコマンドラインを記述し、crypt ++がdecパラメータで呼び出されます。 これらの司令官では、覚えておく必要のないパスワードを指定できます。 このバッチファイルへのパスはPATH変数で指定することもでき、多数のファイルに対してユーティリティを使用する方が便利です。 さて、公平に、不快な瞬間についてお話しします。







強い欲求が現れた場合、最初の3つの問題は完全に解決できます。



これらのツールは、個人使用のために2日間不注意にコード化されて開発されました。 ほぼ1年間使用していますが、特に不便を感じることはありません。



All Articles