很多產(chǎn)品都會(huì)用到「實(shí)名認(rèn)證」,比如售票軟件、銀行卡、交易軟件等。如此常見的功能,當(dāng)然也是產(chǎn)品人應(yīng)該了解的。當(dāng)然,鑒于產(chǎn)品人無(wú)需過(guò)多涉及技術(shù)知識(shí),我們就談?wù)劗a(chǎn)品人應(yīng)該了解的「實(shí)名認(rèn)證」知識(shí)。
1.實(shí)名認(rèn)證的方式
在互聯(lián)網(wǎng)產(chǎn)品中,「實(shí)名認(rèn)證」的方式大致有3種:
1)姓名+身份證號(hào)碼匹配認(rèn)證。產(chǎn)品舉例:火幣網(wǎng)、金斧子網(wǎng)站;
2)身份證正反面照片+人臉照片認(rèn)證。產(chǎn)品舉例:火幣網(wǎng)、云幣網(wǎng);

3)身份證正反面照片+人臉識(shí)別。產(chǎn)品舉例:阿里小號(hào)。
要采取哪種方式,要視產(chǎn)品目標(biāo)與用戶需求而定。目前來(lái)看,方式3應(yīng)用較少,可能這有一定的技術(shù)難度,所以一般公司并不會(huì)采用。而方式1與方式2的使用都比較多,其中方式2更為可靠,方式1更為簡(jiǎn)單。
以上3種方式,都談不上絕對(duì)可靠,但可靠性在逐漸升高,能過(guò)濾掉的作弊用戶也在增多。當(dāng)然,技術(shù)難度與維護(hù)成本也在升高。
所以,有些網(wǎng)站對(duì)不同級(jí)別用戶使用不同的認(rèn)證方式:對(duì)低級(jí)別用戶,使用方式1;對(duì)中等級(jí)別用戶,使用方式2;對(duì)高級(jí)用戶,使用支付寶的芝麻認(rèn)證。
我親身參與過(guò)的,是方式1,下面就詳細(xì)聊聊方式1。
2.姓名+身份證號(hào)碼匹配認(rèn)證
乍一看,這種認(rèn)證似乎很簡(jiǎn)單——不就是驗(yàn)證一下是否匹配嗎?但細(xì)分之后,就有很多值得玩味的細(xì)節(jié)。比如:如何驗(yàn)證身份證號(hào)碼與姓名是否匹配?驗(yàn)證過(guò)程速度如何?驗(yàn)證的成本如何?
1)認(rèn)證成本與時(shí)間
姓名+身份證號(hào)碼是否匹配,根據(jù)官方系統(tǒng)提供的數(shù)據(jù)進(jìn)行。這就帶來(lái)了兩個(gè)關(guān)鍵問(wèn)題:
a.成本較高——一次認(rèn)證1元以上(具體多少就不說(shuō)了);
b.認(rèn)證時(shí)間可能較長(zhǎng)——有時(shí)可能需要十幾秒才能返回認(rèn)證結(jié)果。
解決方案:盡量將錯(cuò)誤認(rèn)證阻擋在產(chǎn)品中,而不是讓其進(jìn)入官網(wǎng)系統(tǒng),從而節(jié)省成本,節(jié)省用戶驗(yàn)證時(shí)間,提升用戶體驗(yàn)。
因此,應(yīng)該在姓名、身份證號(hào)的格式驗(yàn)證上下更多工夫。
a.姓名格式驗(yàn)證:國(guó)人的姓名,大都為2~4位中文字符,所以驗(yàn)證時(shí)應(yīng)驗(yàn)證其是否為中文、位數(shù)是否大于2位小于4位?當(dāng)然,上限可以適當(dāng)提高,畢竟有些人姓名真還挺長(zhǎng),據(jù)說(shuō)最長(zhǎng)的有15位。。。
b.身份證號(hào)碼格式驗(yàn)證:詳見下文。
2)身份證號(hào)碼位數(shù)
我國(guó)有過(guò)兩代身份證號(hào)碼:
一代為15位身份證號(hào)碼,當(dāng)時(shí)的國(guó)家標(biāo)準(zhǔn)為GB11643-1989《社會(huì)保障號(hào)碼》。你看,原來(lái)都不叫身份證號(hào)碼;
另一代為18位身份證號(hào)碼,其國(guó)家標(biāo)準(zhǔn)為GB11643-1999《公民身份號(hào)碼》,這就是我們現(xiàn)在廣為使用的身份證號(hào)碼?!秶?guó)務(wù)院關(guān)于實(shí)行公民身份號(hào)碼制度的決定》提到:
國(guó)務(wù)院決定,自1999年10月1日起在全國(guó)建立和實(shí)行公民身份號(hào)碼制度。
從1999年后,就開始逐步推行第二代身份證號(hào)碼,那么,現(xiàn)在還有人在用第一代的15位身份證號(hào)碼嗎?我猜是有的,雖然沒找到具體數(shù)據(jù),但在全國(guó)公民身份證號(hào)碼查詢服務(wù)中心看到了下圖這個(gè)查詢功能:

既然存在兩代身份證號(hào)碼?那就給我們帶來(lái)一個(gè)問(wèn)題:是否需要對(duì)兩種身份證號(hào)碼都進(jìn)行驗(yàn)證?
解決方案:根據(jù)不同用戶,確定驗(yàn)證的身份證號(hào)碼位數(shù)。對(duì)于多數(shù)用戶,只需驗(yàn)證18位身份證號(hào)碼。
為什么?因?yàn)橛凶銐蚶碛上嘈湃缃袷褂?5位身份證號(hào)碼的人已經(jīng)很少,盡管沒找到具體數(shù)據(jù)。理由吧,有這么幾點(diǎn):
a.自1999年開始就在推行18位身份證號(hào)碼,至今已過(guò)去近18年。而身份證都有有效期,相信很多身份證號(hào)碼都在這個(gè)過(guò)程中從15位升為了18位。而且,我們往往在十幾歲才開始辦身份證,以16歲為起點(diǎn),第一代辦理18位號(hào)碼身份證的人,現(xiàn)在已經(jīng)34歲。
為什么以16歲為起點(diǎn)?因?yàn)椤吨腥A人民共和國(guó)公安部令第43號(hào)》提到:
第六條年滿16周歲的中國(guó)公民,應(yīng)當(dāng)向常住戶口所在地的戶口登記機(jī)關(guān)履行申領(lǐng)居民身份證的手續(xù)。公民年滿16周歲時(shí),在從生日起計(jì)算的30天內(nèi)申領(lǐng)居民身份證。
b.二代身份證的推行,讓多數(shù)人已經(jīng)用上了18位身份證號(hào)碼。比如12306網(wǎng)站的這樣一條聲明,就能說(shuō)明目前使用二代身份證的人已占絕大多數(shù)。

c.而且,就互聯(lián)網(wǎng)用戶來(lái)說(shuō),那就更少,因?yàn)榛ヂ?lián)網(wǎng)用戶更為年輕,對(duì)新事物也更容易接受。
3)身份證號(hào)碼規(guī)則
a.表示形式:如下圖,下圖來(lái)自GB11643-1999《公民身份號(hào)碼》。

b.校驗(yàn)碼:如下圖,下圖來(lái)自GB11643-1999《公民身份號(hào)碼》。
PS:下圖只提供了部分校驗(yàn)碼的規(guī)則,其他位置的號(hào)碼規(guī)則不再提供,具體可以參見GB11643-1999《公民身份號(hào)碼》。

解決方案:按照身份證號(hào)碼的規(guī)則完成驗(yàn)證,確定用戶輸入的身份證號(hào)碼格式是否正確。這和產(chǎn)品人關(guān)系不大,主要靠咱們無(wú)敵的開發(fā)哥哥。有興趣的,給你段代碼看看(其實(shí)代碼不是太難懂)。
其實(shí),通過(guò)這一步,不僅保證了身份證號(hào)碼格式的正確性,也基本同時(shí)保證了其內(nèi)容的正確性,因?yàn)樯矸葑C號(hào)的格式與內(nèi)容相關(guān)性很強(qiáng),校驗(yàn)位正是通過(guò)前面各個(gè)位置號(hào)碼的內(nèi)容來(lái)確定的。
綜上,通過(guò)產(chǎn)品自身檢驗(yàn)用戶姓名、身份證號(hào)格式的正確性,驗(yàn)證成功后,再調(diào)用官方系統(tǒng)的數(shù)據(jù),就能很好地降低成本、減少驗(yàn)證時(shí)間。