Public/Common/CommonHelper.ps1
function Decrypt-String($Encrypted, $Passphrase, $salt = "Rijndael symmetric key encryption", $init = "BOS Encryption Algorithm") { if ($Encrypted -is [string]) { $Encrypted = [Convert]::FromBase64String($Encrypted) } $r = New-Object System.Security.Cryptography.RijndaelManaged $pass = [System.Text.Encoding]::UTF8.GetBytes($Passphrase) $salt = [System.Text.Encoding]::UTF8.GetBytes($salt) $r.Key = (New-Object Security.Cryptography.PasswordDeriveBytes $pass, $salt, "SHA1", 5).GetBytes(32) #256/8 $r.IV = (New-Object Security.Cryptography.SHA1Managed).ComputeHash( [Text.Encoding]::UTF8.GetBytes($init) )[0..15] $d = $r.CreateDecryptor() $ms = New-Object IO.MemoryStream @(, $Encrypted) $cs = New-Object Security.Cryptography.CryptoStream $ms, $d, "Read" $sr = New-Object IO.StreamReader $cs #If unable to decrypt string properly return error if ($sr.EndOfStream -eq $null) { return "###Invalid Decryption###&^%^&%" } $decrypt = $sr.ReadToEnd() $sr.Close() $cs.Close() $ms.Close() $r.Clear() return $decrypt } function Encrypt-String($String, $Passphrase, $salt = "Rijndael symmetric key encryption", $init = "BOS Encryption Algorithm", [switch]$arrayOutput) { $r = New-Object System.Security.Cryptography.RijndaelManaged $pass = [Text.Encoding]::UTF8.GetBytes($Passphrase) $salt = [Text.Encoding]::UTF8.GetBytes($salt) $r.Key = (New-Object Security.Cryptography.PasswordDeriveBytes $pass, $salt, "SHA1", 5).GetBytes(32) #256/8 $r.IV = (New-Object Security.Cryptography.SHA1Managed).ComputeHash( [Text.Encoding]::UTF8.GetBytes($init) )[0..15] $c = $r.CreateEncryptor() $ms = New-Object IO.MemoryStream $cs = New-Object Security.Cryptography.CryptoStream $ms, $c, "Write" $sw = New-Object IO.StreamWriter $cs $sw.Write($String) $sw.Close() $cs.Close() $ms.Close() $r.Clear() [byte[]]$result = $ms.ToArray() if ($arrayOutput) { return $result } else { return [Convert]::ToBase64String($result) } } $CommonColor = @{ Red = "#FF0000" Cyan = "#00FFFF" Blue = "#0000FF" purple = "#800080" Yellow = "#FFFF00" Lime = "#00FF00" Magenta = "#FF00FF" White = "#FFFFFF" Silver = "#C0C0C0" Gray = "#808080" Black = "#000000" Orange = "#FFA500" Brown = "#A52A2A" Maroom = "#800000" Green = "#008000" Olive = "#808000" Pink = "#FFC0CB" DarkBlue = "#00008B" DarkCyan = "#008B8B" DarkGray = "#A9A9A9" DarkGreen = "#006400" DarkMagenta = "#8B008B" DarkOrange = "#FF8C00" DarkRed = "#8B0000" DeepPink = "#FF1493" LightBlue = "#ADD8E6" LightCyan = "#E0FFFF" LightGray = "#D3D3D3" LightGreen = "#90EE90" LightYellow = "#FFFFE0" MediumBlue = "#0000CD" MediumPurple = "#9370DB" YellowGreen = "#9ACD32" } |