关于问题玩游戏进行身份认证的时候,故意填错身份证号的话,系统会知道是错误,为什么?一共有 2 位热心网友为你解答:
【1】、来自网友【W65301464】的最佳回答:
身份证第十八位称为校验位,可以根据前十七位算出。校验位不正确的身份证过不了验证
像题主所说改了生日但其他都没动,那么算出校验值就变了,对应的第十八位也应该改变才行。(要不然就说你身份证不正确)
校验位正确的身份证称为合法身份证,但合法的身份证不一定都存在且有效。
看到很多人说什么 api 啊 联网啊 公安啊,都是验证身份证和姓名是否一致才用的上。接口要花钱的而且信息返回并不及时,所以在防沉迷验证时就算身份证不存在但校验位正确一般是可以通过的(比如网易的游戏)。
因为调用接口要花钱所以在大部分地方都不会验证你的姓名和身份证是否一致,而是根据算法判断身份证的合法性(合法的身份证不一定真实存在)。
在关键的地方会施行 联网花钱验证身份证号和姓名是否一致(比如买电话卡)但在大部分公司看来防沉迷并不关键除了财大气粗的公司。
【2】、来自网友【闲云游戏观】的最佳回答:
玩游戏进行身份认证的时候,故意填错身份证号的话,系统会报错是为什么?
首先可以明确,游戏公司是肯定不会知道我们的身份证号的。
那么报错的缘由是什么呢?
主要来自于两个方面的判定方式:
一、身份证是否符合构成规则。
就和手机号、银行号、甚至学生学号一样,身份证号也有他的构成规则,而这些规则是公开的。
因此即便游戏公司不知道我们的身份证号,但是他可以通过这些规则来校验身份证号是否正确。
目前周知的身份证号的构成基本规则如下:
公民身份号码是特征组合码,由十七位数字本体码和一位数字校验码组成。其排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码。
(具体的码的详细规则自行百度即可)
因此只要你随便输入的不符合上述基本规则,自然可以判定身份证号是错误的。
还是拿手机号举个例子,我们都知道大陆手机的号码都是 1 开头的 11 位手机号,因此如果我们随便输入个数字“390982374509827897698643”,根据规则一看就知道不是手机号码了。
二、身份证是否符合公安系统的验证。
简单说就是,游戏公司不知道你的身份证号,警察叔叔知道啊。
现在公民身份信息是全国联网的,自从游戏防沉迷以来,游戏的实名认证自然也是归警察叔叔管的~~~
因此每一个在游戏中做实名认证的身份证,即便构成上符合规则,还是会到公安系统的数据库做个校验的。
就好像游戏公司向警察叔叔问了句“嗨,你们那里有这个人的记录吗?”
然后警察叔叔进小黑屋翻了翻档案记录,然后出来告诉游戏公司“查无此人”。
然后,你就看到报错咯~~~~
所以小结一下,游戏里填身份证报错,不是游戏公司知道你的身份证信息,而是你填入的身份证号可能不符合构成规则,或者未通过公安系统的校验而已。
(也就是说不要用身份证干坏事哟,警察叔叔看着的~~~括弧笑~~~)