邮箱存数据库选用哪种加密方案?

1. 问题描述

想要加密保存用户的邮箱,因为其他业务会读取邮箱,所以需要可逆的加密方式
还需要能去重。请教下大佬们有没有好的方案推荐,或者说最佳实践?

看了下面这个方法似乎不太合适,生成的字符串太长,不能作为唯一识别

// 生成的加密字符串为了防篡改带了签名,每次加密都会改变,如果想要去重还需要单独加个字段存唯一标识
Crypt::encryptString();
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
最佳答案

AES-128-CBCAES-256-CBC且使用固定的key和iv

  1. 同一字符串多次加密后的密文相同(方便去重和查询)
  2. 密文相对较短(相较其它加密方案)
1年前 评论
tomcath (楼主) 1年前
讨论数量: 9

对称加密算法皆可。例如DES。

1年前 评论
tomcath (楼主) 1年前
xiaochong0302

一般加密后都会比较长,你搞个中间表呗

1年前 评论

AES-128-CBCAES-256-CBC且使用固定的key和iv

  1. 同一字符串多次加密后的密文相同(方便去重和查询)
  2. 密文相对较短(相较其它加密方案)
1年前 评论
tomcath (楼主) 1年前

即使使用对称加密,后期如果需要改秘钥就麻烦了。可以邮箱字段md5加密,冗余一个字段(或者加一个中间表)保存邮箱原始数据

1年前 评论
tomcath (楼主) 1年前
╰ゝSakura

其他业务会读取邮箱,不应该统一从你提供的服务出去嘛,你在服务里面做脱敏啊,大佬

1年前 评论
tomcath (楼主) 1年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!