身份证号码验证在审计中的应用与思考

作 者:

作者简介:
高丽霞,内蒙古自治区审计厅

原文出处:
中国内部审计

内容提要:

02


期刊代号:V3
分类名称:审计文摘
复印期号:2017 年 09 期

关 键 词:

字号:

      在计算机审计中,无论是从被审计单位采集的业务数据,还是从外部单位采集的关联数据,只要涉及具体人员信息,身份证号码都作为主关键字和唯一识别码在数据比对中发挥主要作用。例如,在保障性安居工程审计中,通过身份证号码将财政、公安、工商、税务、房产、住房公积金等相关数据和享受住房保障待遇家庭的成员信息进行关联可以筛选出已拥有住房或高收入等不符合条件家庭骗取住房保障待遇的疑点数据。在医疗保险基金审计中,通过身份证号码可以筛选出通过“分解住院”手段套取医疗保险基金的疑点数据。可以说,没有身份证号码,数据比对就无从下手。身份证号码的正确性无法保证,数据比对的意义就大打折扣,数据比对结果甚至无法使用。身份证号码的正确性是决定比对结果准确、有效和完整的重要保证和必要前提。

      一、身份证号码验证中存在的困难

      在实际工作中,因为公安机关户籍身份信息具有保密性,同时被审计单位业务对象的身份证号码信息又不仅是局限在当地公安机关管理的户籍身份信息范围内,所以尽管审计人员迫切需要但却无法取得全国或整个区域范围的户籍身份信息去核实审计中身份证号码的正确性。

      由于业务数据庞大且数据比对频繁,也无法保证每次审计中涉及的所有身份证号码信息都能先由公安机关协助检验核实后再作数据比对。由公安机关筛选出的错误身份证号码必须由审计机关督促被审计单位改正后重新交由公安机关再次比对,直至纠正所有错误的身份证号码。错误的身份证号码在审计机关和公安机关之间反复多次流动,造成了人员和时间的浪费,导致工作程序复杂,工作效率降低,审计时间延长,而现场审计时间有限,不允许检验身份证号码占用过长时间。

      从历年审计中采集的数据来看,身份证号码错误的情况是确实存在的。例如,2015年某县共为3637人发放高龄津贴,所提供的发放名单中有105人的身份证号码错误;2015年某市辖区共为3166户发放公租房租赁补贴,所提供的发放名单中有34人身份证号码错误,身份证号码相同但姓名不同的记录有4条。同时有的单位信息系统中15位和18位身份证号码并存,也给数据比对工作带来困难。针对以上情况,在计算机审计实践中,笔者通过使用EXCEL表格中的函数、编写SQL语句等方式成功解决了身份证号码错误在计算机审计中的难题,并结合社会保障领域的多个审计项目对其进行反复验证、多次完善。

      二、居民身份证号码的编制原则

      居民身份证号码是按照国家标准编制的,由15位或18位组成。前6位为行政区划代码,18位的居民身份证号码的第7至第14位为出生日期(其中年占4位,月占2位,日占2位),第15位至第17位为顺序码(其中第17位代表性别),第18位为校验码,作为尾号的校验码是由号码编制单位按统一公式计算得出。15位的居民身份证号码与18位的区别在于出生年份为两位,无校验码。

      三、审计中发现的身份证号码错误和异常类型

      根据居民身份证号码编码规则,结合历年审计经验,将被审计单位提供的身份证号码中通常存在的问题归纳为五种错误类型和两种异常情况。

      五种错误类型分别为:一是身份证号码位数不对,既不是15位,也不是18位;二是前六位行政区划代码不存在;三是格式不对,15位身份证号码中出现非数字的代码,18位身份证号码的前17位出现非数字的代码,或者是最后一位出现既不是数字,也不是“X”的字符;四是出生日期不正确,即15位身份证号码的第7到第12位、18位身份证号码的第7到第14位不是有效日期,如代表月份的两位编码出现为“00”或大于12的情形,非闰年2月代表日的两位编码出现“29”的情形;五是最后一位校验码不符合计算规则。

      两种异常情况分别为:一是身份证号码相同但姓名不同;二是年龄异常,如领取养老保险的人员未到退休年龄,或年龄不是正常人类寿命范围。

      四、身份证号码校验的准备工作

      (一)进行业务数据与财务数据核对

      只有在业务数据与对应的财务数据一致的基础上,对业务数据的分析比对才有意义。比如,在保障性安居工程跟踪审计中,对廉租房和公租房租赁补贴发放进行审计时,应首先将被审计单位提供的租赁补贴发放名单和发放金额与财务报表、会计账簿、会计凭证进行核对,核对相符后再做数据比对。

      (二)利用EXCEL表格中的函数对表中身份证号码进行初步检验并调整

      在近几年的审计工作中,多次遇到同一种特殊情况,即被审计单位所提供的存储在EXCEL表格中的身份证号码,直观看上去是标准的身份证号码,但用EXCEL表格的len函数进行文本字符串的字符个数测试时,返回的函数结果比EXCEL表中显示的多一位。经过反复分析,原因是EXCEL表格中的身份证号码的第一个字符是一个看不到也删不掉的字符。解决的方式是在EXCEL表中用mid函数以原身份证号码文本字符串的第二位为起始位置返回比原身份证号码文本字符串实际长度小一位的字符串,此时返回的函数值为实际的身份证号码。

      五、身份证号码校验程序

      编写身份证号码校验程序的基本思路如下:先是针对上述身份证号码存在的五种错误和两种异常,逐项编写筛选语句进行识别;然后根据实际情况,将数据库相关表中的15位身份证号码筛选后交由原单位由其重新提供新的18位身份身份证号码,或由审计人员直接编写语句替换为18位身份证号码。

      (一)对五种错误类型的身份证号码进行筛选

相关文章: