Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Nilai tidak valid untuk
--certificate-fingerprintopsi dalamdotnet nuget signperintah atauCertificateFingerprintopsi dalamNuGet.exe signperintah. Nilainya harus berupa sidik jari sertifikat SHA-256, SHA-384, atau SHA-512 (dalam heksadesimal).
Peringatan ini dipromosikan ke kesalahan dalam .NET 10 SDK, dan akan dipromosikan ke kesalahan dalam NuGet.exe sekitar rilis .NET 10.
Masalah
Dimulai dengan .NET 9 dan NuGet.exe 6.12, peringatan NU3043 dinaikkan ketika sidik jari sertifikat SHA-1 diteruskan ke perintah tanda. SHA-1 dianggap tidak aman dan tidak boleh lagi digunakan.
Solusi
Untuk mengatasi peringatan ini, pastikan Anda memberikan sidik jari sertifikat SHA-256, SHA-384, atau SHA-512 yang valid (dalam heksadesimal) untuk --certificate-fingerprint opsi dalam dotnet nuget sign perintah atau CertificateFingerprint opsi dalam NuGet.exe sign perintah.
Anda dapat menggunakan skrip berikut untuk menghitung hash keluarga SHA-2 untuk sertifikat.
PowerShell
Untuk menggunakan skrip, Anda perlu menyimpan sertifikat ke folder lokal.
$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)
Jika sertifikat dalam format PEM atau CRT:
openssl x509 -in path/to/certificate -outform der | sha256sum
Jika sertifikat sudah dalam format DER:
sha256sum path/to/certificate
Petunjuk / Saran
Untuk SHA-384 atau SHA-512, ganti sha256sum dengan sha384sum atau sha512sum sesuai kebutuhan.