Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Ogiltigt värde för
--certificate-fingerprintalternativet idotnet nuget signkommandot ellerCertificateFingerprintalternativet iNuGet.exe signkommandot. Värdet måste vara ett SHA-256-, SHA-384- eller SHA-512-certifikatsfingret (i hexadecimalt).
Den här varningen framhävs till ett fel i .NET 10 SDK och höjs upp till ett fel i NuGet.exe runt .NET 10-versionen.
Problematik
Från och med .NET 9 och NuGet.exe 6.12 utlöses NU3043-varningen när ett SHA-1-certifikatsfingret skickas till teckenkommandona. SHA-1 anses osäker och bör inte längre användas.
Lösning
Lös den här varningen genom att ange ett giltigt SHA-256-, SHA-384- eller SHA-512-certifikatavtryck (i hexadecimalt) för --certificate-fingerprint alternativet i dotnet nuget sign kommandot eller CertificateFingerprint alternativet i NuGet.exe sign kommandot.
Du kan använda följande skript för att beräkna SHA-2-familjens hashvärden för certifikat.
PowerShell
Om du vill använda skriptet måste du spara certifikatet i en lokal mapp.
$certificate = [System.Security.Cryptography.X509Certificates.X509Certificate2]::new($certPath)
$stream = [System.IO.MemoryStream]::new($certificate.RawData)
Try
{
(Get-FileHash -Algorithm SHA256 $stream).Hash
}
Finally
{
$stream.Dispose()
$certificate.Dispose()
}
OpenSSL (Linux/macOS)
Om certifikatet är i PEM- eller CRT-format:
openssl x509 -in path/to/certificate -outform der | sha256sum
Om certifikatet redan är i DER-format:
sha256sum path/to/certificate
Tips/Råd
För SHA-384 eller SHA-512 ersätter du sha256sum med sha384sum eller sha512sum efter behov.