私は暗号化についてほとんど知りませんが、私の目標は基本的に文字列を解読することです。私は AES(128) キーを受け取りました。
ただし、暗号化された文字列から IV を取得する必要があります。これは最初の 16 ビットです。
詳細については、セールスフォースのドキュメントを参照してください(説明が間違っていた場合)
指定されたアルゴリズムと秘密鍵を使用して blob clearTextを暗号化します。Salesforce で初期化ベクトルを生成する場合は、このメソッドを使用します。暗号化された BLOB の最初の 128 ビット (16 バイト) として格納されます。
http://www.salesforce.com/us/developer/docs/apexcode/Content/apex_classes_restful_crypto.htm (encryptWithManagedIV)
IVを取得するために、私はこのようなことを試しました(ただし、それが正しいとは思いません):
public string retrieveIv()
{
string iv = "";
string input = "bwZ6nKpBEsuAKM8lDTYH1Yl69KkHN1i3XehALbfgUqY=";
byte[] bytesToEncode = Encoding.UTF8.GetBytes(input);
for(int i = 0; i <= 15; i++){
iv += bytesToEncode[i].ToString(); ;
}
return iv;
}
(入力がハードコードされており、パラメーター化されていないという事実は無視してください。テスト目的の方が簡単です)
次に、この質問のベストアンサーを使用して文字列を復号化します