ConvertFrom-SecureString
Převede zabezpečený řetězec na šifrovaný standardní řetězec.
Syntaxe
ConvertFrom-SecureString
[-SecureString] <SecureString>
[[-SecureKey] <SecureString>]
[<CommonParameters>]
ConvertFrom-SecureString
[-SecureString] <SecureString>
[-AsPlainText]
[<CommonParameters>]
ConvertFrom-SecureString
[-SecureString] <SecureString>
[-Key <Byte[]>]
[<CommonParameters>]
Description
Rutina ConvertFrom-SecureString
převede zabezpečený řetězec (System.Security.SecureString) na šifrovaný standardní řetězec (System.String). Na rozdíl od zabezpečeného řetězce lze šifrovaný standardní řetězec uložit do souboru pro pozdější použití. Šifrovaný standardní řetězec lze pomocí rutiny převést zpět do zabezpečeného ConvertTo-SecureString
formátu řetězce.
Pokud je šifrovací klíč určen pomocí parametrů Klíč nebo SecureKey , použije se šifrovací algoritmus AES (Advanced Encryption Standard). Zadaný klíč musí mít délku 128, 192 nebo 256 bitů, protože to jsou délky klíčů podporované šifrovacím algoritmem AES. Pokud není zadaný žádný klíč, použije se k šifrování standardní řetězcové reprezentace rozhraní API (DPAPI) windows Data Protection.
Příklady
Příklad 1: Vytvoření zabezpečeného řetězce
$SecureString = Read-Host -AsSecureString
Tento příkaz vytvoří zabezpečený řetězec ze znaků, které zadáte na příkazovém řádku. Po zadání příkazu zadejte řetězec, který chcete uložit jako zabezpečený řetězec. Zobrazí se hvězdička (*
) představující každý znak, který zadáte.
Příklad 2: Převod zabezpečeného řetězce na šifrovaný standardní řetězec
$StandardString = ConvertFrom-SecureString $SecureString
Tento příkaz převede zabezpečený řetězec v $SecureString
proměnné na šifrovaný standardní řetězec. Výsledný šifrovaný standardní řetězec je uložen v $StandardString
proměnné.
Příklad 3: Převod zabezpečeného řetězce na šifrovaný standardní řetězec s 192bitovým klíčem
$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)
$StandardString = ConvertFrom-SecureString $SecureString -Key $Key
Tyto příkazy používají algoritmus AES (Advanced Encryption Standard) k převodu zabezpečeného řetězce uloženého $SecureString
v proměnné na šifrovaný standardní řetězec s 192bitovým klíčem. Výsledný šifrovaný standardní řetězec je uložen v $StandardString
proměnné.
První příkaz uloží klíč do $Key
proměnné. Klíč je matice 24 desetinných číslic, z nichž každá musí být menší než 256, aby se vešla do jednoho znaménka bez znaménka.
Vzhledem k tomu, že každé desetinné číslo představuje jeden bajt (8 bitů), má klíč 24 číslic pro celkem 192 bitů (8 x 24). Toto je platná délka klíče pro algoritmuS AES.
Druhý příkaz pomocí klíče v $Key
proměnné převede zabezpečený řetězec na šifrovaný standardní řetězec.
Příklad 4: Převedení zabezpečeného řetězce přímo na řetězec prostého textu
$secureString = ConvertTo-SecureString -String 'Example' -AsPlainText
$secureString # 'System.Security.SecureString'
ConvertFrom-SecureString -SecureString $secureString -AsPlainText # 'Example'
Parametry
-AsPlainText
Při nastavení ConvertFrom-SecureString
převede zabezpečené řetězce na dešifrovaný řetězec prostého textu jako výstup.
Tento parametr byl přidán v PowerShellu 7.0.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Key
Určuje šifrovací klíč jako pole bajtů.
Typ: | Byte[] |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-SecureKey
Určuje šifrovací klíč jako zabezpečený řetězec. Hodnota zabezpečeného řetězce se před použitím jako klíč převede na pole bajtů.
Typ: | SecureString |
Position: | 1 |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-SecureString
Určuje zabezpečený řetězec, který se má převést na šifrovaný standardní řetězec.
Typ: | SecureString |
Position: | 0 |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
Vstupy
Objekt SecureString můžete připojit k této rutině.
Výstupy
Tato rutina vrátí vytvořený řetězec prostého textu.
Poznámky
- K vytvoření zabezpečeného řetězce z znaků zadaných na příkazovém řádku použijte parametr AsSecureString rutiny
Read-Host
. - Pokud k zadání klíče použijete parametry Key nebo SecureKey , musí být délka klíče správná. Například klíč 128 bitů lze zadat jako bajtovou matici s 16 desetinnými číslicemi. Podobně 192bitové a 256bitové klíče odpovídají bajtovým polím 24 a 32 desetinných číslic v uvedeném pořadí.
- Některé znaky, například emotikon, odpovídají několika bodům kódu v řetězci, který je obsahuje. Nepoužívejte tyto znaky, protože můžou způsobovat problémy a nedorozumění při použití v hesle.