Private/Convert-HexToByte.ps1
# Copyright: (c) 2018, Jordan Borean (@jborean93) <jborean93@gmail.com> # MIT License (see LICENSE or https://opensource.org/licenses/MIT) Function Convert-HexToByte { <# .SYNOPSIS Converts a string of hex characters to a byte array. .DESCRIPTION Takes in a string of hex characters and returns the byte array that the hex represents. .PARAMETER Value [String] The hex string to convert. .OUTPUTS [byte[]] The byte array based on the converted hex string. .EXAMPLE Convert-HexToBytes -Value "48656c6c6f20576f726c64" .NOTES The hex string should have no spaces that separate each hex char. #> [CmdletBinding()] [OutputType([byte[]])] param( [Parameter(Mandatory=$true)] [String]$Value ) $bytes = New-Object -TypeName byte[] -ArgumentList ($Value.Length / 2) for ($i = 0; $i -lt $Value.Length; $i += 2) { $bytes[$i / 2] = [Convert]::ToByte($Value.Substring($i, 2), 16) } return [byte[]]$bytes } |