使用开源PGP技术实现Solaris 10下的加密解密(图)
互联网 发布时间:2008-10-08 19:02:37 作者:佚名 我要评论
一、PGP(Pretty Good Privacy)技术简介
1、PGP简介
PGP技术是一个基于非对称加密算法RSA公钥体系的邮件加密技术,也是一种操作简单、使用方便、普及程度较高的加密软件。PGP技术不但可以对电子邮件加密,防止非授权者阅读信件;还能对电子邮件附加数字签名
三、Gunpg在Solais下的配置
确定系统中已经安装了GnuPG后,就可以开始下面加密和签名的工作了。
1、生成密匙
用户应用GnuPG,首先要有一对自己的密钥。所以,第一步就是产生一对密钥。gpg命令通过大量参数提供所需要的几乎所有操作。其中,参数“-gen-key”就是用来产生一对密钥的。在安装了GPG的Linux系统上可以运行以下命令:
#gpg --gen-key
命令开始运行后,首先,会看到版本和路径信息。随后需要回答一系列问题,以帮助产生一对密钥。其中,DSA是数字签名算法,RSA和ElGamal是两种不同原理的非对称密钥算法。通常可以选择“1”,这样生成的密钥可以同时用作签名和加密两种用途。
接着,会要求选择密钥的长度。这里的密钥长度有768、1024和2048位三种。如图 3 。
图3:选择密钥使用的长度
显然,密钥越长越安全,但太长又会影响使用的速度。所以,可以根据不同的需要选择适合的长度。笔者选择了的1024位密钥。另外,还需要设定密钥过期的时间,原则上,密钥使用的频率越高,密钥有效的时间越长,被攻击的可能性就越大。
所以,要根据应用的实际情况综合考虑,确定一个适当的时间长度。需要注意的是,密钥要定期更换,建议绝对不要永远使用同一对密钥。
最后,需要输入一些个人信息,包括真实姓名、电子邮件地址等,用来识别密钥,最好是如实填写。然后,必须输入一个密码。密码用来保护密钥,没有这个密码,任何人都不能看到密钥本身的内容。密码是在密钥文件泄露后惟一的保密措施,它的最大敌人是暴力破解和字典攻击。
所以,一定要选择一个强壮的密码,来有效地对抗这些攻击。 密码确定以后,系统开始运算。这时需要随便地敲击键盘或是移动鼠标,以产生一些随机数,协助密钥的顺利生成。注意,如果没有以上动作,很可能最终不能产生密钥。系统运算完成后,会出现类似图4的信息:
图4:成功生成钥匙文件
2、查看密钥
使用下面的命令:
gpg --list-keys
你会看到和图 5相似的输出:
图5:查看所有密钥
3、其他常用命令:
查看所有公钥:
gpg --list-public-key
查看所有私钥:
gpg --list-secret-key
列出所有签名:
gpg --list-sig
4、公钥的使用
接下来要做的工作是输出一个用来发布的公钥:
gpg --export -a -o yourpubkey.asc
-a 是ASCII编码形式,-o 说明输出公钥到 yourpubkey.asc 文件。要发布这个公钥,可以将yourpubkey.asc文件放在你的主页上,也可以通过邮件寄给朋友。
当你收到朋友发来的公钥,你需要将这把公钥导入你的钥匙库。例如,他寄给你的公钥是 friendpubkey.asc ,使用下面命令就可以导入进钥匙库:
gpg --import friendpubkey.asc
5、生成一份废弃证书
在生成钥匙对后,还应该为公钥创建一份废弃证书。这不是废弃刚刚生成的钥匙,而是提供了一种停止钥匙被继续公开使用的安全方法。当忘记了口令句,或者该口令句被窃取,或者更换了联系邮件地址,或系统崩溃等情况下,可以使用该废弃证书宣告原来的公钥无效。使用--gen-revoke选项生成废弃证书:
#gpg --output revoke.asc --gen-revoke [user-id: goodcjh@2911.net]
确认废弃原因后,输入用来生成钥匙的口令句。注意,如果省略了--output revoke.asc选项,则废弃证书只会被显示在屏幕上,需要进行复制、粘贴操作,并保存为文件才行。
四、Gunpg在Solaris下的应用
1、对文件进行加密和解密
Gunpg使用的是非对称的密钥体系,用户拥有一对密钥,包括一个公钥和一个私钥。公钥对外公布,私钥则由自己保存。使用公钥加密的数据可以用私钥解密,同样,使用私钥加密的数据可以用公钥解密。
2、使用GnuPG进行数字签名(sign)
利用GnuPG数字签名的方式有三种: 1.显式数字签名,即直接把数字签名添加在文件内容的后面。这样做的好处是简单,可以直接阅读信息。 2.隐匿数字签名,即签名后隐藏文件内容。这样做的好处是把真实信息隐藏在签名档中。如果想要查看信息,使用命令:
#gpg -d goodcjh.file.asc
3、把数字签名单独存放于一个文件。
#gpg -ba goodcjh.file
这时目录下会出现一个cjh.file.asc的签名文件。如果此时修改原文件test.file的内容,再次校验数字签名档时就会被警告。
使用GnuPG进行数据加密和解密,例如,现有一份文本文件,内容为“goodcjh using GnuPG on solaris”。使用如下命令进行数据加密:
#gpg -ea -r goodcjh test.txt
-e表示加密选项;-a表示使用ASCⅡ字符,如果不指定,默认输出为二进制文件;-r指定某用户的公钥;text.txt为所要加密的文件名。
解密操作使用命令:
#gpg -d goodcjh.file.asc >test.file
一般可以用以下命令来生成一个同时带有数字签名和加密的文档:
#gpg -o test.gpg -ea -s -r goodcjh.test.file
其中-o表示输出文件名;-s表示加入数字签名。
另外在GPG的使用过程中,可以进行多次加密使数据更加安全。命令如下:
#gpg -eas -r goodcjh test.file -o test.gpg.nc1
#gpg -eas -r goodcjh test.gpg.nc1 -o test.gpg.nc2
#gpg -eas -r goodcjh test.gpg.nc2 -o test.gpg.nc3
解密操作过程类似。
确定系统中已经安装了GnuPG后,就可以开始下面加密和签名的工作了。
1、生成密匙
用户应用GnuPG,首先要有一对自己的密钥。所以,第一步就是产生一对密钥。gpg命令通过大量参数提供所需要的几乎所有操作。其中,参数“-gen-key”就是用来产生一对密钥的。在安装了GPG的Linux系统上可以运行以下命令:
#gpg --gen-key
命令开始运行后,首先,会看到版本和路径信息。随后需要回答一系列问题,以帮助产生一对密钥。其中,DSA是数字签名算法,RSA和ElGamal是两种不同原理的非对称密钥算法。通常可以选择“1”,这样生成的密钥可以同时用作签名和加密两种用途。
接着,会要求选择密钥的长度。这里的密钥长度有768、1024和2048位三种。如图 3 。
图3:选择密钥使用的长度
显然,密钥越长越安全,但太长又会影响使用的速度。所以,可以根据不同的需要选择适合的长度。笔者选择了的1024位密钥。另外,还需要设定密钥过期的时间,原则上,密钥使用的频率越高,密钥有效的时间越长,被攻击的可能性就越大。
所以,要根据应用的实际情况综合考虑,确定一个适当的时间长度。需要注意的是,密钥要定期更换,建议绝对不要永远使用同一对密钥。
最后,需要输入一些个人信息,包括真实姓名、电子邮件地址等,用来识别密钥,最好是如实填写。然后,必须输入一个密码。密码用来保护密钥,没有这个密码,任何人都不能看到密钥本身的内容。密码是在密钥文件泄露后惟一的保密措施,它的最大敌人是暴力破解和字典攻击。
所以,一定要选择一个强壮的密码,来有效地对抗这些攻击。 密码确定以后,系统开始运算。这时需要随便地敲击键盘或是移动鼠标,以产生一些随机数,协助密钥的顺利生成。注意,如果没有以上动作,很可能最终不能产生密钥。系统运算完成后,会出现类似图4的信息:
图4:成功生成钥匙文件
2、查看密钥
使用下面的命令:
gpg --list-keys
你会看到和图 5相似的输出:
图5:查看所有密钥
3、其他常用命令:
查看所有公钥:
gpg --list-public-key
查看所有私钥:
gpg --list-secret-key
列出所有签名:
gpg --list-sig
4、公钥的使用
接下来要做的工作是输出一个用来发布的公钥:
gpg --export -a -o yourpubkey.asc
-a 是ASCII编码形式,-o 说明输出公钥到 yourpubkey.asc 文件。要发布这个公钥,可以将yourpubkey.asc文件放在你的主页上,也可以通过邮件寄给朋友。
当你收到朋友发来的公钥,你需要将这把公钥导入你的钥匙库。例如,他寄给你的公钥是 friendpubkey.asc ,使用下面命令就可以导入进钥匙库:
gpg --import friendpubkey.asc
5、生成一份废弃证书
在生成钥匙对后,还应该为公钥创建一份废弃证书。这不是废弃刚刚生成的钥匙,而是提供了一种停止钥匙被继续公开使用的安全方法。当忘记了口令句,或者该口令句被窃取,或者更换了联系邮件地址,或系统崩溃等情况下,可以使用该废弃证书宣告原来的公钥无效。使用--gen-revoke选项生成废弃证书:
#gpg --output revoke.asc --gen-revoke [user-id: goodcjh@2911.net]
确认废弃原因后,输入用来生成钥匙的口令句。注意,如果省略了--output revoke.asc选项,则废弃证书只会被显示在屏幕上,需要进行复制、粘贴操作,并保存为文件才行。
四、Gunpg在Solaris下的应用
1、对文件进行加密和解密
Gunpg使用的是非对称的密钥体系,用户拥有一对密钥,包括一个公钥和一个私钥。公钥对外公布,私钥则由自己保存。使用公钥加密的数据可以用私钥解密,同样,使用私钥加密的数据可以用公钥解密。
2、使用GnuPG进行数字签名(sign)
利用GnuPG数字签名的方式有三种: 1.显式数字签名,即直接把数字签名添加在文件内容的后面。这样做的好处是简单,可以直接阅读信息。 2.隐匿数字签名,即签名后隐藏文件内容。这样做的好处是把真实信息隐藏在签名档中。如果想要查看信息,使用命令:
#gpg -d goodcjh.file.asc
3、把数字签名单独存放于一个文件。
#gpg -ba goodcjh.file
这时目录下会出现一个cjh.file.asc的签名文件。如果此时修改原文件test.file的内容,再次校验数字签名档时就会被警告。
使用GnuPG进行数据加密和解密,例如,现有一份文本文件,内容为“goodcjh using GnuPG on solaris”。使用如下命令进行数据加密:
#gpg -ea -r goodcjh test.txt
-e表示加密选项;-a表示使用ASCⅡ字符,如果不指定,默认输出为二进制文件;-r指定某用户的公钥;text.txt为所要加密的文件名。
解密操作使用命令:
#gpg -d goodcjh.file.asc >test.file
一般可以用以下命令来生成一个同时带有数字签名和加密的文档:
#gpg -o test.gpg -ea -s -r goodcjh.test.file
其中-o表示输出文件名;-s表示加入数字签名。
另外在GPG的使用过程中,可以进行多次加密使数据更加安全。命令如下:
#gpg -eas -r goodcjh test.file -o test.gpg.nc1
#gpg -eas -r goodcjh test.gpg.nc1 -o test.gpg.nc2
#gpg -eas -r goodcjh test.gpg.nc2 -o test.gpg.nc3
解密操作过程类似。
相关文章
- “CMOS密码”就是通常所说的“开机密码”,主要是为了防止别人使用自已的计算机,设置的一个屏障2023-08-01
QQScreenShot之逆向并提取QQ截图--OCR和其他功能
上一篇文章逆向并提取QQ截图没有提取OCR功能, 再次逆向我发现是可以本地调用QQ的OCR的,但翻译按钮确实没啥用, 于是Patch了翻译按钮事件, 改为了将截图用百度以图搜图搜索.2023-02-04- QQ截图是我用过的最好用的截图工具, 由于基本不在电脑上登QQ了, 于是就想将其提取出独立版目前除了屏幕录制功能其他都逆出来了, 在此分享一下2023-02-04
非系统分区使用BitLocker加密导致软件无法安装的解决方法
很多电脑用户在考虑自己电脑磁盘分区安全时会采用 Windows 自带的 BitLocker 加密工具对电脑磁盘分区进行加密。但有些人加密后就会忘记自己设置的密码从而导致在安装其它软2020-11-25防止离职员工带走客户、防止内部员工泄密、避免华为员工泄密事件的发生
这篇文章为大家详细介绍了如何才能防止离职员工带走客户、防止内部员工泄密、避免华为员工泄密事件的发生,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2017-06-27彻底防止计算机泄密、重要涉密人员离职泄密、涉密人员离岗离职前防范举
近些年企业商业机密泄漏的事件屡有发生,这篇文章主要教大家如何彻底防止计算机泄密、重要涉密人员离职泄密、告诉大家涉密人员离岗离职前的防范举措,具有一定的参考价值,2017-06-27- 最近有电脑用户反应量子计算机可以破解下载的所有的加密算法吗?其实也不是不可以,下面虚拟就为大家讲解买台量子计算机,如何分分钟破解加密算法2016-09-26
怎么破解Webshell密码 Burpsuite破解Webshell密码图文教程
webshell是以asp、php、jsp或者cgi等网页文件形式存在的一种命令执行环境,一种网页后门。黑客通常会通过它控制别人网络服务器,那么怎么破解webshell密码呢?一起来看看吧2016-09-19- 本文讨论了针对Linux系统全盘加密的冷启动攻击,大家都认为这种攻击是可行的,但执行这么一次攻击有多难?攻击的可行性有多少呢?需要的朋友可以参考下2015-12-28
防止泄露公司机密、企业数据防泄密软件排名、电脑文件加密软件排行
面对日渐严重的内部泄密事件,我们如何守护企业的核心信息,如何防止内部泄密也就成了摆在各个企业领导面前的一大问题。其实,针对内网安全,防止内部信息泄漏早已有了比较2015-12-17
最新评论