专栏名称: 芋道源码
纯 Java 源码分享公众号,目前有「Dubbo」「SpringCloud」「Java 并发」「RocketMQ」「Sharding-JDBC」「MyCAT」「Elastic-Job」「SkyWalking」「Spring」等等
今天看啥  ›  专栏  ›  芋道源码

被问懵了,加密后的数据如何进行模糊查询?

芋道源码  · 公众号  · Java  · 2025-02-23 16:40
    

主要观点总结

文章介绍了加密数据的模糊查询方法,包括沙雕做法、常规做法和超神做法,并详细解释了各种方法的实现思路、优劣性和使用场景。同时,文章还介绍了一些电商平台的密文字段检索方案,最后推荐了一种基于算法层面的常规做法二作为优化方案。

关键观点总结

关键观点1: 加密数据的模糊查询方法

文章介绍了三种加密数据的模糊查询方法:沙雕做法、常规做法和超神做法,并详细解释了它们的实现思路、优劣性和适用场景。

关键观点2: 沙雕做法的缺点

沙雕做法包括将数据全部解密和建立明文映射表两种方式,但都存在严重的问题。全部解密会导致内存占用巨大,而建立明文映射表则违反了数据加密的安全诉求。

关键观点3: 常规做法的优点和缺点

常规做法包括在数据库中使用加密函数进行解密查询和分词组合加密存储两种方式。优点是实现成本低,但缺点是无法利用数据库索引优化查询,且可能无法与程序实现一致的加解密算法。

关键观点4: 常规做法二的实现思路和优缺点

常规做法二通过对密文数据进行分词组合,将结果集加密后存储到扩展列,利用数据库索引优化查询速度。实现思路较为划算,但需要额外存储成本。

关键观点5: 超神做法的复杂性和挑战

超神做法从算法层面考虑,需要设计新的有序、非不可逆的算法。这需要专业算法工程师深入研究,实现难度较大。

关键观点6: 推荐的做法

文章推荐采用常规做法二,这是一种折中的做法,虽然需要额外的存储成本,但可以利用数据库索引优化查询速度,实现起来不算复杂,使用起来也较为简单。

关键观点7: 其他信息

文章还介绍了一些电商平台的密文字段检索方案,并提供了相关链接供读者参考。最后,文章呼吁读者加入其知识星球,提升技术能力。


文章预览

👉 这是一个或许对你有用 的社群 🐱 一对一交流/面试小册/简历优化/求职解惑,欢迎加入 「 芋道快速开发平台 」 知识星球。 下面是星球提供的部分资料:   《项目实战(视频)》 :从书中学,往事上 “练 ” 《互联网高频面试题》 :面朝简历学习,春暖花开 《架构 x 系统设计》 :摧枯拉朽,掌控面试高频场景题 《精进 Java 学习指南》 :系统学习,互联网主流技术栈 《必读 Java 源码专栏》 :知其然,知其所以然 👉 这是一个或许对你有用的开源项目 国产 Star 破 10w+ 的开源项目,前端包括管理后台 + 微信小程序,后端支持单体和微服务架构。 功能涵盖 RBAC 权限、SaaS 多租户、数据权限、商城、支付、工作流、大屏报表、微信公众号、CRM 等等功能: Boot 仓库:https://gitee.com/zhijiantianya/ruoyi-vue-pro Cloud 仓库:https://gitee.com/zhijiantianya/yudao-cloud ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览