PoshCode Archive  Artifact [3a089e9d4c]

Artifact 3a089e9d4c3e7c9a765ec98b78be0e88e3f7b25faed3cfd1e2e1256110b8167b:

  • File ConvertTo-Hex.ps1 — part of check-in [d89890fdbf] at 2018-06-10 13:49:18 on branch trunk — This scConvertTo-Hex S-1-5-21-357043131-537017027-1947940980-1289ript will convert a security identifier (SID) in string format to its hexadecimal equivalent. e.g. (user: S-1-5-21-2398571 size: 1056)

# encoding: ascii
# api: powershell
# title: ConvertTo-Hex
# description: This scConvertTo-Hex S-1-5-21-357043131-537017027-1947940980-1289ript will convert a security identifier (SID) in string format to its hexadecimal equivalent. e.g. 
# version: 0.1
# author: S-1-5-21-2398571
# license: CC0
# x-poshcode-id: 5051
# x-archived: 2014-04-06T18:00:33
# x-published: 2014-04-04T13:47:00
#
# S-1-5-21-213254720-307716582-224688177-239697
#
# Ported from C# technique found here: http://forums.asp.net/p/1298956/2529558.aspx
param ( [string]$SidString )

# Create SID .NET object using SID string provided
$sid = New-Object system.Security.Principal.SecurityIdentifier $sidstring

# Create a byte array of the proper length
$sidBytes = New-Object byte[] $sid.BinaryLength

#Convert to bytes
$sid.GetBinaryForm( $sidBytes, 0 )

# Iterate through bytes, converting each to the hexidecimal equivalent
$hexArr = $sidBytes | ForEach-Object { $_.ToString("X2") }

# Join the hex array into a single string for output
$hexArr -join ''