安装Git之后,默认会带Git Bash,通过Git Bash可以直接访问gpg命令。
GPG支持多种加密方式,一般在Git上使用GPG是指使用RSA非对称加密。
RSA非对称加密的密钥是一对密钥,分为 公钥 (public key) 和 私钥 (private key) 。公钥用作加密,私钥用作解密。因为加密/解密用的是不同的密钥,因此称为非对称加密。
想要发送加密消息时: 消息的接收方将公钥发给你你使用公钥加密消息将加密后消息发出对方收到加密后的消息,使用自己手里的与之对应的私钥解密消息 接收消息时: 把与自己私钥所对应的公钥发给对方对方使用你给的公钥对消息加密将加密后消息发出你收到加密后消息,用自己手里的私钥解密消息 整个过程不存在私钥的交换,只有公钥交换。私钥是解密时使用的,交出私钥等同于交出解密消息方法。GPG是帮助我们生成这过程中需要用到的“公钥/私钥”密钥对,以及相关管理密钥功能的程序。
生成一对密钥(一个公钥和一个私钥) gpg --full-generate-key 列出所有密钥对 gpg --list-keys 导出公钥以ASCII编码方式打印公钥到命令行(方便复制粘贴):
【USERNAME需要替换,USERNAME可以是一长串的ID】
导出公钥到文件(ascii格式):
(FILEPATH 需要替换 )
导出公钥到文件(二进制):
gpg -o FILEPATH --export USERNAME导出私钥到文件(二进制):【私钥切勿外传】
(ascii格式添加 -a即可)