The GNU Privacy Guard

原文链接:http://www.cnblogs.com/van9ogh/archive/2012/03/26/2418580.html

 You call see this artical for quick start: 

      http://www.madboa.com/geek/gpg-quickstart/

  Also, you can goto this site for future reading: 

      http://www.gnupg.org/documentation/

Private和public的钥匙是gpg加密和解密过程的主要部分,所以第一步就是创建为自己创建一对密匙.

  1. 生成私钥

    $gpg --gen-key

    你需要回答一些这个命令提出的问题

    1. 私钥的种类和size,这里缺省的答案已经足够好了

    2. 私钥的有效期,我通常选择不会过期,呵呵

    3. 你的真实的姓名和e-mail地址,这些是用来从一大堆钥匙中找到你的钥匙的

    4. 关于你的钥匙的comment,可以为空,我一般填一个昵称

    5. 钥匙的密码. 千万别忘了,否则所有你加密过的文件都没用了

  2. 为你的私钥生成一个公钥(文本文件)

    $ gpg --armor --output LiuPeng.asc --export van9ogh@gmail.com

    你可以分发这个文件了,给你的朋友,或者贴到你的个人网站上, or whatever.

  3. 为自己加密一个文件. 这里--recipient可以是你的全名,也可以是你的邮件地址 
    #man man > foo.txt 

    #gpg --encrypt --recipient 'LiuPeng' foo.txt

  4. 解密这个文件. 这里不加--output选项的话,解密的内容将被送到屏幕上
    #gpg --output foo.txt --decrypt foo.txt.gpg
  5. 为别人加密一个文件. 这里首先要import别人的公钥,然后加密。注意这里变化的只是--recipient选项 
    #gpg --import other_people.asc
    #gpg --list-keys
    #gpg --encrypt --recipient 'other_people' foo.txt
  6. 解密一个从别人那里发来的文件. 这个和本机加密的文件解密没什么区别.
  7. #gpg --output foo.txt --decrypt foo.txt.gpg
  8. Other gpg commands

    查看所有密钥

    #gpg –list-key

    查看所有密钥

    #gpg –list-public-key

    查看所有私钥

    #gpg –-list-secret-key

    列出所有签名

    #gpg –-list-sig

    核对指纹:指纹是为了防止第三方伪造publickey,使得公钥的接收者误以为拿到了真正的公钥,这样第三方就可以看到加密的内容了。

    #gpg –-fingerprint ‘LiuPeng’

    签名

    #gpg –-sign-key ‘LiuPeng’ 

    or

    #gpg –-edit-key ‘LiuPeng’ (转入命令模式)
    #command>

    检查签名

    #gpg –-check-sign ‘LiuPeng’

     

     

    疑问:试了一下gpg 上传公钥到公共仓库的方法,为什么没有效果?

     

    #gpg --send-keys 'LiuPeng' --keyserver hkp://subkeys.pgp.net

    gpg: "LiuPeng.asc" not a key ID: skipping

    gpg: "--keyserver" not a key ID: skipping

    gpg: "hkp://subkeys.pgp.net" not a key ID: skipping

     


    与Git相关:

    打标签: 

    #git tag -s v2.0 -m 'my signed 2.0 tag'

     这样就给自己的tag 打上了带有gpg 签署的标签

    注意:git 会默认使用~/.gitconfig 的user, email 来寻找对应的gpg密钥,如果你不想这样可以修改:

    例如,我的git 默认为van9ogh <van9ogh@gmail.com> 但我的gpg为LiuPeng <van9ogh@gmail.com>

    那么我可以修改~/.gitconfig:

    [user]

    signingkey = LiuPeng 

     更详细的解释可以查看man git-tag

     

     

     

     

     

     

     

转载于:https://www.cnblogs.com/van9ogh/archive/2012/03/26/2418580.html

上一篇:临时记载


下一篇:arch安装备忘