开源工具:
参考一:
gpg --export [--armor] # outfile 取出的公开钥匙至 outfile中。
gpg --import [keyfile] 将公开钥匙[keyfile]加入钥匙环中。
gpg -k 列印出公开钥匙。
gpg -e -r file 加密file至binary档file.gpg中。
gpg -e -r --armor file 加密file至ASCII档file.asc中。
gpg -s file 加签file至binary档file.gpg中。
gpg -s --armor file 加签file至ASCII档file.asc中。
gpg -se -r file 加密加签file至binary档file.gpg中。
gpg -se -r [-armor] file 加密加签file至ASCII档file.asc中。
gpg -v file 解密file。
GnuPG(GNU Privacy Guard或GPG)是一个以释出的开放源码用于或的,可用来取代。大多数gpg软件仅支持命令行方式,一般人较难掌握。由于gpg软件开放源代码,很难隐藏后门,因此比pgp等商业软件安全。
命令行
gpg (GnuPG) 1.4.1
Copyright (C) 2005 Free Software Foundation, Inc. This program comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it under certain conditions. See the file COPYING for details.
Home: D:/GNU/GnuPG
支持的算法:
公钥:RSA, RSA-E, RSA-S, ELG-E, DSA
对称加密:3DES, CAST5, BLOWFISH, AES, AES192, AES256, TWOFISH
散列:MD5, SHA1, RIPEMD160, SHA256, SHA384, SHA512
压缩:不压缩, ZIP, ZLIB, BZIP2
语法:gpg [选项] [文件名]
签字、检查、加密或解密
默认的操作依输入数据而定
指令:
-s, --sign [文件名] 生成一份签字
--clearsign [文件名] 生成一份明文签字
-b, --detach-sign 生成一份分离的签字
-e, --encrypt 加密数据
-c, --symmetric 仅使用对称加密
-d, --decrypt 解密数据(默认)
--verify 验证签字
--list-keys 列出密钥
--list-sigs 列出密钥和签字
--check-sigs 列出并检查密钥签字
--fingerprint 列出密钥和指纹
-K, --list-secret-keys 列出私钥
--gen-key 生成一副新的密钥对
--delete-keys 从公钥钥匙环里删除密钥
--delete-secret-keys 从私钥钥匙环里删除密钥
--sign-key 为某把密钥添加签字
--lsign-key 为某把密钥添加本地签字
--edit-key 编辑某把密钥或为其添加签字
--gen-revoke 生成一份吊销证书
--export 导出密钥
--send-keys 把密钥导出到某个公钥服务器上
--recv-keys 从公钥服务器上导入密钥
--search-keys 在公钥服务器上搜寻密钥
--refresh-keys 从公钥服务器更新所有的本地密钥
--import 导入/合并密钥
--card-status 打印卡状态
--card-edit 更改卡上的数据
--change-pin 更改卡的 PIN
--update-trustdb 更新信任度数据库
--print-md 算法 [文件] 使用指定的散列算法打印报文散列值
选项:
-a, --armor 输出经 ASCII 封装
-r, --recipient 某甲 为收件者“某甲”加密
-u, --local-user 使用这个用户标识来签字或解密
-z N 设定压缩等级为 N (0 表示不压缩)
--textmode 使用标准的文本模式
-o, --output 指定输出文件
-v, --verbose 详细模式
-n, --dry-run 不做任何改变
-i, --interactive 覆盖前先询问
--openpgp 行为严格遵循 OpenPGP 定义
--pgp2 生成与 PGP 2.x 兼容的报文
(请参考在线说明以获得所有命令和选项的完整清单)
范例
-se -r Bob [file] 为Bob签名并加密(指定文件)
--clearsign [file] 制作纯文本签名(指定文件)
--detach-sign [file] 制作可分离的签名(指定文件)
--list-keys [names] 显示密匙列表(指定用户名)
--fingerprint [names] 显示指纹(指定用户名)
修改密匙:
--edit-key 密匙ID
quit 退出本级菜单
save 保存并退出
help 显示本帮助
fpr 显示密匙指纹
list 列出密匙及用户ID
uid 选择用户ID N
key 选择子密匙 N
check 检查签名
sign 给选定用户ID的密匙签名
lsign 给选定用户ID的密匙签名(本地签名,不可导出)
tsign 给选定用户ID的密匙签名(用信任的签名)
nrsign 给选定用户ID的密匙签名(用不可撤销的签名)
adduid 添加用户ID
addphoto 添加照片ID
deluid 删除选定的用户ID
addkey 添加子密匙
addcardkey 添加密匙到智能卡
keytocard 移动密匙到智能卡
bkuptocard 移动备份密匙打智能卡
delkey 删除选定的子密匙
addrevoker 添加撤回密匙
delsig 从选定的密匙中删除签名
expire 更改(子)密匙有效期
primary 标记选定的密匙为主密匙
toggle 切换私匙和公匙列表
pref 显示参数(高级)
showpref 显示参数(详细)
setpref 给选定的用户ID设置参数
keyserver 设置密匙服务器
passwd 更改密匙口令
trust 更改信任级别
revsig 撤销签名
revuid 撤销用户ID
revkey 撤销(子)密匙
enable 启用密匙
disable 禁用密匙
showphoto 显示照片ID
注意事项:
在导入密匙文件时,应注意密匙文件所在路径没有中文名称和空格,否则会出现出错提示,无法导入密匙。
参考: