Private/Verify-ADFSTkSigningCert.ps1
function Verify-ADFSTkSigningCert { param ( [string]$signingCertString ) [void][reflection.assembly]::LoadWithPartialName("System.IO") $memoryStream = new-object System.IO.MemoryStream $signCertificate = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2 try { $signCertificateBytes = [system.Text.Encoding]::UTF8.GetBytes($signingCertString) $signCertificate.Import($signCertificateBytes) } catch { throw "Could not convert signingCertString to X509 certificate" } $signCertificateHash = Get-FileHash -InputStream ([System.IO.MemoryStream]$signCertificate.RawData) #Get Signing Certificate Hash from config if ([string]::IsNullOrEmpty($Settings.configuration.signCertFingerprint)) { $signCertificateHashCompare = 'A6785A37C9C90C25AD5F1F6922EF767BC97867673AAF4F8BEAA1A76DA3A8E585' #Just for fallback } else { $signCertificateHashCompare = $Settings.configuration.signCertFingerprint } return ($signCertificateHash.Hash -eq $signCertificateHashCompare) } |