国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

號(hào)碼驗(yàn)證工具的設(shè)計(jì)與實(shí)現(xiàn)

2019-12-02 08:02:51汪志陽(yáng)
中國(guó)科技縱橫 2019年16期
關(guān)鍵詞:校驗(yàn)碼手機(jī)號(hào)碼身份證

號(hào)碼查詢和驗(yàn)證是保證我們信息和財(cái)產(chǎn)安全的重要手段,而身份證號(hào)碼和手機(jī)號(hào)碼查詢驗(yàn)證是其中的重中之重。本課題設(shè)計(jì)并開發(fā)了一種集成號(hào)碼查詢的應(yīng)用,用戶可以在這個(gè)應(yīng)用上查詢號(hào)碼歸屬地和身份證信息,比如:身份證簽發(fā)地、當(dāng)前號(hào)碼性別、出生年月日等信息。

關(guān)鍵手機(jī)號(hào)碼查詢;身份證號(hào)碼查詢;號(hào)碼歸屬地;身份證性別;身份證歸屬地;號(hào)碼查詢;Android查詢

中圖分類號(hào):TP311.52?文獻(xiàn)標(biāo)識(shí)碼:A??文章編號(hào):1671-2064(2019)16-0000-00

1課題的設(shè)計(jì)與實(shí)現(xiàn)

1.1方案設(shè)計(jì)

1.1.1設(shè)計(jì)原理

(1)身份證號(hào)驗(yàn)證設(shè)計(jì)原理。

1)身份證號(hào)碼結(jié)構(gòu)。早期“身份證號(hào)碼”叫“社會(huì)保障號(hào)”,為15位,1999年開始更名為公民身份證號(hào)碼,即第二代身份證,為18位,且終身不變。

2)15位與18位身份證號(hào)碼差異。出生日期碼:15位身份證號(hào)碼中出生日期碼為4位,其中年份代碼僅有2位,如590328,代表1959年生。

校驗(yàn)碼:15位身份證號(hào)碼中無(wú)校驗(yàn)位。

3)校驗(yàn)碼算法。將本體碼各位數(shù)字乘以對(duì)應(yīng)加權(quán)因子并求和,除以11得到余數(shù),根據(jù)余數(shù)通過(guò)校驗(yàn)碼對(duì)照表查得校驗(yàn)碼。

加權(quán)因子,如表1所示。

校驗(yàn)碼,如表2所示。

算法舉例:

本體碼為:11010519491231002

第一步:各位數(shù)與對(duì)應(yīng)加權(quán)因子乘積求和1*7+1*9+0*10+1*5+......=167

第二步:對(duì)求和進(jìn)行除11得余數(shù)167%11=2

第三步:根據(jù)余數(shù)2對(duì)照校驗(yàn)碼得X

因此完整身份證號(hào)為:11010519491231002X

4)編碼規(guī)則的應(yīng)用。如上所述,身份證號(hào)碼是基于一定的規(guī)則的,從身份證號(hào)碼中可以挖掘以下信息:

① 身份證長(zhǎng)度驗(yàn)證:身份證長(zhǎng)度僅存在15位或18位兩種長(zhǎng)度;

② 身份證輸入正確性驗(yàn)證:如身份證號(hào)為18位,可根據(jù)本體碼與校驗(yàn)碼得關(guān)系驗(yàn)證身份證號(hào)碼輸入有誤,需要指出的是,驗(yàn)證通過(guò)并不代表身份證號(hào)碼的真實(shí)性;

③ 出生年月日及其正確性;(1、2、3以及身份證號(hào)碼格式中任意一項(xiàng)不合法就不需要驗(yàn)證,轉(zhuǎn)而要求用戶重新輸入)

④ 獲得戶籍注冊(cè)地信息:大部分情況下,該地即為出身地或籍貫。對(duì)應(yīng)時(shí)需留意行政區(qū)劃代碼的更新迭代;

⑤ 性別:順序碼中奇數(shù)為男性,偶數(shù)位為女性;

⑥ 根據(jù)18位與15位身份證號(hào)碼編碼規(guī)則及校驗(yàn)碼算法,將15位身份證號(hào)碼轉(zhuǎn)換為18位身份證號(hào)碼;

⑦ 因校驗(yàn)碼為X,實(shí)際上有大小寫輸入不同,需注意兼容或統(tǒng)一。

5)實(shí)名認(rèn)證的方式。在互聯(lián)網(wǎng)產(chǎn)品中,“實(shí)名認(rèn)證”的方式大致有3種:

① 姓名+身份證號(hào)碼匹配認(rèn)證。產(chǎn)品舉例:火幣網(wǎng)、金斧子網(wǎng)站;

② 身份證正反面照片+人臉照片認(rèn)證。產(chǎn)品舉例:火幣網(wǎng)、云幣網(wǎng);

③ 身份證正反面照片+人臉識(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)證。

對(duì)于方式1:姓名+身份證號(hào)碼匹配認(rèn)證

乍一看,這種認(rèn)證似乎很簡(jiǎn)單——不就是驗(yàn)證一下是否匹配嗎?但細(xì)分之后,就有很多值得玩味的細(xì)節(jié)。比如:如何驗(yàn)證身份證號(hào)碼與姓名是否匹配?驗(yàn)證過(guò)程速度如何?驗(yàn)證的成本如何?

6)認(rèn)證成本與時(shí)間。姓名+身份證號(hào)碼是否匹配,根據(jù)官方系統(tǒng)提供的數(shù)據(jù)進(jìn)行。這就帶來(lái)了兩個(gè)關(guān)鍵問(wèn)題:

① 成本較高——一次認(rèn)證1元以上;

② 認(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)證上下更多工夫。

① 姓名格式驗(yàn)證:國(guó)人的姓名,大都為2-4位中文字符,所以驗(yàn)證時(shí)應(yīng)驗(yàn)證其是否為中文、位數(shù)是否大于1位小于5位?當(dāng)然,上限可以適當(dāng)提高。

② 身份證號(hào)碼格式驗(yàn)證。

  1. 手機(jī)號(hào)驗(yàn)證設(shè)計(jì)原理。通過(guò)網(wǎng)絡(luò)識(shí)別號(hào)知道運(yùn)營(yíng)商,通過(guò)地區(qū)編碼知道地區(qū)。如果網(wǎng)絡(luò)識(shí)別號(hào)或地區(qū)編碼不存在直接退出要求用戶重新輸入。

1.1.2線框圖方案與設(shè)計(jì)

功能1:手機(jī)號(hào)碼查詢和身份證號(hào)碼查詢可以點(diǎn)擊切換,默認(rèn)打開頁(yè)面為手機(jī)號(hào)碼查詢,切換到身份證號(hào)碼頁(yè)面顯示身份證號(hào)碼內(nèi)容。

功能2:身份證號(hào)碼查詢,默認(rèn)展示“請(qǐng)輸入所查詢的身份證號(hào)碼”,當(dāng)用戶輸入內(nèi)容的時(shí)候默認(rèn)展示消失,當(dāng)用戶清空輸入內(nèi)容的時(shí)候,再次展示默認(rèn)提示。

功能3:查詢,如果符合號(hào)碼查詢規(guī)則的號(hào)碼,則查詢返回結(jié)果:輸出元素,身份證號(hào)碼:對(duì)應(yīng)輸入正確身份證號(hào)碼,歸屬地:服務(wù)端返回的名稱,性別:服務(wù)端返回的性別,只有男和女,生日:服務(wù)端返回到生日格式為:XXXX年XX月XX日。如果沒(méi)有符合號(hào)碼規(guī)則,統(tǒng)一提示“您輸入的身份證號(hào)碼不正確,請(qǐng)重新輸入”。

功能4:查詢未連接網(wǎng)絡(luò),則提示“網(wǎng)絡(luò)連接失敗,請(qǐng)檢查網(wǎng)絡(luò)”。

1.2產(chǎn)品實(shí)施開發(fā)

1.2.1開發(fā)環(huán)境搭建

在windows 10系統(tǒng)中搭建開發(fā)環(huán)境,配置JDK(jdk-9.0.1)、環(huán)境變量和Android開發(fā)工具Android Studio。

1.2.2開發(fā)結(jié)果樣式圖1

用戶在空間內(nèi)填寫內(nèi)容,如果數(shù)據(jù)填寫的違背規(guī)則則會(huì)報(bào)錯(cuò),網(wǎng)絡(luò)鏈接有問(wèn)題也會(huì)報(bào)錯(cuò),在確保網(wǎng)絡(luò)暢通且輸入內(nèi)容正確的情況下,客戶端會(huì)將服務(wù)端返回的數(shù)據(jù)按照內(nèi)容排放位置準(zhǔn)確的展示出來(lái)。

1.3測(cè)試與驗(yàn)證

1.3.1測(cè)試環(huán)境和條件

測(cè)試分仿真模擬測(cè)試和真機(jī)測(cè)試;

仿真模擬測(cè)試環(huán)境在AVD(Android Virtual Device)中測(cè)試;

真機(jī)測(cè)試:華為手機(jī);

手機(jī)型號(hào):EVA-AL10;

硬件配置:Android版本6.0;內(nèi)核版本號(hào):3.10.90-g0d59b0candroid@localhost #1 Wed nov 30 03:27:24 CST 2016;RAM:4G;CPU:Hisilicon Kirin955。

1.3.2測(cè)試步驟與內(nèi)容

使用產(chǎn)品,輸入手機(jī)號(hào)和身份證號(hào),查看是否有報(bào)錯(cuò)信息,使用是否流暢,輸出是否正確。

1.3.3測(cè)試結(jié)果分析表1

2?結(jié)論與展望

2.1結(jié)語(yǔ)

場(chǎng)景1:用戶打開app,如果想要查找手機(jī)號(hào)碼,那么直接在默認(rèn)頁(yè)面輸入所查詢的手機(jī)號(hào)碼,然后點(diǎn)擊查詢后經(jīng)過(guò)數(shù)據(jù)加載,看到結(jié)果手機(jī)號(hào)碼對(duì)應(yīng)的歸屬地和運(yùn)營(yíng)商,用戶通過(guò)app可以簡(jiǎn)單的操作查詢到想要的結(jié)果。

場(chǎng)景2:用戶打開app,如果想要查找身份證號(hào)碼,那么直接在默認(rèn)頁(yè)面輸入所查詢的身份證號(hào)碼,然后點(diǎn)擊查詢后經(jīng)過(guò)數(shù)據(jù)加載,看到結(jié)果身份證號(hào)碼的簽發(fā)地、對(duì)應(yīng)公民的出生日期、性別等結(jié)果。

2.2展望

此號(hào)碼查詢工具目前是一個(gè)初步的探索性研究,未來(lái)可優(yōu)化的方向包括:

(1)查找別的號(hào)碼。例如:通過(guò)銀行卡號(hào)碼分析是什么銀行的,是儲(chǔ)蓄卡還是信用卡,快遞號(hào)碼查詢物流公司和物流狀態(tài)。

(2)功能:語(yǔ)音輸入。

(3)不需要區(qū)分號(hào)碼自動(dòng)輸入號(hào)碼根據(jù)規(guī)則匹配出想要的結(jié)果。

(4)條形碼掃碼查詢。

(5)將身份驗(yàn)證功能拓展到實(shí)際生活場(chǎng)景或是行業(yè)領(lǐng)域中。比如停車場(chǎng)中,通過(guò)掃描車牌號(hào),定位車主信息,增加安全性能。

目前這個(gè)APP還處于初級(jí)階段,若后續(xù)能對(duì)接公安系統(tǒng)、銀行系統(tǒng)、稅務(wù)系統(tǒng)、旅游系統(tǒng)、物流系統(tǒng)等,其應(yīng)用場(chǎng)景就會(huì)更加廣泛。當(dāng)然,這種系統(tǒng)的對(duì)接要建立在合法合規(guī)的基礎(chǔ)之上,一些涉及個(gè)人隱私如銀行賬戶等信息,仍需要在特定條件下才能查詢。

參考文獻(xiàn)

[1] 靳巖,姚尚郎.Google Android開發(fā)入門與實(shí)踐[M/CD].北京:人民郵電出版社,2009.

[2] 余志龍,陳旻勛,等.Google Android SDK開發(fā)范例大全[M].北京:人民郵電出版社,2009.

[3] 公磊,周聰.基于Android的移動(dòng)終端應(yīng)用程序開發(fā)與研究[J].計(jì)算機(jī)與現(xiàn)代化,2008(08):85-89.

收稿日期:2019-06-11

作者簡(jiǎn)介:汪志陽(yáng),男,漢族,上海人,研究方向:計(jì)算機(jī)。

猜你喜歡
校驗(yàn)碼手機(jī)號(hào)碼身份證
本月來(lái)信之最
都有身份證
“手機(jī)號(hào)碼”繼承公證的可行性及路徑
法制博覽(2021年4期)2021-11-24 15:03:12
辣椒也有身份證
基于Tesseract-OCR的快遞單中手機(jī)號(hào)碼識(shí)別應(yīng)用的實(shí)現(xiàn)
趣說(shuō)古人的“身份證”
基于Excel實(shí)現(xiàn)書號(hào)校驗(yàn)碼的驗(yàn)證
基于FPGA的循環(huán)冗余校驗(yàn)碼設(shè)計(jì)
電子世界(2015年14期)2015-11-07 05:32:29
身份證號(hào)碼中的數(shù)學(xué)
身份證里的“X”是什么意思
奉贤区| 阳原县| 沙坪坝区| 察雅县| 马公市| 新余市| 滦南县| 吐鲁番市| 长泰县| 温宿县| 三明市| 岳阳市| 平遥县| 武胜县| 堆龙德庆县| 中山市| 宁明县| 清镇市| 三江| 楚雄市| 靖远县| 搜索| 屏山县| 宾阳县| 青浦区| 镇坪县| 思茅市| 商丘市| 梁山县| 临汾市| 灵武市| 抚州市| 辽阳县| 墨竹工卡县| 金沙县| 特克斯县| 鹤庆县| 子长县| 留坝县| 达日县| 岐山县|