
GnuPGのシェルスクリプトアドオンで、Argon2メモリハードKDF、SHA-384イテレーション、およびカスケード型AES-256/CAST5暗号を用いて対称暗号を強化し、ハードウェア耐性のあるセキュリティを実現します。
VSHGは、GnuPGの標準的なs2k鍵導出関数に対するメモリ/ハードウェア耐性の強化と、対称暗号化のための簡素化されたインターフェースを提供することを目的としています。

VSHG(Very secure hash generator)は、GnuPG(Gnu Privacy Guard)のスタンドアロンアドオンです。 シェルスクリプトとして書かれており、Unix/Linuxのファイルシステムとコマンドを基に設計されています。 VSHGは、パスワードにsha384とArgon2ハッシュ関数を使用し、最終的な暗号化にAES-256-CFB + CAST5-128-CFBをカスケードで使用します。
また、標準のsha384反復回数として800回、Argon2i + dに対して15回&500回の反復を使用します。
真の乱数12バイトのソルトを使用します。 そのため、パスフレーズが非常に弱くても、それを強化するのでもう心配する必要はありません。
VSHGは、反復の最後のハッシュをGnupgのセッションキーとして使用します。 また、各ファイルに対して自動検出機能を提供するため、ソルトや反復回数を覚えておく必要はありません。
オプションで、認証方法としてキーファイルを使用できます。
VSHGは暗号化されたファイルごとに真の乱数ソルトを使用するため、パスフレーズは常に最低12バイトの強度を持ちます。 異なるファイルに同じパスワードを2度使用することもできます。 VSHGを非常に安全にしているのは反復です。 800回の反復は、文字列の出力がその出力で800回ハッシュされることを意味します。 反復が多いほど安全性が高まります。 正しいパスフレーズを持っていても、正しい反復回数がなければ復号できません。
VSHGは、メモリハードな鍵導出関数の最も先進的な形式であるArgon2iとArgon2dを使用しています。すでに反復された鍵は、合計515回Argon2を通過し、それによって鍵導出関数の最大の脅威、すなわちグラフィック処理ユニット、フィールドプログラマブルゲートアレイ、特定用途向け集積回路(GPU、FPEGA、ASIC)に対する耐性を確保します。
実際の暗号化は、Gnupgで可能な最高レベルのセキュリティで実行されます。
-文字列から鍵への変換(s2k)ハッシュアルゴリズム(GnupgのKDF)は、sha1からsha512に強化されました。
-s2kモードは3に設定されました。これは8ビットのソルトが適用され、その後反復されることを意味します。
-s2kカウントは65011712に設定されました。これは可能な限り最大の反復回数です。
-s2kアルゴリズムはAES256とCAST5がカスケードで設定されました。
AES 256で暗号化されたファイルは安全に削除され、AES256(Cast5())で暗号化されたファイルのみが出力されます。
sudo wget https://github.com/RichardRMatthews/VSHG/archive/1.4.tar.gz
またはリポジトリをクローン
git clone https://github.com/RichardRMatthews/VSHG.git
sudo git clone https://github.com/neurobin/shc.git
cd shc
sudo ./shc -f -r /etc/VSHG/executable/src/VSHG_1.4.sh
sudo gcc /etc/VSHG/executable/src/VSHG_1.4.sh.x.c -O /usr/bin/VSHG
sudo VSHG
sudo tar -xf VSHG-1.4.tar.gz
sudo chmod +x VSHG_1.4.sh
sudo ./VSHG_1.4.sh
コードはMITライセンスの下で配布されています。