Загрузка данных


# Список хранилищ для проверки
$certStores = @(
    "Cert:\LocalMachine\Root",        # Доверенные корневые сертификаты
    "Cert:\LocalMachine\TrustedPublisher",
    "Cert:\LocalMachine\CA",
    "Cert:\CurrentUser\Root"          # Корневые сертификаты текущего пользователя
)

foreach ($store in $certStores) {
    Write-Host "`n--- Проверка хранилища: $store ---" -ForegroundColor Cyan
    Get-ChildItem -Path $store -ErrorAction SilentlyContinue | ForEach-Object {
        # Проверяем только сертификаты с RSA-ключом
        if ($_.PublicKey.Oid.FriendlyName -like "*RSA*") {
            $keySize = $_.PublicKey.Key.KeySize
            if ($keySize -lt 2048) {
                [PSCustomObject]@{
                    StoreLocation = $store
                    Subject       = $_.Subject
                    Thumbprint    = $_.Thumbprint
                    KeySize       = $keySize
                    NotAfter      = $_.NotAfter
                }
            }
        }
    }
}