zoukankan      html  css  js  c++  java
  • 加密的相关基础

    一般在用到加密时,有两种情况,一种是可逆的,另一种是不可逆的。

    可逆的比如说对cookie进行加密之后,当然还需要对其进行解密,而不可逆的加密类似于一个签名,用于验证这个信息有没有被篡改过。

    现在加密方式有两种,一种是对称加密,另一种是非对称加密。对称加密就是双方各有一个key,然后用这个key来进行加密和解密。目前cookie采用了对称加密方式

    非对称加密中,常用到RSA加密,这种加密方式有一个公钥和私钥,服务端保留私钥,客户端保留公钥,这个公钥可以被公开,不怕被泄露,服务端只要保管好私钥就可以了。

    RSA的流程一般是:客户端将数据用公钥进行加密,传送到服务端。

               服务端接收到加密后的数据,用私钥进行解密。

             服务端处理完数据向客户端返回时,用私钥进行签名。

             客户端收到签名后的数据,用公钥进行验签(签名的参数顺序必须一致)

    这些也就是大致上RSA的加密解密,签名验签的逻辑了,公钥是通过私钥生成的,私钥一定要保留好私钥。不要被泄露。

    MD5和SHA1加密,这两种加密不可逆的,一般在支付时,双方保留一个key,每次发送请求时,都需要将这个key加入到参数中,然后用md5加密,形成一个新的sign。然后接收方,在用参数和key结合起来的

    字符串进行加密,加密后的串和这个sign进行比较,如果不一致则说明参数被篡改过,或者不是其他人伪造的请求。(参数中一般除了这个key还会带一个时间戳)

  • 相关阅读:
    win10下载文件夹变成了英文了如何解决
    Win10-更改c盘下的用户文件夹名
    Linux下/proc目录简介
    Linux高级运维工程师:100道面试题整理
    centos8安装 rabbitmq
    针对美国、加拿大和意大利的大型僵尸网络
    CentOS8配置网卡为静态IP
    分布式版本控制系统-Github
    KVM三企业级虚拟化技术KVM网络及脚本管理
    KVM二企业级虚拟化技术KVM管理
  • 原文地址:https://www.cnblogs.com/y8932809/p/6295694.html
Copyright © 2011-2022 走看看