Spring-Boot-Encryption
一、背景与目标
随着网络技术的快速发展,数据安全问题日益突出。为了防止爬虫、防请求篡改、防请求重放,以及验证数据完整性,本方案结合HTTPS原理和微信支付加解密设计,通过对称加密、非对称加密、签名等技术,为API接口提供加解密设计和落地。
二、方案设计
对称加密、非对称加密、哈希算法、验签算法
- 对称加密:采用相同的密钥进行加密和解密。具有加密速度快、计算量小的优点,但密钥的安全传输是问题。在本方案中,对称加密主要用于数据的实际加密传输。
- 非对称加密:使用一对密钥(公钥和私钥)进行加密和解密。公钥用于加密数据,私钥用于解密数据。非对称加密可以确保密钥的安全传输,但加密速度较慢,不适合长文本加密。在本方案中,非对称加密主要用于对称密钥的加密。
- 哈希算法:无论用户输入什么长度的原始数据,经过计算后输出的密文都是固定长度的,只要原数据稍有改变,输出的“摘要”便完全不同