dotnet-nuget-verify(1)
π dotnet-nuget-verify β the .NET Documentation manual page, bestie edition π
okay so you found the dotnet-nuget-verify(1) page from the .NET Documentation, and honestly? iconic of you. this one applies to βοΈ .NET 6 SDK and later versions, so if you're on anything older... babes, we gotta talk. π«Ά
β¨ NAME β¨
dotnet-nuget-verify β verifies a signed NuGet package. that's it, that's the whole vibe. it's the "bestie, is this actually signed tho?" command. π₯
πΈ SYNOPSIS πΈ
dotnet nuget verify [<package-path(s)>]
[--all]
[--certificate-fingerprint <FINGERPRINT>]
[-v|--verbosity <LEVEL>]
[--configfile <FILE>]
dotnet nuget verify -h|--help
π¦ DESCRIPTION π¦
so dotnet nuget verify verifies a signed NuGet package. lowkey its whole job. β¨
and in .NET 10 and later versions, it also outputs the package's content hash, which might be useful to investigate lock file validation errors. so if your lock file is being dramatic, this is your girl. π
π¨ okay important stuff, no cap: this command requires a certificate root store that is valid for both code signing and timestamping. also, this command may not be supported on some combinations of operating system and .NET SDK. for more info, see NuGet signed package verification. don't come for me, come for the cert store. π
π ARGUMENTS π
- package-path(s) β specifies the file path to the package(s) to be verified. you can pass in multiple position arguments to verify multiple packages at once. slay, batch it. π
β¨ OPTIONS β¨
--allβ specifies that all verifications possible should be performed on the package(s). by default, only signatures are verified. heads up tho: this command currently supports only signature verification. so--allis giving main character energy but it's a one-trick pony rn. π--certificate-fingerprint <FINGERPRINT>β verify that the signer certificate matches with one of the specified SHA256 fingerprints. you can supply this option multiple times to provide multiple fingerprints. stack 'em like friendship bracelets. π-v|--verbosity <LEVEL>β sets the verbosity level of the command. allowed values areq[uiet],m[inimal],n[ormal],d[etailed], anddiag[nostic]. the default isminimal. for more information, see<xref:Microsoft.Build.Framework.LoggerVerbosity>. π
okay so here's what actually shows up at each level (the original page does this as a big table, but tables are not the vibe here so we're doing bullets, and every single row is still here, promise):
- Certificate chain Information β
q[uiet]β Β·m[inimal]β Β·n[ormal]β Β·d[etailed]βοΈ Β·diag[nostic]βοΈ - Path to package being verified β
q[uiet]β Β·m[inimal]β Β·n[ormal]βοΈ Β·d[etailed]βοΈ Β·diag[nostic]βοΈ - Hashing algorithm used for signature β
q[uiet]β Β·m[inimal]β Β·n[ormal]βοΈ Β·d[etailed]βοΈ Β·diag[nostic]βοΈ - Author/Repository Certificate -> SHA1 hash β
q[uiet]β Β·m[inimal]β Β·n[ormal]βοΈ Β·d[etailed]βοΈ Β·diag[nostic]βοΈ - Author/Repository Certificate -> Issued By β
q[uiet]β Β·m[inimal]β Β·n[ormal]βοΈ Β·d[etailed]βοΈ Β·diag[nostic]βοΈ - Timestamp Certificate -> Issued By β
q[uiet]β Β·m[inimal]β Β·n[ormal]βοΈ Β·d[etailed]βοΈ Β·diag[nostic]βοΈ - Timestamp Certificate -> SHA-256 hash β
q[uiet]β Β·m[inimal]β Β·n[ormal]βοΈ Β·d[etailed]βοΈ Β·diag[nostic]βοΈ - Timestamp Certificate -> Validity period β
q[uiet]β Β·m[inimal]β Β·n[ormal]βοΈ Β·d[etailed]βοΈ Β·diag[nostic]βοΈ - Timestamp Certificate -> SHA1 hash β
q[uiet]β Β·m[inimal]β Β·n[ormal]βοΈ Β·d[etailed]βοΈ Β·diag[nostic]βοΈ - Timestamp Certificate -> Subject name β
q[uiet]β Β·m[inimal]β Β·n[ormal]βοΈ Β·d[etailed]βοΈ Β·diag[nostic]βοΈ - Author/Repository Certificate -> Subject name β
q[uiet]β Β·m[inimal]βοΈ Β·n[ormal]βοΈ Β·d[etailed]βοΈ Β·diag[nostic]βοΈ - Author/Repository Certificate -> SHA-256 hash β
q[uiet]β Β·m[inimal]βοΈ Β·n[ormal]βοΈ Β·d[etailed]βοΈ Β·diag[nostic]βοΈ - Author/Repository Certificate -> Validity period β
q[uiet]β Β·m[inimal]βοΈ Β·n[ormal]βοΈ Β·d[etailed]βοΈ Β·diag[nostic]βοΈ - Author/Repository Certificate -> Service index URL (If applicable) β
q[uiet]β Β·m[inimal]βοΈ Β·n[ormal]βοΈ Β·d[etailed]βοΈ Β·diag[nostic]βοΈ - Package name being verified β
q[uiet]β Β·m[inimal]βοΈ Β·n[ormal]βοΈ Β·d[etailed]βοΈ Β·diag[nostic]βοΈ - Type of signature (author or repository) β
q[uiet]β Β·m[inimal]βοΈ Β·n[ormal]βοΈ Β·d[etailed]βοΈ Β·diag[nostic]βοΈ
π β indicates details that are not displayed. βοΈ indicates details that are displayed. that's the whole legend, not me gatekeeping.
--configfile <FILE>β the NuGet configuration file (nuget.config) to use. if specified, only the settings from this file will be used. if not specified, the hierarchy of configuration files from the current directory will be used. for more info, see Common NuGet Configurations. β¨-?|-h|--helpβ prints out a description of how to use the command. classic. the "help me bestie" button. π«Ά
π EXAMPLES π
- verify
foo.nupkg:
dotnet nuget verify foo.nupkg
- verify multiple NuGet packages β
foo.nupkgand all.nupkgfiles in the directory specified:
dotnet nuget verify foo.nupkg c:\mydir\*.nupkg
- verify
foo.nupkgsignature matches with the specified certificate fingerprint:
dotnet nuget verify foo.nupkg --certificate-fingerprint CE40881FF5F0AD3E58965DA20A9F571EF1651A56933748E1BF1C99E537C4E039
- verify
foo.nupkgsignature matches with one of the specified certificate fingerprints:
dotnet nuget verify foo.nupkg --certificate-fingerprint CE40881FF5F0AD3E58965DA20A9F571EF1651A56933748E1BF1C99E537C4E039 --certificate-fingerprint EC10992GG5F0AD3E58965DA20A9F571EF1651A56933748E1BF1C99E537C4E027
- verify the signature of
foo.nupkgby using settings (packagesourcesandtrustedSigners) only from the specifiednuget.configfile:
dotnet nuget verify foo.nupkg --configfile ..\Settings\nuget.config
and that's the whole page, bestie, every last crumb of it. π
sign-off time: this page came from the .NET Documentation and it's dated 2025-10-30, and it lives at the address dotnet-nuget-verify(1). go verify something and feel extremely powerful about it. ππ§β¨
π¦ where this page comes from
- alpine 3.24: dotnet-doc 10.0.303-r2 Β· MIT
- centos-stream 10: dotnet-host 11.0.0~rc.2.26504.105-0.10.el10 Β· 0BSD AND Apache-2.0 AND (Apache-2.0 WITH LLVM-exception) AND APSL-2.0 AND BSD-2-Clause AND BSD-3-Clause AND BSD-4-Clause AND BSL-1.0 AND bzip2-1.0.6 AND CC0-1.0 AND CC-BY-3.0 AND CC-BY-4.0 AND CC-PDDC AND CNRI-Python AND EPL-1.0 AND GPL-2.0-only AND (GPL-2.0-only WITH GCC-exception-2.0) AND GPL-2.0-or-later AND GPL-3.0-only AND ICU AND ISC AND LGPL-2.1-only AND LGPL-2.1-or-later AND LicenseRef-Fedora-Public-Domain AND LicenseRef-ISO-8879 AND MIT AND MIT-Wu AND MS-PL AND MS-RL AND NCSA AND OFL-1.1 AND OpenSSL AND Unicode-DFS-2015 AND Unicode-DFS-2016 AND W3C-19980720 AND X11 AND Zlib
- centos-stream 9: dotnet-host 11.0.0~rc.2.26504.105-0.11.el9 Β· 0BSD AND Apache-2.0 AND (Apache-2.0 WITH LLVM-exception) AND APSL-2.0 AND BSD-2-Clause AND BSD-3-Clause AND BSD-4-Clause AND BSL-1.0 AND bzip2-1.0.6 AND CC0-1.0 AND CC-BY-3.0 AND CC-BY-4.0 AND CC-PDDC AND CNRI-Python AND EPL-1.0 AND GPL-2.0-only AND (GPL-2.0-only WITH GCC-exception-2.0) AND GPL-2.0-or-later AND GPL-3.0-only AND ICU AND ISC AND LGPL-2.1-only AND LGPL-2.1-or-later AND LicenseRef-Fedora-Public-Domain AND LicenseRef-ISO-8879 AND MIT AND MIT-Wu AND MS-PL AND MS-RL AND NCSA AND OFL-1.1 AND OpenSSL AND Unicode-DFS-2015 AND Unicode-DFS-2016 AND W3C-19980720 AND X11 AND Zlib
- fedora 43: dotnet-host 10.0.12-1.fc43
- fedora 43: dotnet-host 11.0.0~rc.1.26425.128-0.10.fc43 Β· 0BSD AND Apache-2.0 AND (Apache-2.0 WITH LLVM-exception) AND APSL-2.0 AND BSD-2-Clause AND BSD-3-Clause AND BSD-4-Clause AND BSL-1.0 AND bzip2-1.0.6 AND CC0-1.0 AND CC-BY-3.0 AND CC-BY-4.0 AND CC-PDDC AND CNRI-Python AND EPL-1.0 AND GPL-2.0-only AND (GPL-2.0-only WITH GCC-exception-2.0) AND GPL-2.0-or-later AND GPL-3.0-only AND ICU AND ISC AND LGPL-2.1-only AND LGPL-2.1-or-later AND LicenseRef-Fedora-Public-Domain AND LicenseRef-ISO-8879 AND MIT AND MIT-Wu AND MS-PL AND MS-RL AND NCSA AND OFL-1.1 AND OpenSSL AND Unicode-DFS-2015 AND Unicode-DFS-2016 AND W3C-19980720 AND X11 AND Zlib
- fedora 44: dotnet-host 10.0.12-1.fc44
- fedora 44: dotnet-host 10.0.4-1.fc44 Β· 0BSD AND Apache-2.0 AND (Apache-2.0 WITH LLVM-exception) AND APSL-2.0 AND BSD-2-Clause AND BSD-3-Clause AND BSD-4-Clause AND BSL-1.0 AND bzip2-1.0.6 AND CC0-1.0 AND CC-BY-3.0 AND CC-BY-4.0 AND CC-PDDC AND CNRI-Python AND EPL-1.0 AND GPL-2.0-only AND (GPL-2.0-only WITH GCC-exception-2.0) AND GPL-2.0-or-later AND GPL-3.0-only AND ICU AND ISC AND LGPL-2.1-only AND LGPL-2.1-or-later AND LicenseRef-Fedora-Public-Domain AND LicenseRef-ISO-8879 AND MIT AND MIT-Wu AND MS-PL AND MS-RL AND NCSA AND OFL-1.1 AND OpenSSL AND Unicode-DFS-2015 AND Unicode-DFS-2016 AND W3C-19980720 AND X11 AND Zlib
- fedora 44: dotnet-host 11.0.0~rc.1.26425.128-0.12.fc44 Β· 0BSD AND Apache-2.0 AND (Apache-2.0 WITH LLVM-exception) AND APSL-2.0 AND BSD-2-Clause AND BSD-3-Clause AND BSD-4-Clause AND BSL-1.0 AND bzip2-1.0.6 AND CC0-1.0 AND CC-BY-3.0 AND CC-BY-4.0 AND CC-PDDC AND CNRI-Python AND EPL-1.0 AND GPL-2.0-only AND (GPL-2.0-only WITH GCC-exception-2.0) AND GPL-2.0-or-later AND GPL-3.0-only AND ICU AND ISC AND LGPL-2.1-only AND LGPL-2.1-or-later AND LicenseRef-Fedora-Public-Domain AND LicenseRef-ISO-8879 AND MIT AND MIT-Wu AND MS-PL AND MS-RL AND NCSA AND OFL-1.1 AND OpenSSL AND Unicode-DFS-2015 AND Unicode-DFS-2016 AND W3C-19980720 AND X11 AND Zlib
- nixpkgs unstable: dotnet-vmr 11.0.0-rc.3
- ubuntu noble: dotnet-host-10.0 10.0.12-0ubuntu1~24.04.1
- ubuntu questing: dotnet-host-10.0 10.0.9-0ubuntu1~25.10.1
- ubuntu resolute: dotnet-host-10.0 10.0.12-0ubuntu1~26.04.1
- ubuntu resolute: dotnet-host-10.0 10.0.5-0ubuntu1 Β· MIT
- ubuntu stonking: dotnet-host-10.0 10.0.12-0ubuntu2 Β· MIT
- ubuntu stonking: dotnet-host-11.0 11.0.0~rc1-0ubuntu1 Β· MIT
- ubuntu stonking: dotnet-host-11.0 11.0.0~rc3-0ubuntu1~26.10.1 Β· MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms