对称加密:加解密使用同一把钥匙 不能在金融领域使用,一旦发送方或者接收方泄露密钥,就会造成严重后果 非对称加密:加解密使用不同的钥匙 发送方发送的密文用A钥匙加密,接收方用B钥匙解锁 接收方用C钥匙加密响应信息,发送方用D钥匙看响应结果 使用RSA算法较多 什么是公钥私钥,加密签名和验证签名 公私钥是相对概念,一对密钥生成后,保存在生成者处的称为私钥 发布出去给大家使用的就是公钥 下面以支付宝为例子: 商户生成的一对钥匙,把私钥留下自己加密使用,将公钥提供给支付宝官方用以解密 一般使用RSA算法做加密 支付宝官方也会对应生成一组钥匙,支付宝自己留下私钥,把公钥给到商户用于解密 为了防止中途传输遭到恶意破坏和数据篡改 还需要配上一段签名,签名部分会被支付宝官方用钥匙解锁 如果得到的信息和传递的数据信息不同,则说明传输的数据遭到了篡改 支付宝处理完商户提交的数据后,将自己的相应信息和响应信息一起的签名信息发送回商户 商户再通过支付宝提供的公钥来反向解密签名内的信息,验证是不是支付宝相应的信息
对称加密:加解密使用同一把钥匙
不能在金融领域使用,一旦发送方或者接收方泄露密钥,就会造成严重后果
非对称加密:加解密使用不同的钥匙
发送方发送的密文用A钥匙加密,接收方用B钥匙解锁
接收方用C钥匙加密响应信息,发送方用D钥匙看响应结果
使用RSA算法较多
什么是公钥私钥,加密签名和验证签名
公私钥是相对概念,一对密钥生成后,保存在生成者处的称为私钥
发布出去给大家使用的就是公钥
下面以支付宝为例子:
商户生成的一对钥匙,把私钥留下自己加密使用,将公钥提供给支付宝官方用以解密
一般使用RSA算法做加密
支付宝官方也会对应生成一组钥匙,支付宝自己留下私钥,把公钥给到商户用于解密
为了防止中途传输遭到恶意破坏和数据篡改
还需要配上一段签名,签名部分会被支付宝官方用钥匙解锁
如果得到的信息和传递的数据信息不同,则说明传输的数据遭到了篡改
支付宝处理完商户提交的数据后,将自己的相应信息和响应信息一起的签名信息发送回商户
商户再通过支付宝提供的公钥来反向解密签名内的信息,验证是不是支付宝相应的信息
内网穿透 别人电脑访问京东商城可以直接访问域名,DNS会解析这个域名获得这个域名所在的公网IP地址 再通过这个公网IP地址找到它的服务 但是我的电脑是没有域名和公网IP地址的,因此会遇到,别人访问我的服务实际上是无法找到我的服务器的 下面以QQ聊天为例子 我的电脑上安装一个QQ,对方电脑安装一个QQ,然后我们两个人都发消息给QQ的服务器 QQ的服务器进行转发我们的消息,这样两边就可以完成通信了 我们也可以通过内网穿透服务商获得一个内网穿透服务器的随机IP地址 别人访问我们这个随机IP地址时,会请求到内网穿透服务商处,该服务商将对应的请求转发到我们的电脑 这样实际上我们就是将内网穿透服务商用作了一个赛博DNS 内网穿透主要用在:开发测试,智慧互联,远程控制,私有云等场景下 智慧互联方面:家庭智能设备连接同一个路由器,路由器家庭连接外网,绑定诸如花生壳子类的 服务商会给我们这个服务器分配一个域名,这样通过访问服务商,我们就可以远程连接到家庭设备
内网穿透
别人电脑访问京东商城可以直接访问域名,DNS会解析这个域名获得这个域名所在的公网IP地址
再通过这个公网IP地址找到它的服务
但是我的电脑是没有域名和公网IP地址的,因此会遇到,别人访问我的服务实际上是无法找到我的服务器的
下面以QQ聊天为例子
我的电脑上安装一个QQ,对方电脑安装一个QQ,然后我们两个人都发消息给QQ的服务器
QQ的服务器进行转发我们的消息,这样两边就可以完成通信了
我们也可以通过内网穿透服务商获得一个内网穿透服务器的随机IP地址
别人访问我们这个随机IP地址时,会请求到内网穿透服务商处,该服务商将对应的请求转发到我们的电脑
这样实际上我们就是将内网穿透服务商用作了一个赛博DNS
内网穿透主要用在:开发测试,智慧互联,远程控制,私有云等场景下
智慧互联方面:家庭智能设备连接同一个路由器,路由器家庭连接外网,绑定诸如花生壳子类的
服务商会给我们这个服务器分配一个域名,这样通过访问服务商,我们就可以远程连接到家庭设备
标签:QQ,支付宝,加密,穿透,-----,软件架构,IP地址,钥匙,内网 From: https://blog.csdn.net/2201_75960169/article/details/144631946<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.2.5.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>com.Alatus.Mall</groupId> <artifactId>Mall-order</artifactId> <version>0.0.1-SNAPSHOT</version> <name>Mall-order</name> <description>订单模块</description> <properties> <java.version>1.8</java.version> </properties> <dependencies> <dependency> <groupId>com.alatus</groupId> <artifactId>Mall-common</artifactId> <version>1.0.0</version> </dependency> <!-- 支付宝支付接入--> <dependency> <groupId>com.alipay.sdk</groupId> <artifactId>alipay-sdk-java</artifactId> <version>4.40.21.ALL</version> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.2.5.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>com.Alatus.Mall</groupId> <artifactId>Mall-order</artifactId> <version>0.0.1-SNAPSHOT</version> <name>Mall-order</name> <description>订单模块</description> <properties> <java.version>1.8</java.version> </properties> <dependencies> <dependency> <groupId>com.alatus</groupId> <artifactId>Mall-common</artifactId> <version>1.0.0</version> </dependency> <!-- 支付宝支付接入--> <dependency> <groupId>com.alipay.sdk</groupId> <artifactId>alipay-sdk-java</artifactId> <version>4.40.21.ALL</version> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>