ConvertFrom-SecureString
將安全性字串轉換成標準加密字串。
語法
ConvertFrom-SecureString [-Key <Byte[]>] [-SecureString] <SecureString> [<CommonParameters>]
ConvertFrom-SecureString [[-SecureKey] <SecureString>] [-SecureString] <SecureString> [<CommonParameters>]
描述
ConvertFrom-SecureString Cmdlet 會將安全字串 (System.Security.SecureString) 轉換成標準加密字串 (System.String)。與安全字串不同,標準加密字串可以儲存在檔案中,以便日後使用。您可以使用 ConvertTo-SecureString Cmdlet,將標準加密字串轉換回安全字串格式。如果使用 Key 或 SecureKey 參數指定加密金鑰,則會採用 Rijndael 加密演算法。指定金鑰的長度必須是 128、192 或 256 位元,因為這些是 Rijndael 加密演算法所支援的金鑰長度。如果沒有指定金鑰,則會使用 Windows 資料保護 API (DPAPI) 來加密標準字串表示。
參數
-Key <Byte[]>
指定加密金鑰做為位元組陣列。
必要? |
false |
位置? |
named |
預設值 |
|
接受管線輸入? |
false |
接受萬用字元? |
false |
-SecureKey <SecureString>
指定加密金鑰做為安全性字串。安全性字串值會先轉換成位元組陣列再當作金鑰使用。
必要? |
false |
位置? |
2 |
預設值 |
|
接受管線輸入? |
false |
接受萬用字元? |
false |
-SecureString <SecureString>
指定要轉換成標準加密字串的安全性字串。
必要? |
true |
位置? |
1 |
預設值 |
|
接受管線輸入? |
true (ByValue) |
接受萬用字元? |
false |
<CommonParameters>
這個 Cmdlet 支援一般參數:-Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer 和 -OutVariable。如需詳細資訊,請參閱 about_Commonparameters.
輸入和輸出
輸入型別是可經由管道輸出至 Cmdlet 的物件型別。傳回型別則是 Cmdlet 所傳回的物件型別。
輸入 |
System.Security.SecureString 您可經由管道將 SecureString 物件輸出至 ConvertFrom-SecureString。 |
輸出 |
System.String ConvertFrom-SecureString 會傳回標準字串物件。 |
附註
若要根據命令提示字元中輸入的字元建立安全字串,請使用 Read-Host Cmdlet 的 AsSecureString 參數。
當您使用 Key 或 SecureKey 參數指定金鑰時,金鑰長度必須是正確的。例如,可以將 128 位元的金鑰指定為 16 位數的位元組陣列。同樣地,192 位元和 256 位元金鑰會分別對應至 24 和 32 位數的位元組陣列。
範例 1
C:\PS>$securestring = read-host -assecurestring
描述
-----------
這個命令會根據您在命令提示字元中輸入的字元建立安全字串。輸入命令之後,請輸入您要儲存為安全性字串的字串。此時會顯示星號 (*) 來代表您輸入的每個字元。
範例 2
C:\PS>$standardstring = convertfrom-securestring $securestring
描述
-----------
這個命令會將 $securestring 變數中的安全字串轉換成標準加密字串。產生的標準加密字串會儲存在 $standardstring 變數中。
範例 3
C:\PS>$key = (3,4,2,3,56,34,254,222,1,1,2,23,42,54,33,233,1,34,2,7,6,5,35,43)
C:\PS> $standardstring = convertfrom-securestring $securestring -key $key
描述
-----------
這些命令會使用 Rijndael 演算法,將 $securestring 變數中儲存的安全字串轉換成具有 192 位元金鑰的標準加密字串。產生的標準加密字串會儲存在 $standardstring 變數中。
第一個命令會將金鑰儲存在 $key 變數中。該金鑰是 24 位數的陣列,其中所有位數都小於 256。
因為每個位數都代表一個位元組 (8 位元),所以該金鑰的 24 位數總計為 192 位元 (8 x 24)。這是 Rijndael 演算法的有效金鑰長度。每個個別值都會小於 256,因為這是不帶正負號的位元組所能儲存的最大值。
第二個命令會使用 $key 變數中的金鑰,將安全字串轉換成標準加密字串。