About package PGP signatures

为了增加对npm公共注册表的信心,我们将PGP签名添加到数据包中,并在Keybase上公开我们的公共PGP密钥. 我们的Keybase帐户是" npmregistry ",我们的公共PGP密钥可在https://keybase.io/npmregistry/pgp_keys.asc中找到.

您可以使用程序包PGP签名和我们的公共PGP密钥来验证发布密钥的同一实体(npm,Inc.)是否也对您从npm公共注册表下载的程序包进行了签名. 有关更多信息,请参阅" 从npm公共注册表验证软件包的PGP签名 ".

Tools we use

openpgpjs

为了生成PGP签名,我们使用openpgpjs (OpenPGP的纯JavaScript实现). 要了解有关openpgpjs的更多信息,请参见https://openpgpjs.org/.

Keybase

我们使用Keybase来公开我们的PGP密钥,并使您确信从中安装的npm注册表与签署软件包的注册表相同.

与基本的OpenPGP体验相比,Keybase具有两个优势,这使我们向您推荐它:

我们已经在Keybase成立证明我们控制@npmjs在Twitter上,域npmjs.com ,和域npmjs.org . 验证这些证明不会告诉您谁拥有这些域,但确实可以确定由同一实体控制它们以及在Keybase上发布的PGP密钥.

您还可以观察到npm的执行和技术团队的成员都是选择在Keybase上关注" npmregistry"的人员,例如CJ Silverio( ceej ),Isaac Schlueter( isaacs ),Adam Baldwin( adam_baldwin )和Kat马尔尚( zkat ).

如果安装Keybase并创建一个帐户,则可以自己跟随npmregistry并获取注册表公钥的本地副本. 有关更多信息,以及要从npm公共注册表验证特定软件包版本的PGP签名 ,请参阅"从npm公共注册表验证软件包的PGP签名 ".


< Auditing package dependencies for security vulnerabilities | Verifying the PGP signature of a package from the npm public registry >

by  ICOPY.SITE