实在搞笑,最近才理解一个词,叫“脱敏”。常在很多源代码有看过这样的注释,一直认为是某个大神的网名,却不知道是IT里常见的一个东西。
比如身份证号码,如果脱敏后就只显示【4405************30】。数据脱敏顾名思义就是对敏感数据进行变形处理,其目的是保护隐私数据等信息的安全,例如需要导出一些报表,可以用脱敏的形式来保护一些敏感的信息。
这让我想起滴滴当时被罚款里面有条是“以明文形式储存司机身份证号码信息”。
【国家网信办:滴滴存16项违法事实,含过度收集乘客人脸信息等】:
这个错误同行很容易犯,经常做商城的时候,会存用户的信息,如果不进行加密储存,分分钟就违规了。
VFP里,如何显示脱敏的信息?
示例如下:
IDCard = "440582199901010030"
IDCardSensitive = STRTRAN(IDCard, SUBSTR(IDCard, 7, 10), REPLICATE("*", 8))
?IDCardSensitive && 输出 440582**********30
但我只会脱,不会穿。等于如何恢复显示,我还不会,因为我是用*号替代了中间的字符来达到脱敏效果的。可能在导出报表显示的时候,才会用上这招。
所以我在储存的时候会选择用转base64位的方式。
VFP里有关于BASE64的函数:
STRCONV(cExpression, 13)加密
STRCONV(cExpression, 14)解密
用13加密储存,查询显示的时候,用14。就搞定了。