私は、達成するのが難しいが頻繁に変更されるいくつかのプライベートデータを含むいくつかの文字列を含むモジュールを持っています。このスクリプトをさまざまなマシンに配置する必要があります。このスクリプトにアクセスして、出力を導出するために使用される情報を持っていない人がコードを読み取る可能性があります。
私は時々変化する文字列について本当に心配しているので、それらの値を安全な文字列として入力し、キーを使用して暗号化し、xml ファイルにダンプするスクリプトを作成することを検討しています。XML ファイルは、文字列を提供するために使用されます。そのデータを必要とするこのモジュールからコマンドを実行する人は、文字列を復号化できるようにキーを提供する必要があります。
これは基本的に私が期待していることですが、オブジェクトを扱います
$secure = Read-Host -AsSecureString
$encrypted = ConvertFrom-SecureString -securestring $secure -key somekey
$encrypted | Export-Clixml testing.xml
$imported = Import-Clixml testing.xml
$value = ConvertTo-SecureString -string $imported -key somekey
文字列は、AES とも呼ばれる Rijndael 暗号化アルゴリズムを使用して暗号化されることを理解しています。
スクリプトへのアクセス権が与えられた場合、xml ファイル内の暗号化されたキーを解読するには、どれだけの労力が必要でしょうか?