美文网首页
加密算法简述

加密算法简述

作者: 长腿小西瓜 | 来源:发表于2017-10-24 17:12 被阅读94次

引子

最近在做google商店支付时,经常需要对支付结果进行解密校验,这是典型的RSA算法。于是把自己理解的加解密算法做一个汇总。

算法类型

  • 对称加密
  • 不对称加密
  • 不可逆加密算法。

我用一把锁举例

对称加密

加密,解密都用同一把钥匙;所以谁拿到了钥匙,就可以打开锁。常见对称加密算法有:DES、AES

不对称加密

  • 一把锁有A、B两把钥匙,两把钥匙都可以打开和锁上锁。但是用同一把锁,不能锁锁后,再打开锁。必须由另外一把锁打开。在算法上面成为公钥和私钥。常见的不对称加密有:RSA、SHS
  • 公钥和私钥由校验方提供,生成。公布出去的称为公钥,自己保密的称为私钥(外部不可见)。

不可逆算法

则表示锁一旦锁上,任何钥匙都打不开。常见的不可逆算法: MD5

RSA算法应用举例

  • Druid在 Spring Boot 中配置数据库密码加密
    • 生成密码的密文
      java -cp druid-1.1.4.jar com.alibaba.druid.filter.config.ConfigTools 13uWcIRV0a973m=oLQ

      image.png
    • 配置文件配置

image.png

* 源代码分析

image.png

* 角色说明
Druid用私钥加密,用公钥解密

  • 在google支付中的使用

    • 支付流程
      google会提前将公钥给到应用开发商,再讲支付结果用对应的私钥加密后返回给应用。应用开发商用公钥解密。
    • 角色说明
      google给出去的是公钥,自己留着的是私钥
  • 对外开放的接口,关键数据采用RSA算法机密。

    • token换用户id
      生成成对密钥,将公钥发给第三方,将token加密后,传回来,应用利用私钥解密后,返回关键数据。

MD5算法应用举例

一般用户表的密码会使用MD5加密后做持久化。

相关文章

网友评论

      本文标题:加密算法简述

      本文链接:https://www.haomeiwen.com/subject/dyrxpxtx.html