Linux之一张图让你搞懂DES与RSA混合加密技术(十三)

2024-05-07 22:38

本文主要是介绍Linux之一张图让你搞懂DES与RSA混合加密技术(十三),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Linux之一张图让你搞懂DES与RSA混合加密技术 

1.RSA加解密原理
第1步:ipB先给A发送B公钥,ipA用B公钥加密A公钥发送给ipB,ipB拿到后,用B私钥去取里面内容,ipB拿到A公钥。 
第2步:双方通信前,先把自己公钥发给对方!用对方公钥直接加密后发送,接收方用自己的私钥去解密。2.RSA和DES混合加密技术阐述
<1>.对称加密(DES)是加密和解密秘钥相同
<2>.非对称加密(RSA)是公钥加密,私钥解密
<3>.例子:用户A发送数据给用户B.首先用户A先用DES把要发送的数据加密,接收到用户B的RSA公钥后,使用用户B的RSA公钥对DES秘钥加密;
然后将加密数据(DES加密)和加密的DES秘钥(由RSA加密)通过网络发给用户B。此时用户B用自己的RSA私钥把加密的DES秘钥解密,然后使用解密后的DES秘钥来解密发送过来的数据,就得到了用户A发送过来的明文数据。3.基础问题
问题一、
PKI,CA和数字证书的关系是什么?
答:CA(CA是第三方权威的证书颁发机构)是PKI的核心执行机构,是PKI的主要组成部分。数字证书是由CA颁发的,所以三者是从属关系,既数字证书从属于CA从属于PKI.数字证书--->CA(Certificate Authority:证书颁发机构)---->PKI(Publick Key Infrastructure:公钥基础设施)问题二、什么是CSR ? 什么是公钥和私钥?
答:CSR是Cerificate Signing Request的英文缩写,即证书请求文件。我们想要证明
我们的网站是可信的,数据传输是加密的,我们就需要由第三方CA机构颁发的证书来证明,
比如Symantec,GeoTrust等等。而想要申请这样的证书,我们的第一步就是需要生成我们自己的CSR文件。 CSR需要由申请人提供域名、公司名称、部门、省份、城市、国家借助相关工具生成,
申请人使用工具同时会生成证书请求文件(CSR)和私钥文件,其中的证书请求文件就是CSR文件,
这两个文件是相互匹配的,我们将CSR文件提交给CA申请证书,经过CA身份对申请者身份进行审核后,
颁发证书公钥,申请人收到证书文件后,将证书公钥文件配合私钥文件转化成服务器对应的格式的文件
部署在HTTP服务器上面,这样我们的网站就可信了。**********************************************************************************
一、公钥加密  假设一下,我找了两个数字,一个是1,一个是2。我喜欢2这个数字,就保留起来,不告诉你们
(私钥),然后我告诉大家,1是我的公钥。我有一个文件,不能让别人看,我就用1加密了。别人找到了这个文件,但是他不知道2就是解密的私钥啊,所
以他解不开,只有我可以用 数字2,就是我的私钥,来解密。这样我就可以保护数据了。我的好朋友x用我的公钥1加密了字符a,加密后成了b,放在网上。别人偷到了这个文件,但是别人解不开,因
为别人不知道2就是我的私钥, 只有我才能解密,解密后就得到a。这样,我们就可以传送加密的数据了。二、私钥签名 如果我用私钥加密一段数据(当然只有我可以用私钥加密,因为只有我知道2是我的私钥),结果所
有的人都看到我的内容了,因为他们都知 道我的公钥是1,那么这种加密有什么用处呢?但是我的好朋友x说有人冒充我给他发信。怎么办呢?我把我要发的信,内容是c,用我的私钥2,加密,加密后
的内容是d,发给x,再告诉他 解密看是不是c。他用我的公钥1解密,发现果然是c。 这个时候,他会想到,能够
用我的公钥解密的数据,必然是用我的私钥加的密。只有我知道我得私钥,因此他就可以确认确实是我发的东西。这样我们就能确认发送方身份了。这个过程叫做数字签名。当然具体的过程要稍微复杂一些。用私钥来加密数
据,用途就是数字签名。总结:公钥和私钥是成对的,它们互相解密。
公钥加密,私钥解密。
私钥数字签名,公钥验证。

这篇关于Linux之一张图让你搞懂DES与RSA混合加密技术(十三)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/968593

相关文章

Linux脚本重定向

Shell中可能经常能看到:>/dev/null  2>&1  eg:sudo kill -9 `ps -elf |grep -v grep|grep $1|awk '{print $4}'` 1>/dev/null 2>/dev/null 命令的结果可以通过%>的形式来定义输出 /dev/null 代表空设备文件 > 代表重定向到哪里,例如:echo "123" > /home/1

Linux下网卡开机自动加载

新安装的虚拟机发现自动起不了网卡接口,每次启动都要 # ifup ens33 则比较麻烦,将下面eht1改成自己的网卡名称的文件修改即可 编辑/etc/sysconfig/network-scripts/ifcfg-eth1 ONBOOT=yes

Linux删除大文件rm -rf的问题

请几天,我删除系统汇总的大文件,大约100G左右,当我使用rm -rf  xxxx.log删除后,使用df -h发现空间并未释放。 一开始以为是由于磁盘虚拟挂载,导致我删除的文件并不是当前目录的文件。但后来发现并不是。 我在网络上搜索发现都是  要: lsof | grep delete kill -9 xxx 但是我觉得这样不安全。 比如文件被进程锁定,或者有进程一直在向这个文件写数

pl- 配置远程打印机,用linux命令行打印

问题来源: 实验室打印机认证过我台式机的IP,但是里面只有linux命令行界面,只当作服务器用…又不想每次用笔记本想打印都折腾换网线…so… 问题描述:如何用命令行连接网络打印机,并用命令行控制打印 工具:pladmin 配置, pl 打印 参考资料: 在 Oracle® Solaris 11.2 中配置和管理打印 极客学院happypeter1983 打印(可以看参数) 材料: 打印

linux ndk编译搭建测试

一、ndk下载 NDK 下载  |  Android NDK  |  Android Developers 二、ndk环境变量配置 ndk解压: unzip android-ndk-r26d-linux.zip  环境变量配置:  export NDK_HOME=/rd/own/test/android-ndk-r26d/  export PATH=$PATH:$NDK_HOME

dom4j处理xml在linux环境下中文乱码

最近在搞一个webservice 的soap接口数据同步,接口提供方就是个鸟人,两个接口来来回回写了2个月才调通,我也真是服了 ———**——– 好了吐槽到此结束,下面说说乱码的问题 dom4j 解析xml 就是一个把字符串、文件、输入流转换成文本(Document )再处理的过程;下面附上代码 InputStream in = new ByteArrayInputStream(fyxx.

【LinuxC++】Linux环境下C++编程

在阅读的过程中有任何问题,欢迎一起交流 邮箱:1494713801@qq.com   QQ:1494713801   在linux下,开发工具被切割成一个个独立的小工具。各自处理不同的问题。例如: 编辑器(emacs, vim)用来进行编辑程序的 调试器(gdb) 用来调试程序 编译器(GCC) 用来编译和链接程序的 性能分析工具(gcov, gprof) 用来优化程序的 文档生成器

Linux系统下qtcreator每次打开文件都要重新编码问题

在Linux系统下qtcreator每次打开windows系统下的.c文件都会提示编码问题, 提示错误:“Could not decode “xxx” with “UTF-8”-encoding. Editing not possible "中文显示乱码,不能编译,如下图: 解决: 1、点击上面错误提示条右边“Select Encodeeing”按钮 选GBK / windows-936…,按编

编译报错go: unsupported GOOS/GOARCH pair linux /amd64

目录 背景 解决 背景 在windows下交叉编译go程序,目标平台是linux、amd64。 执行指令: GOOS=linux GOARCH=amd64 go build -v或set GOOS=linux & set GOARCH=amd64 & go build -v 报错 go: unsupported GOOS/GOARCH pair linux /amd64

Linux搭建Tomcat+MySQL环境

以阿里云上最新安装好的Centos8为例,SSH工具是FinalShell 更新yum到阿里云的源 我这边安装好之后yum源已经是国内的了,所以实际上这一步可以省略,如果出现安装软件时下载速度很慢,可以通过这一步修改yum源 cd /etc/yum.repos.d 如下图所示 对着CentOS-Base.repo文件右键点打开,之后将https://mirrors.aliyun.com/re