您的位置:首页 > 运维架构 > Shell

Powershell实现加密解密文本文件方法实例

2015-04-11 09:28 756 查看

适用于Powershell3.0及以后版本。
假设你需要给文件加密,下面教你如何给自己的文件加密:

$Path = "$env:temp\secret.txt"
$Secret = 'Hello World!'
$Passphrase = 'Some secret key'
$key = [Byte[]]($Passphrase.PadRight(24).Substring(0,24).ToCharArray())
$Secret |
ConvertTo-SecureString -AsPlainText -Force |
ConvertFrom-SecureString -Key $key |
Out-File -FilePath $Path
notepad $Path

当你需要解密出里面的内容,这时就需要最初的密码:

$Passphrase = Read-Host 'Enter the secret pass phrase'
$Path = "$env:temp\secret.txt"
$key = [Byte[]]($Passphrase.PadRight(24).Substring(0,24).ToCharArray())
try
{
$decryptedTextSecureString = Get-Content -Path $Path -Raw |
ConvertTo-SecureString -Key $key -ErrorAction Stop
$cred = New-Object -TypeName System.Management.Automation.PSCredential('dummy', $decryptedTextSecureString)
$decryptedText = $cred.GetNetworkCredential().Password
}
catch
{
$decryptedText = '(wrong key)'
}
"The decrypted secret text: $decryptedText"

您可能感兴趣的文章:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息