ConvertFrom-SecureString
Mengonversi string aman ke string standar terenkripsi.
Sintaks
ConvertFrom-SecureString
[-SecureString] <SecureString>
[[-SecureKey] <SecureString>]
[<CommonParameters>]
ConvertFrom-SecureString
[-SecureString] <SecureString>
[-AsPlainText]
[<CommonParameters>]
ConvertFrom-SecureString
[-SecureString] <SecureString>
[-Key <Byte[]>]
[<CommonParameters>]
Deskripsi
ConvertFrom-SecureString
Cmdlet mengonversi string aman (System.Security.SecureString) menjadi string standar terenkripsi (System.String). Tidak seperti string aman, string standar terenkripsi dapat disimpan dalam file untuk digunakan nanti. String standar terenkripsi dapat dikonversi kembali ke format string amannya dengan menggunakan ConvertTo-SecureString
cmdlet.
Jika kunci enkripsi ditentukan dengan menggunakan parameter Key atau SecureKey , algoritma enkripsi Advanced Encryption Standard (AES) digunakan. Kunci yang ditentukan harus memiliki panjang 128, 192, atau 256 bit karena itu adalah panjang kunci yang didukung oleh algoritma enkripsi AES. Jika tidak ada kunci yang ditentukan, Windows Data Protection API (DPAPI) digunakan untuk mengenkripsi representasi string standar.
Catatan
Perhatikan bahwa per DotNet, konten SecureString tidak dienkripsi pada sistem non-Windows.
Contoh
Contoh 1: Membuat string aman
$SecureString = Read-Host -AsSecureString
Perintah ini membuat string aman dari karakter yang Anda ketik di prompt perintah. Setelah memasukkan perintah, ketik string yang ingin Anda simpan sebagai string aman. Tanda bintang (*
) ditampilkan untuk mewakili setiap karakter yang Anda ketik.
Contoh 2: Mengonversi string aman ke string standar terenkripsi
$StandardString = ConvertFrom-SecureString $SecureString
Perintah ini mengonversi string aman dalam $SecureString
variabel menjadi string standar terenkripsi. String standar terenkripsi yang dihasilkan disimpan dalam $StandardString
variabel .
Contoh 3: Mengonversi string aman ke string standar terenkripsi dengan kunci 192-bit
$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
Perintah ini menggunakan algoritma Standar Enkripsi Lanjutan (AES) untuk mengonversi string aman yang disimpan dalam $SecureString
variabel ke string standar terenkripsi dengan kunci 192-bit. String standar terenkripsi yang dihasilkan disimpan dalam $StandardString
variabel .
Perintah pertama menyimpan kunci dalam $Key
variabel. Kuncinya adalah array 24 angka desimal, yang masing-masing harus kurang dari 256 agar pas dalam satu byte yang tidak ditandatangani.
Karena setiap angka desimal mewakili byte tunggal (8 bit), kunci memiliki 24 digit untuk total 192 bit (8 x 24). Ini adalah panjang kunci yang valid untuk algoritma AES.
Perintah kedua menggunakan kunci dalam $Key
variabel untuk mengonversi string aman ke string standar terenkripsi.
Contoh 4: Mengonversi string aman langsung ke string teks biasa
$secureString = ConvertTo-SecureString -String 'Example' -AsPlainText
$secureString # 'System.Security.SecureString'
ConvertFrom-SecureString -SecureString $secureString -AsPlainText # 'Example'
Parameter
-AsPlainText
Ketika diatur, ConvertFrom-SecureString
akan mengonversi string aman ke string teks biasa yang didekripsi sebagai output.
Parameter ini ditambahkan di PowerShell 7.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Key
Menentukan kunci enkripsi sebagai array byte.
Type: | Byte[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SecureKey
Menentukan kunci enkripsi sebagai string aman. Nilai string aman dikonversi ke array byte sebelum digunakan sebagai kunci.
Type: | SecureString |
Position: | 1 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SecureString
Menentukan string aman untuk dikonversi ke string standar terenkripsi.
Type: | SecureString |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
Input
Anda dapat menyalurkan objek SecureString ke cmdlet ini.
Output
Cmdlet ini mengembalikan string teks biasa yang dibuat.
Catatan
- Untuk membuat string aman dari karakter yang ditik pada prompt perintah, gunakan parameter AsSecureString cmdlet
Read-Host
. - Saat Anda menggunakan parameter Key atau SecureKey untuk menentukan kunci, panjang kunci harus benar. Misalnya, kunci 128 bit dapat ditentukan sebagai array byte 16 angka desimal. Demikian pula, kunci 192-bit dan 256-bit sesuai dengan array byte masing-masing 24 dan 32 angka desimal.
- Beberapa karakter, seperti emotikon, sesuai dengan beberapa titik kode dalam string yang berisinya. Hindari menggunakan karakter ini karena dapat menyebabkan masalah dan kesalahpahaman saat digunakan dalam kata sandi.
Link Terkait
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk