身份证号码识别方法、装置、电子设备和存储介质制造方法及图纸

技术编号:36907764 阅读:14 留言:0更新日期:2023-03-18 09:26
本申请提供一种身份证号码识别方法、装置、电子设备和存储介质,其中,身份证号码识别方法包括:获取待检测数据流;基于滑动窗口从所述待检测数据流选取窗口字符串,其中,所述窗口字符串的字符长度与身份证号码的字符长度相等;基于身份证号码构成规则,将所述窗口字符串确定为预选身份证号码;校验所述预选身份证号码;当所述预选身份证号码校验通过时,将所述预选身份证号码确定为有效身份证号码。本申请能够基于滑动窗口从待检测数据流中识别出有效身份证号码。另一方面,本申请还具有无需修改代码等优点。无需修改代码等优点。无需修改代码等优点。

【技术实现步骤摘要】
身份证号码识别方法、装置、电子设备和存储介质


[0001]本申请涉及计算机领域,具体而言,涉及一种身份证号码识别方法、装置、电子设备和存储介质。

技术介绍

[0002]随着网络技术的发展和普及,个人信息的安全防泄漏越来越受到人们的重视。目前,由于违规发布、误发送等行为,数据流可能携带身份证号码,从而造成身份信息泄露,因此,需要识别数据流中的身份证号码。

技术实现思路

[0003]本申请实施例的目的在于提供一种身份证号码识别方法、装置、电子设备和存储介质,用以基于滑动窗口从待检测数据流中识别出有效身份证号码。
[0004]第一方面,本专利技术提供一种身份证号码识别方法,所述方法包括:
[0005]获取待检测数据流;
[0006]基于滑动窗口从所述待检测数据流选取窗口字符串,其中,所述窗口字符串的字符长度与身份证号码的字符长度相等;
[0007]基于身份证号码构成规则,将所述窗口字符串确定为预选身份证号码;
[0008]校验所述预选身份证号码;
[0009]当所述预选身份证号码校验通过时,将所述预选身份证号码确定为有效身份证号码。
[0010]在本申请第一方面中,获取待检测数据流之后,通过滑动窗口能够从所述待检测数据流选取长度与身份证号码的字符长度相等的窗口字符串,进而能够基于身份证号码构成规则,将所述窗口字符串确定为预选身份证号码,另一方面,通过校验所述预选身份证号码,进而能够在所述预选身份证号码校验通过时,将所述预选身份证号码确定为有效身份证号码,最终从待检测数据流中识别出有效身份证号码。
[0011]在可选的实施方式中,所述基于身份证号码构成规则,将所述窗口字符串确定为预选身份证号码,包括:
[0012]判断所述窗口字符串的最后一位字符是否为0

9中的数字,或判断窗口字符串的最后一位字符是否为字母X;
[0013]当所述窗口字符串的最后一位字符是0

9中的数字,或所述窗口字符串的最后一位字符是字母X时,判断所述窗口字符串中的第一位字符是否为0

8中的数字;
[0014]当所述窗口字符串中的第一位字符是0

8中的数字时,判断所述窗口字符串中的第二位字符至第十七位字符是否为0

9中的数字;
[0015]当所述第二位字符至所述第十七位字符均是0

9中的数字时,将所述窗口字符串确定为所述预选身份证号码。
[0016]上述可选的实施方式能够将最后一位字符、第一位字符和第二位字符至所述第十
七位字符满足身份证号码构成规则的窗口字符串确定为预选身份证号码。
[0017]在可选的实施方式中,所述方法还包括:
[0018]当所述窗口字符串的最后一位字符不是0

9中的数字,或所述窗口字符串的最后一位字符不是字母X时,所述滑动窗口向后移动18位;
[0019]当所述窗口字符串中的第一位字符不是0

8中的数字,或所述窗口字符串中的第二位字符至第十七位字符不是0

9中的数字时,所述滑动窗口向后移动到判断失败的字符的后一位;
[0020]以及,在所述将所述窗口字符串确定为所述预选身份证号码之后,所述方法还包括:
[0021]所述滑动窗口向后移动一位。
[0022]上述可选的实施方式,可在窗口字符串的最后一位字符不是0

9中的数字,或所述窗口字符串的最后一位字符不是字母X时,所述滑动窗口向后移动18位,从而快速遍历待检测数据流。另一方面,可在窗口字符串中的第一位字符不是0

8中的数字,或所述窗口字符串中的第二位字符至第十七位字符不是0

9中的数字时,移动到判断失败的字符的后一位,从而快速遍历待检测数据流。再一方面,可在窗口字符串确定为所述预选身份证号码之后,使滑动窗口向后移动一位。
[0023]在可选的实施方式中,所述校验所述预选身份证号码,包括:
[0024]读取身份证地址码配置文件;
[0025]提取所述预选身份证号码中的地址码信息;
[0026]基于所述身份证地址码配置文件校验所述地址码信息。
[0027]上述可选的实施方式,通过读取身份证地址码配置文件和提取所述预选身份证号码中的地址码信息,进而能够基于所述身份证地址码配置文件校验所述地址码信息。与现有技术相比,采用身份证地址码配置文件校验所述地址码信息,可在地址码信息更新或新增时,无需修改代码。
[0028]在可选的实施方式中,所述基于所述身份证地址码配置文件校验所述地址码信息,包括:
[0029]基于所述身份证地址码配置文件,生成匹配多叉树,其中,所述匹配多叉树中的每个树节点关联若干个兄弟节点和关联若干个子节点,每个所述树节点对应一个数值;
[0030]从所述地址码信息中的首个地址码开始,匹配所述地址码与所述树节点的数值,或匹配所述地址码与所述兄弟节点的数值,若所述树节点的数值与所述地址码相同,或所述兄弟节点的数值与所述地址码相同,则将所述地址码之后的所述地址码与若干个所述子节点进行匹配,直至校验完所述地址码信息中的所有所述地址码。
[0031]上述可选的实施方式,能够基于所述身份证地址码配置文件,生成匹配多叉树,进而基于匹配多叉树的节点结构,校验完所述地址码信息中的所有所述地址码。与现有技术相比,采用匹配多叉树,能够更快速地判断码信息是否合规。
[0032]在可选的实施方式中,所述对所述预选身份证号码进行校验还包括:
[0033]提取所述预选身份证号码中的生日信息;
[0034]判断所述生日信息是否满足预设日期格式。
[0035]上述可选的实施方式通过提取所述预选身份证号码中的生日信息,可判断所述生
日信息是否满足预设日期格式,从而进一步校验预选身份证号码是否合规。
[0036]在可选的实施方式中,所述对所述预选身份证号码进行校验还包括:
[0037]提取所述预选身份证号码中的校验码,并作为第一校验码;
[0038]基于所述预选身份证号码中的前17位号码计算得到第二校验码;
[0039]判断所述第一校验码与所述第二校验码是否相同。
[0040]上述可选的实施方式,通过提取所述预选身份证号码中的校验码,并作为第一校验码,和基于所述预选身份证号码中的前17位号码计算得到第二校验码,进而能够判断所述第一校验码与所述第二校验码是否相同,从而进一步校验预选身份证号码是否合规。
[0041]第二方面,本专利技术提供一种身份证号码识别装置,所述装置包括:
[0042]获取模块,用于获取待检测数据流;
[0043]选取模块,用于基于滑动窗口从所述待检测数据流选取窗口字符串,其中,所述窗口字符串的字符长度与身份证号码的字符长度相等;
[0044]第一本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种身份证号码识别方法,其特征在于,所述方法包括:获取待检测数据流;基于滑动窗口从所述待检测数据流选取窗口字符串,其中,所述窗口字符串的字符长度与身份证号码的字符长度相等;基于身份证号码构成规则,将所述窗口字符串确定为预选身份证号码;校验所述预选身份证号码;当所述预选身份证号码校验通过时,将所述预选身份证号码确定为有效身份证号码。2.如权利要求1所述的方法,其特征在于,所述基于身份证号码构成规则,将所述窗口字符串确定为预选身份证号码,包括:判断所述窗口字符串的最后一位字符是否为0

9中的数字,或判断窗口字符串的最后一位字符是否为字母X;当所述窗口字符串的最后一位字符是0

9中的数字,或所述窗口字符串的最后一位字符是字母X时,判断所述窗口字符串中的第一位字符是否为0

8中的数字;当所述窗口字符串中的第一位字符是0

8中的数字时,判断所述窗口字符串中的第二位字符至第十七位字符是否为0

9中的数字;当所述第二位字符至所述第十七位字符均是0

9中的数字时,将所述窗口字符串确定为所述预选身份证号码。3.如权利要求2所述的方法,其特征在于,所述方法还包括:当所述窗口字符串的最后一位字符不是0

9中的数字,或所述窗口字符串的最后一位字符不是字母X时,所述滑动窗口向后移动18位;当所述窗口字符串中的第一位字符不是0

8中的数字,或所述窗口字符串中的第二位字符至第十七位字符不是0

9中的数字时,所述滑动窗口向后移动到判断失败的字符的后一位;以及,在所述将所述窗口字符串确定为所述预选身份证号码之后,所述方法还包括:所述滑动窗口向后移动一位。4.如权利要求1所述的方法,其特征在于,所述校验所述预选身份证号码,包括:读取身份证地址码配置文件;提取所述预选身份证号码中的地址码信息;基于所述身份...

【专利技术属性】
技术研发人员:杨竣
申请(专利权)人:北京天融信网络安全技术有限公司北京天融信科技有限公司北京天融信软件有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1