我要设计一个 saas 系统,怎么设计一些敏感数据加密?

4 天前
 longmeier90
```
我准备用 go 开发一个 saas 系统,里面设计到 [库房] -> [商品] -> [添加] 功能

但是租户不愿意让我们知道他们的商品进货价,那么我怎么设计系统里面字段加密,让客户登录时自己看到。
其他任何人包括软件提供商都不能看到。
1.成熟的解决方案吗?

```
1804 次点击
所在节点    程序员
38 条回复
realpg
3 天前
@sillydaddy #20
为啥要求和?
什么系统什么场景会有商品上游渠道单价求和这个操作?
realpg
3 天前
@sillydaddy #20
人家的需求就是 保密成本单价 让接触系统的人看不到 这是一个非常常见且合理的需求

我都经手过很多个这个需求的系统开发 比如牙科系统的牙冠成本价 医生都知道 医院都知道 但是他们完全不希望给他们开发系统的开发商和运维商知道

能不解密排序 能不解密比价 走索引 是基本要求

而你说这种 ax+by+c 场景,你确定是要写在 SQL 里面进行计算的吗?什么场景会有这种要求?

不都是取出来在程序侧计算,而程序侧是有解密的系数的 直接解开爱怎么加怎么加
sillydaddy
3 天前
@realpg 如果仅仅是需要排序或者索引,那你说的方法当然可行。
加总求和的操作,你怎么知道没有呢?求出某个商品在一段时间内的进货总价,不就是数量乘以价格,再加总吗?
当然你可以说这个计算可以解密后放在前端进行,如果是这样,那前面几楼的方案也可以啊,计算都放前端,数据库只是起一个储存数据的作用。
问题的根本就是,你不知道他有哪些计算的需求,你说的缩放,也仅仅能够起到排序这一个作用。
realpg
3 天前
@sillydaddy #23
你就杠吧
我都开发过多少套这种程序了
你不要虚空跟我杠你所谓得哪些需求需要前端 哪些不需要前端

假设一个系统内,有 100 万条商品信息,其中成本一项需要加密
显而易见,你不能每次操作都把 100 万条商品信息全取出来让程序去排

“按照成本排序并分页显示”
“筛选成本在一定金额范围内的并分页显示”

这是任何一个商城类系统都雷打不动的

这个得实现只能带入 SQL 里面去 price BETWEEN 和 ORDER BY PRICE 否则你一次 100 万条都拿出来吗?
这也是 OP 得需求

请你给我举例一个你说的场景得刚性需求 如果你觉得这种不写入库内性能就够 咱来个 performance bench 实际测一下你的说法可行不可行


都是搞技术的,talk is cheap, show me your code

为了杠构造点东西骗骗外行也就罢了 别连自己都骗了
sillydaddy
3 天前
@realpg 你要是我下属,我一定立马开除了你。没有任何根据的在那儿臆测。
sillydaddy
3 天前
@realpg 需求不是你说了算,需求在 OP 那儿。你怎么知道商户有 100 万数据?你怎么知道全部 select 出来性能不够?你怎么知道没有加总的需求?就你这种不看需求就开发的,第一个开的就是你。
realpg
3 天前
@sillydaddy #26

我很好奇,你一个月挣得估计都没我一个月就软件项目交的税多,哪来的勇气虚空开除我,梁静茹给你的勇气吗?
sillydaddy
2 天前
@realpg
你问我凭什么有勇气开除你,不凭别的,凭常识就够了。
我一个月工资不高,也就 2 万,没你牛逼。你说我没经验,确实我连一个 saas 系统也没开发过。你开发的不是多吗,这么着,你从你做的那么多项目里面,找出来一个需要**按成本价**排序 100 万条数据的,我当场赔你 2 万。你要是找不出来,倒赔给我 2 万!
真是吹牛逼不上税,还 100 万。
realpg
2 天前
@sillydaddy #28
我现在做的就是啊 省医保 里面药品 器械 操作 加上品牌 加上特殊标志 加上商品名 单价成本价什么都得排序
目前已经快上五百万条目了 因为里面还有各种加收项目 加收 1~n 还有各种限抢救 限病种不同分类

而且操蛋的是 这不是国际通用商业数据库 必须是信创目录的 性能渣的一批
realpg
2 天前
@sillydaddy #28
随便一个检查项目,发光法化学法电泳法酶免法全是一个独立条目 然后还有限不同病种的匹配关系
只能说 你压根就没带领过大型项目 无知限制了你的想象力
sillydaddy
2 天前
@realpg 别跟我扯哪些有的没的。我就问你敢不敢赌。
你那 500 万条数据需要针对成本价排序的话,你把相应的需求发给我,我这就赔你 2 万。不同类型的器械有什么必要针对成本价排序,你会把苹果和梨子的价格排序吗?所以说识破你的鬼话不需要什么专业知识,有常识就足够了。
YsHaNg
2 天前
@dapang1221 可以的 aws 最近在做 fhe db benchmark 你可以关注一下
@Sunzehui
Dlin
2 天前
评论区还能吃瓜
xuanbg
2 天前
我的疑问是:你一个库存,为啥要存成本价?如果是记账类的如管家婆,不可能对某个字段做加密处理。不能做条件查询不说,也完全没必要啊。你真要保密,多花点钱私有化部署就完了,或者自己招人开发也行。

总之,这种客户就不是 SAAS 厂商的菜。找准自己的定位很重要,别为这些乱七八糟的特殊需求乱了自己的阵脚。
xiaoheicat
2 天前
做个 BFF 加密中间层啊,前端不变,后端不变。BFF 响应时做匿名化不就好了,如果想要当前账户能看,做个超时
Desdemor
2 天前
同意楼上 直接私有化部署算了 费那劲
sbldehanhan
2 天前
@tojike #3 我看刑。
126ium
2 天前
@Dlin 我已经把那 silly 什么的给 block 了,杠得不行。看了下过往记录,就是现实生活中很讨厌的一类人呢

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1091877

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX