请参照quickstart下面的SecureEncryptDecryptTest进行参照使用
?Sqltoy的字段加解密默认集成RSA算法,需要通过java类来生成公钥和私钥,并提供开发者自行扩展功能
6.13.1配置文件
![](https://img.kancloud.cn/7b/16/7b16470c9928a8e593a32e08fa765996_905x258.png)
6.13.2生成公钥和私钥
?注意:java RSA的公钥和私钥推荐使用java代码生成,否则会报一些无法识别的异常错误
请参照sqltoy项目下面的src/test/org.sagacity.sqltoy.utils.SecureUtils实现生成
![](https://img.kancloud.cn/e9/52/e952a7d860c10cd89b7e14b3ca9cd478_786x1033.png)
6.13.3在实体对象上注解对哪些字段加密
![](https://img.kancloud.cn/aa/48/aa48fa65231421327d3efb1b3c2340ff_1107x366.png)
?有几个加密字段就定义几个@Secure(field=”xxx”) 注意这里的field是实体对象属性名称,而非表字段名称
?Sqltoy同时考虑提供在加密的同时想保留一个脱敏值便于检索,比如手机号码:
数据库加密字段为:tel\_no,13927672376脱敏检索字段:tel\_no\_mask 139\*\*\*\*2376
此功能出发点是针对部分特殊场景诉求,在加密存储的同时,希望可以保留部分快捷检索定位的功能,而mask字段则保留了此功能
![](https://img.kancloud.cn/ab/3b/ab3bc986066d75fdc62cd1708090dac9_770x528.png)
数据库执行结果
![](https://img.kancloud.cn/12/c3/12c3b0d5839fedec1fa322ed4e458a03_1689x160.png)
?查询自动解密
![](https://img.kancloud.cn/14/59/14596e48e0ca51e8c2e2e7eb4e33a676_890x452.png)
![](https://img.kancloud.cn/bf/e4/bfe49a493bf2ea644c81ada742357796_704x220.png)
![](https://img.kancloud.cn/91/60/9160d4e8aaa8aa9c51d38ef1dd52515a_1623x321.png)
- 1.简介
- 开发历程
- 技术架构
- 问答了解
- 版本历史
- update-5.1.4、4.18.43
- update-5.1.2
- 早期历史
- 5.1.15.rc1
- 2.快速使用
- 示例与环境
- quickvo工具使用
- 用法说明
- 关键注意事项
- 严格VO(DTO)和POJO(entity)分层
- 3.教程
- spring项目搭建
- Toy-ORM 配置
- 详细配置参数
- 缓存功能
- 缓存配置、缓存扩展
- 扩展缓存框架配置
- 缓存翻译
- 其他缓存应用场景
- 公共功能
- 表(对象)关联
- 公共字段赋值
- 链式操作
- DTO与POJO互转
- 对象操作
- save + update
- delete + trunk
- load加载数据
- 唯一验证
- 树形数据
- sharding分库分表
- SQL操作
- sql文件规则
- filters说明
- 缓存翻译
- 分库分表
- 汇总、环比
- 行列转换
- 数据脱敏
- 格式化-数字日期
- sqlToy的sql查询基本规则
- Sql查询功能
- load操作
- get操作
- find操作
- 分页查询
- 并行查询
- execute操作
- executeSql
- executeStore
- 数据库特性
- 主键策略
- JSON等类型扩展支持
- 跨库说明--异种库兼容
- 数据库保留字处理
- 多源-多库-异库
- 多数据源
- Mongodb支持
- ElasticSearch支持
- 高级扩展
- 补充-if+fast+blank+value+loop
- 高级功能
- 完美sql
- 快速分页
- 缓存翻译
- 防止sql注入
- 字段加解密
- 扩展集成