支付接口教程特别篇——公钥与私钥,双钥加密和数字签名

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: 不知道有没有高考志愿报了电子商务专业的同学,不出意外的话你们以后有门课就是电子支付原理。小编总结了一些私钥与公钥的知识,不一定完全正确,但至少可以帮助人们理解。

不知道有没有高考志愿报了电子商务专业的同学,不出意外的话你们以后有门课就是电子支付原理。
小编总结了一些私钥与公钥的知识,不一定完全正确,但至少可以帮助人们理解。
我们将以提问的方式循序渐进(其实也是我的心路历程),让我们开始。

什么是公钥与私钥?

总的来说,是一种采用RSA算法对网络数据进行加密传输的方式。采用这种方式加密,需要生成两串秘钥,公开的叫做公钥,未公开的称为私钥。它们都可以用于加密和解密文件。

什么是RSA算法?

RSA算法一直是使用范围最广的"非对称加密算法",早在1977年就已经诞生。具体的原理并不难,但不是我们今天讨论的重点。
只需要记住使用这种算法,加密和解密的时候所使用的密码不一样,但密码永远是成对出现的。
也就是说,一个箱子配备了两把钥匙,你用其中一把钥匙把箱子锁住,再用这把钥匙是打不开的,需要用另一把,反之亦然。

公钥和私钥到底哪个用来加密,哪个用来解密?

公钥和私钥是同时存在的一对秘钥,在本质上没有区别。
例如,A秘钥加密的文件可以用B秘钥解密(AB秘钥必须为一对),B秘钥加密的文件可以用A秘钥解密(不能自己解密自己)。只不过人人都知道的叫做公钥,只有一个人知道的叫做私钥。
所以,公钥和私钥只是人为赋予的名称,和哪个加密,哪个解密并没有直接的关系
之所以会存在这个问题,原因是使用的场景不同,我们先直观的看看这两种情况:

  1. 你有两个字母A和B,你用A加密了一个文件,此时只有B可以解密,然后你告诉所有人,这里有一个我用A加密过的文件。虽然人人都可以复制一份加密文件到自己的电脑上,但是他们并不知道B可以解密。然后你想把这个文件交给我,所以告诉我字母B可以解密,此时我也去复制了一份文件,并且用字母B进行解密,我也就看到了文件的内容。这样就达到了保护数据的目的,此时公钥用于加密,私钥用于解密

  2. 我有A、B两个字母,一开始就通知了所有人,想和我说话的同学请用字母B进行加密。这个时候你把用字母B加密过的文件公开了出来,并注明我来查收。但是,总有那么些坏人会查收一些不是留给自己文件,但是坏人拿到的是加密过的文件,而且并不知道A可以用来解密。所以只有当我拿到文件时,用A进行解密可以知道内容。也达到了保护数据的目的,此时仍然是公钥用于加密,私钥用于解密

上面两种情况都是公钥加密的情况,比较容易理解。那么我们想一下,如果用私钥加密,那么就意味着所有人都能解密我发出的信息,这种情况有什么用呢?答案就是数字签名

  1. 我现在使用字母A加密了我的文件(A并不会公开),然后我告诉所有人请用字母B来解密,现在大家都知道了我发的内容。但是,如果有人想伪造的文件呢。此时,如果你用B解密了密文,那么你自然会想到,这个文件肯定是由我发出的,因为能用字母B解密的文件肯定是字母A所加密的,而只有我才知道字母A。这样就达到了确认文件来源的目的。

  2. 我收到了一句话,内容是让我立即关闭电脑,还附带了一个数字签名,但是我认为只有我老婆才能让我关掉电脑。这个时候我去问她“你加密文件的公钥是什么”,她生气的告诉我是字母B(她的公钥),然后我用字母B去解密数字签名,解密出的内容是一句英语“Turn off computer”。我用百度已翻译发现是让我关闭电脑的意思。我明白了两个问题:第一,我能够解密数字签名,说明这句话确实是她发送给我的。第二,解密出来的内容和我收到的那句话意思是一样的,代表这句话并没有被人篡改过。那么此时,我欣然的关闭了我的电脑。

其实,第四个场景才是支付接口集成常遇到的情况,前面几个只是帮助理解双钥加密的原理罢了。当然,实际的数字签名要比这些文字复杂的多,比如说双人双钥的情况。

为什么有些支付接口要采用双钥加密?

目的无非就是两个:保证信息来源可靠性,和保证信息完整性
这两点在支付流程中是及其重要的,毕竟涉及到钱的东西,谁都不敢含糊。双钥加密目前并没有组织声称可以破解,所以能够最大限度的保障支付数据的安全。
比如,后面要介绍支付宝APP支付和银联支付就是双钥加密的。

为什么有的接口又不用呢?

实际上之前介绍的接口采用的是对称加密的算法,即加密与解密使用同样的秘钥。
虽然认为对称加密不如非对称加密安全,但是也没有任何迹象表面对称加密会被淘汰,而且对称加密更简单易用。
其实,对称加密最大的风险就在于秘钥管理。这就是为什么我们之前介绍的微信支付,在收集秘钥的时候,总是多次验证,而且秘钥只给你看一眼。


以上内容属于作者原创,特此声明,如需转载,请留言取得同意

目录
相关文章
|
3月前
|
安全 算法 数据安全/隐私保护
加密与安全:公开密钥加密、加密过程、数字签名等
这篇文章详细解释了非对称加密算法,包括公开密钥加密的原理、加密过程、数字签名的功能,以及它与对称加密的比较和实际应用场景。
加密与安全:公开密钥加密、加密过程、数字签名等
|
2月前
|
算法 安全 网络安全
概念区分:对称加密、非对称加密、公钥、私钥、签名、证书
概念区分:对称加密、非对称加密、公钥、私钥、签名、证书
81 0
|
3月前
|
数据安全/隐私保护
金盾金狮pbb爱问云点盾云加密视频录屏翻录提取教程
此软件专为录制加密网络课程视频设计,能轻松录制通常因加密而无法显示或录制的视频内容,并且录制过程隐蔽不被检测,输出文件为通用MP4格式。使用步骤简易:首先播放视频,然后打开软件并登录,即可开始录制。
|
3月前
|
JSON 算法 API
【Azure API 管理】APIM 配置Validate-JWT策略,验证RS256非对称(公钥/私钥)加密的Token
【Azure API 管理】APIM 配置Validate-JWT策略,验证RS256非对称(公钥/私钥)加密的Token
|
3月前
|
存储 安全 算法
公钥加密在网络安全中的角色
【8月更文挑战第24天】
50 0
|
3月前
|
数据安全/隐私保护
ev4a/ev6/ev8/evs/evpalyer2加密视频去水印翻录录屏教程
遇到.ev4a/.ev6/.ev8/.evs格式视频无法正常播放,及录屏时出现黑屏问题?本教程教你轻松解决!首先确保你已获得播放授权简要流程:1) 使用指定播放器打开加密视频;2) 运行破解工具解除录屏限制;3) 使用推荐工具完成录屏。快速转换为MP4格式,让你的视频分享无忧!请注意合法合规使用。
|
4月前
|
安全 数据安全/隐私保护
支付系统之微信支付08-身份认证,公钥和私钥的含义,私钥自己有的,作为唯一的控制系统,私钥加密,公钥解密是为了身份认证
支付系统之微信支付08-身份认证,公钥和私钥的含义,私钥自己有的,作为唯一的控制系统,私钥加密,公钥解密是为了身份认证
|
5天前
|
安全 算法 网络安全
网络防御的艺术:揭秘加密技术与安全意识的重要性
【10月更文挑战第30天】在数字化时代,网络安全已成为我们生活中不可或缺的部分。本文旨在揭示网络安全漏洞的成因,探讨如何通过加密技术和提升安全意识来构建坚固的网络防线。文章将深入分析常见的安全威胁,并分享实用的防护策略,帮助读者在日益复杂的网络环境中保持警觉和安全。
54 29
|
4天前
|
存储 安全 算法
网络安全的屏障与钥匙:漏洞防御、加密技术与安全意识
【10月更文挑战第31天】在数字时代的海洋中,网络安全犹如灯塔指引着信息的安全航行。本文将探讨网络安全的三大支柱:网络漏洞的防御策略、加密技术的应用以及提高个人和组织的安全意识。通过深入浅出的分析,我们将了解如何构建坚固的网络防线,保护数据不受威胁,并提升整个社会对信息安全的认识和重视。
|
4天前
|
SQL 安全 网络安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
【10月更文挑战第31天】本文将探讨网络安全和信息安全的重要性,以及如何通过理解和应用相关的技术和策略来保护我们的信息。我们将讨论网络安全漏洞、加密技术以及如何提高安全意识等主题。无论你是IT专业人士,还是对网络安全感兴趣的普通用户,都可以从中获得有用的信息和建议。
16 1
下一篇
无影云桌面