首页 » PHP教程 » php脱敏处置技巧_php数据脱敏处理身份证手机号等

php脱敏处置技巧_php数据脱敏处理身份证手机号等

访客 2024-11-24 0

扫一扫用手机浏览

文章目录 [+]

一、什么是数据脱敏?

数据脱敏(Data Masking),又称数据漂白、数据去隐私化或数据变形。
百度百科对数据脱敏的定义为:指对某些敏感信息通过脱敏规则进行数据的变形,实现敏感隐私数据的可靠保护。

php脱敏处置技巧_php数据脱敏处理身份证手机号等

生活中不乏数据脱敏的例子,比如我们最常见的火车票(有号的地方)、电商收货人地址都会对敏感信息做处理。

php脱敏处置技巧_php数据脱敏处理身份证手机号等
(图片来自网络侵删)

二、为什么要进行数据脱敏?

在涉及客户安全数据或者一些商业性敏感数据的情形下,在不违反系统规则条件下,对真实数据进行改造并供应测试利用,如身份证号、手机号、卡号、客户号等个人信息都须要进行数据脱敏。

三、如何实现

以下是用php写的脱敏函数

/ 数据脱敏函数 @param $string 须要脱敏值 @param int $start 开始 @param int $length 结束 @param string $re 脱敏替代符号 @return bool|string 例子: dataDesensitization('13126989876', 3, 4); //1319876 dataDesensitization('张三四', 0, -1); //四 /function dataDesensitization($string, $start = 0, $length = 0, $re = ''){ if (empty($string)){ return false; } $strarr = array(); $mb_strlen = mb_strlen($string); while ($mb_strlen) {//循环把字符串变为数组 $strarr[] = mb_substr($string, 0, 1, 'utf8'); $string = mb_substr($string, 1, $mb_strlen, 'utf8'); $mb_strlen = mb_strlen($string); } $strlen = count($strarr); $begin = $start >= 0 ? $start : ($strlen - abs($start)); $end = $last = $strlen - 1; if ($length > 0) { $end = $begin + $length - 1; } elseif ($length < 0) { $end -= abs($length); } for ($i = $begin; $i <= $end; $i++) { $strarr[$i] = $re; } if ($begin >= $end || $begin >= $last || $end > $last) return false; return implode('', $strarr);}

标签:

相关文章

介绍白点控制之路,从原理到方法

白点,作为生活中常见的现象,无处不在。对于如何控制白点,许多人却感到困惑。本文将从原理出发,探讨白点的控制方法,并结合实际案例,为...

PHP教程 2025-01-03 阅读0 评论0

介绍直播王者,如何开启你的电竞直播之旅

随着电竞产业的蓬勃发展,越来越多的年轻人投身于电竞直播行业。王者荣耀作为一款备受欢迎的MOBA手游,吸引了大量玩家和观众。如何开启...

PHP教程 2025-01-03 阅读0 评论0