创新路
我们一直在努力

Linux之MD5和GPG

一、MD5

    1.什么是MD5:是信息摘要算法,一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值,用于确保信息传输完整一致(摘抄至百度百科)

    2.MD5应用:常用于下载文件后查看MD5看文件是否一致

        cp lxy1.txt  lxy2.txt

        md5 lxy1.txt                  //文件内容一样,则下列MD5一样    

            d622eaa26141872b942438b85844cf2c  lxy1.txt

            d622eaa26141872b942438b85844cf2c  lxy2.txt

        echo "aaaa" >> lxy1.txt

        md5 lxy1.txt                //对文件改动,再看lxy1,MD5不一样了                 

            4aad64d2095dcc7580a9e9b8e4212576 lxy1.txt

二、GPG对称加密

    1.什么是GPG对称加密:采用单钥密码系统的加密方法,同一个密钥可以同时用作信息的加密和解密,这种加密方法称为对称加密,也称为单密钥加密,GPG呢就是一种对称加密中的加密方式,仅此而已

    2.GPG对称加密应用

        yum -y install gnupg2            //安装gnupg2

        加密:gpg -c lxy1.txt   

            //对称加密,根据提示输入两次口令生成加密文件,后缀为 .gpg

        cat lxy1.txt.gpg                    //查看为乱码,是加密后的数据

        解密:gpg -d lxy1.txt.gpg > lxy1.txt  

            //解密后保存,根据提示输入密码(如果已经解密过,会记录密码再次解密不用输密码)

        cat lxy1.txt                      //查看解密后的文件

 

三、GPG非对称加密

    1.什么是GPG非对称加密:非对称加密算法是一种密钥的保密方法,非对称加密算法需要两个密钥:公开密钥(publickey:简称公钥)和私有密钥(privatekey:简称私钥)。公钥与私钥是一对,如果用公钥对数据进行加密,只有用对应的私钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。(摘抄至百度百科)

    2.加密

      (1)创建公钥

        gpg –gen-key    

            //接收方创建自己的公钥、私钥,按提示操作

        gpg –list-keys    

            //查看公钥,公钥、私钥信息分别保存在~/.gnupg/pubring.gpg和secring.gpg文件内

        gpg -a –export lxy1 > /tmp/lxy1.pub   

            //–export导出密钥,后面跟姓名  -a密钥存储为ASCII格式

        scp /tmp/lxy1.pub 192.168.1.2:/tmp/     //将密钥传给另一方

      (2)导入公钥

        gpg –import /tmp/lxy1.pub    

            //–import导入发送方的公钥信息,以便在加密文件时指定对应的公钥

        echo "XXXXXXXXXXX" > test.txt

        gpg  -e  -r  lxy1  test.txt     

            //使用此密钥加密文件,-e 加密 -r 指定密钥后面跟密钥创建时的用户名,

        scp test.txt.gpg  192.168.1.3:/root    //加密的数据传给回

      (3)解密文件

        gpg -d test.txt.gpg > test.txt     //私钥解密文件

        cat test.txt                      //获得解密后的文件内容为xxxxx…

未经允许不得转载:天府数据港官方信息博客 » Linux之MD5和GPG

客官点个赞呗! (0)
分享到:

评论 抢沙发

评论前必须登录!

天府云博 - 做有态度的开发&运维&设计学习分享平台!

联系我们百度云主机