一种基于随机和置换相结合的身份证号码脱敏方法及装置与流程

文档序号:14677737发布日期:2018-06-12 21:44阅读:393来源:国知局
一种基于随机和置换相结合的身份证号码脱敏方法及装置与流程
本发明涉及数据脱敏
技术领域
,具体涉及一种基于随机和置换相结合的身份证号码脱敏方法及装置。
背景技术
:在开发、测试和其它非生产环境以及外包环境中需要一些不涉及客户的安全数据或一些商业性敏感数据来进行测试,这就有需求对真实的数据进行脱敏,实现敏感隐私数据的可靠保护,如身份证号、手机号、卡号、客户号等个人信息都需要进行数据脱敏。鉴于上述缺陷,本发明创作者经过长时间的研究和试验,最终获得了本发明。技术实现要素:本发明的目的在于提供一种基于随机和置换相结合的身份证号码脱敏方法,其包括:步骤S1:读取原始身份证号码,将号码按照出生地址、出生日期和出生顺序来分类存放;步骤S2:定义身份证前十七位数字所代表含义的取值范围;步骤S3:生成新的地址码;步骤S4:生成新的出生日期码;步骤S5:生成新的顺序码;步骤S6:计算新的校验码;步骤S7:由以上18位新的数字组合成新的、已脱敏的身份证号码。较佳的,所述步骤S1包括:步骤S11:读取前六位身份证号码为地址码;步骤S12:读取身份证号码第七至十四位为出生日期码;步骤S13:读取身份证号码第十五位至十七位为顺序码;步骤S14:读取身份证号码最后一位为校验码。较佳的,所述步骤S2包括:步骤S21:定义身份证地址码的省码、市码和区县码的取值范围;步骤S22:定义身份证的出生日期码的年码、月码和日码的取值范围;步骤S23:定义身份证的顺序码的取值范围。较佳的,所述步骤S3包括:步骤S31:用随机函数RANDBETWEEN(),从表1的省码取值范围中随机选取一个,作为新的省码;步骤S32:用随机函数RAND,从表1的市码取值范围中随机选取一个,作为新的市码;步骤S33:用随机函数RAND,从表1的区县码取值范围中随机选取一个,作为新的区县码;步骤S34:将新的省码、市码和区县码组合起来作为新的六位地址码。较佳的,所述步骤S4包括:步骤S41:读取原始出生日期码;步骤S41:用随机函数RAND(1,5)产生三个随机数m、n、q;步骤S41:对原始出生日期的年、月、日分别加上m、n、q;步骤S41:将新的年、月、日组成新的出生日期码。较佳的,所述步骤S5包括:步骤S51:读取原始顺序码;步骤S52:对原始顺序码进行随机0—1分类;步骤S53:对被分为1的赋予三位奇随机数为新的顺序码,被分为0的赋予三位偶随机数为新的顺序码。较佳的,步骤S6计算新的校验码的方法为:前十七位身份证号码数字分别乘以7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2的乘积求和,并模11,结果便为校验码的值,公式为:∑(ai×wi)(mod11)其中,i表示第i个数字,ai表示第i个数字的值,wi表示第i个加权因子。一种与以上任一所述的基于随机和置换相结合的身份证号码脱敏方法对应的装置,其包括:原始身份证号码读取单元,用于读取原始身份证号码并保存;身份证号码取值范围定义单元,用于定义身份证上18位数字号码取值范围;新地址码生成单元,用于产生新的地址码;新出生日期码生成单元,用于产生新的出生日期码;新顺序码生成单元,用于产生新的顺序码;新校验码生成单元,用于产生新的校验码;身份证号码重组单元,用于将产生的新的地址码、新的出生日期码、新的顺序码和新的校验码按照原始身份证排放顺序进行排放,组成新的身份证号码,用以隐藏客户的真实信息,防止泄漏。较佳的,所述原始身份证号码读取单元包括:地址码读取子单元,读取并存放地址码;出生日期码读取子单元,读取并存放出生日期码;顺序码读取子单元,读取并存放顺序码;校验码读取子单元,读取并存放校验码。较佳的,所述校验码单元,将得到的新的前十七位数字分别乘以7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,然后乘积求和,并模11,结果便为新的校验码的值,公式为:∑(ai×wi)(mod11)其中,i表示第i个数字,ai表示第i个数字的值,wi表示第i个加权因子。与现有技术比较本发明的有益效果在于:基于随机和置换相结合的身份证号码脱敏方法和装置有效地隐蔽真实的身份证信息,既保护了用户隐私,又保证了数据质量,更大限度地减少了对后续的数据使用、数据分析需求造成的影响。附图说明图1为本发明实施例一的一种基于随机和置换相结合的身份证号码脱敏方法的流程图;图2为本发明实施例二的一种基于随机和置换相结合的身份证号码脱敏方法的步骤S1的流程图;图3为本发明实施例三的一种基于随机和置换相结合的身份证号码脱敏方法的步骤S2的流程图;图4为本发明实施例四的一种基于随机和置换相结合的身份证号码脱敏方法的步骤S3的流程图;图5为本发明实施例五的一种基于随机和置换相结合的身份证号码脱敏方法的步骤S4的流程图;图6为本发明实施例六的一种基于随机和置换相结合的身份证号码脱敏方法的步骤S5的流程图;图7为本发明实施例七的一种基于随机和置换相结合的身份证号码脱敏装置的流程图;图8为本发明实施例八的一种基于随机和置换相结合的身份证号码脱敏装置的原始身份证号码读取单元的流程图。具体实施方式为便于进一步理解本发明的技术内容,下面结合附图对本发明作进一步说明。实施例一如图1所示,为本发明的一种基于随机和置换相结合的身份证号码脱敏方法的流程图,该方法包括:步骤S1:读取原始身份证号码,将号码按照出生地址、出生日期和出生顺序来分类存放;步骤S2:定义身份证前十七位数字所代表含义的取值范围;步骤S3:生成新的地址码;步骤S4:生成新的出生日期码;步骤S5:生成新的顺序码;步骤S6:计算新的校验码;步骤S7:由以上18位新的数字组合成新的、已脱敏的身份证号码。基于随机和置换相结合的身份证号码脱敏方法有效地隐蔽真实的身份证信息,既保护了用户隐私,又保证了数据质量,更大限度地减少了对后续的数据使用、数据分析需求造成的影响。实施例二图2为步骤S1的流程图,身份证18位数字用字母表示为“ABCDEFYYYYMMDDXXXR”,步骤S1读取原始身份证号码的具体实施步骤如下:步骤S11:读取前六位身份证号码ABCDEF为地址码;步骤S12:读取身份证号码第七至十四位YYYYMMDD为出生日期码;步骤S13:读取身份证号码第十五位至十七位XXX为顺序码;步骤S14:读取最后一位R为校验码。实施例三图3为步骤S2的流程图,其定义身份证前十七位数字所代表含义的取值范围的具体步骤如下:步骤S21:定义身份证地址码的省码、市码和区县码的取值范围,定义身份证的地址码的省码、市码和区县码的取值范围,见表1所示,AB表示出生所在省,取值范围为11-15,21-23,31-37,41-46,50-54,61-65;CD表示市,在01-20和51-70的值代表直属中央政府的直辖市,在21-50的值代表区;EF表示区或县,在01-18的值代表市辖区,在21-80代表县,在81-99代表县级市。步骤S22:定义身份证的出生日期码的年码、月码和日码的取值范围,出生日期码YYYY取值为1800-2099,MM取值为01-12,DD取值为01-28/29/30/31,如表2所示。步骤S23:定义身份证的顺序码的取值范围,三位数字顺序码表示在同一地址码所标识的区域范围内,对同年同月同日出生的人编定的顺序号,顺序码的奇数分配给男性,偶数分配给女性,取值为000-999,如表3所示。表1AB11-15,21-23,31-37,41-46,50-54,61-65CD01-99EF01-99表2YYYY1800-2099MM01-12DD01-28/29/30/31表3XXX000-999实施例四图4为步骤S3生成新的地址码的流程图,根据表1,AB的可能取值有31个,利用随机函数,如RANDBETWEEN(),从31个值中随机选取一个,作为新的AB;CD和EF的取值都有99个,利用随机函数如RAND(01,99),从99个中分别选出一个作为新的CD和EF,将新的AB、CD、EF组合起来作为新的六位地址码,其具体步骤如下:步骤S31:用随机函数RANDBETWEEN(),从表1的省码取值范围中随机选取一个,作为新的省码AB;步骤S32:用随机函数RAND,从表1的市码取值范围中随机选取一个,作为新的市码CD;步骤S33:用随机函数RAND,从表1的区县码取值范围中随机选取一个,作为新的区县码EF;步骤S34:将新的省码、市码和区县码组合起来作为新的六位地址码ABCDEF。实施例五图5为步骤S4生成新的出生日期码的流程图,对八位出生日期码,采用引入随机数的年龄老化算法来产生新的出生日期码。对于普通的年龄老化算法如AGE(+2Y,+6M,+12D),老化的程度是固定的,当批量进行处理时这种规律很容易被识破,因此引入随机数m、n、q将原函数升级为AGE(+mY,+nM,+qD),m、n、q均为1~5之间的随机数,具体步骤为:步骤S41:读取原始出生日期码;步骤S41:用随机函数RAND(1,5)产生三个随机数m、n、q;步骤S41:对原始出生日期的年、月、日分别加上m、n、q;步骤S41:将新的年、月、日组成新的出生日期码。实施例六图6为步骤S5生成新的顺序码的流程图,对三位顺序码采取先分类,后随机数置换的处理办法,具体步骤为:步骤S51:读取原始顺序码;步骤S52:对原始顺序码进行随机0—1分类;步骤S53:对被分为1的赋予三位奇随机数为新的顺序码,被分为0的赋予三位偶随机数为新的顺序码。实施例七如上所述的基于随机和置换相结合的身份证号码脱敏方法,步骤S6计算新的校验码的方法为:前十七位身份证号码数字分别乘以7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2的乘积求和,并模11,结果便为校验码的值,公式为:∑(ai×wi)(mod11)其中,i表示第i个数字,ai表示第i个数字的值,wi表示第i个加权因子。实施例八如图7所示,为一种与基于随机和置换相结合的身份证号码脱敏方法相对应的装置的功能示意图,该装置包括:原始身份证号码读取单元1,用于读取原始身份证号码并保存;身份证号码取值范围定义单元2,用于定义身份证上18位数字号码取值范围;新地址码生成单元3,用于产生新的地址码;新出生日期码生成单元4,用于产生新的出生日期码;新顺序码生成单元5,用于产生新的顺序码;新校验码生成单元6,用于产生新的校验码;身份证号码重组单元7,用于将产生的新的地址码、新的出生日期码、新的顺序码和新的校验码按照原始身份证排放顺序进行排放,组成新的身份证号码,用以隐藏客户的真实信息,防止泄漏。基于随机和置换相结合的身份证号码脱敏装置利用基于随机和置换相结合的身份证号码脱敏方法有效地隐蔽真实的身份证信息,既保护了用户隐私,又保证了数据质量,更大限度地减少了对后续的数据使用、数据分析需求造成的影响。实施例九图8为原始身份证号码读取单元1的功能示意图,原始身份证号码读取单元1用以读取原始身份证18位数字,原始身份证号码读取单元1包括地址码读取子单元11、出生日期码读取子单元12、顺序码读取子单元13和校验码读取子单元14:地址码读取子单元11读取并存放地址码;出生日期码读取子单元12读取并存放出生日期码;顺序码读取子单元13读取并存放顺序码;校验码读取子单元14读取并存放校验码。实施例十如上所述的基于随机和置换相结合的身份证号码脱敏装置,本实施例与其不同之处在于:所述身份证数字取值范围定义单元,用于定义身份证上18位数字的取值范围;身份证18位数字用英文字母表示即为“ABCDEFYYYYMMDDXXXR”,排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校检码。其中前六位是地址码,表示编码对象常住户口所在地的行政区划代码,AB表示省,取值为11-15,21-23,31-37,41-46,50-54,61-65,共31个;CD表示市,在01-20和51-70的值代表直属中央政府的直辖市,在21-50的值代表区,共40个;EF表示区或县,在01-18的值代表市辖区,在21-80代表县,在81-99代表县级市,共87个。出生日期码YYYY取值为1800-2099,MM取值为01-12,DD取值为01-28/29/30/31,三位数字顺序码表示在同一地址码所标识的区域范围内,对同年同月同日出生的人编定的顺序号,顺序码的奇数分配给男性,偶数分配给女性,取值为000-999。最后一位数字校验码是由号码编制单位按统一的公式计算出来的,取值为0-9以及以X代替的10。身份证18位数字的取值范围见表1、表2和表3所示。实施例十一如上所述的基于随机和置换相结合的身份证号码脱敏装置,本实施例与其不同之处在于:所述地址码单元2,读取地址码读取子单元11里的地址码AB、CD和EF,利用随机函数,如RANDBETWEEN(),分别从表1AB、CD和EF的取值范围里随机选取一个作为新的AB、CD和EF,例如,从表1AB31个数值范围值中随机选取一个,作为新的AB,将新的AB、CD、EF组合起来作为新的六位地址码。这地方还是按照ABCDEF的顺序放置吗?实施例十二如上所述的基于随机和置换相结合的身份证号码脱敏装置,本实施例与其不同之处在于:所述出生日期码单元3,用于读取出生日期码读取子单元12里的出生日期码YYYY、MM和DD,然后按照普通的年龄老化算法如AGE(+2Y,+6M,+12D)生成新的出生年月日;年龄老化算法中老化的程度是固定的,当批量进行处理时这种规律很容易被识破,因此引入随机数m、n、q将原函数升级为AGE(+mY,+nM,+qD),m、n、q均为1~5之间的随机数。实施例十三如上所述的基于随机和置换相结合的身份证号码脱敏装置,本实施例与其不同之处在于:所述顺序码单元4,用于读取顺序码读取子单元13里的顺序码XXX,对三位顺序码采取先分类,后随机数置换的处理办法生成新的顺序码。随机进行0—1分类,对被分为1的赋予三位奇随机数,被分为0的赋予三位偶随机数。实施例十四如上所述的基于随机和置换相结合的身份证号码脱敏装置,本实施例与其不同之处在于:所述校验码单元5,将得到的新的前十七位数字分别乘以7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,然后乘积求和,并模11,结果便为新的校验码的值,公式为∑(ai×wi)(mod11)其中,i表示第i个数字,ai表示第i个数字的值,wi表示第i个加权因子。以上所述仅为本发明的较佳实施例,对本发明而言仅仅是说明性的,而非限制性的。本专业技术人员理解,在本发明权利要求所限定的精神和范围内可对其进行许多改变,修改,甚至等效,但都将落入本发明的保护范围内。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1