日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

银行卡编码规则及检验算法详解

發(fā)布時(shí)間:2023/12/15 综合教程 37 生活家
生活随笔 收集整理的這篇文章主要介紹了 银行卡编码规则及检验算法详解 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

原文:https://blog.csdn.net/wmlml/article/details/54345413

一、銀行卡結(jié)構(gòu)

XXXXXX XXXXXXXXXXXX X

發(fā)卡行標(biāo)識(shí)代碼 自定義位 校驗(yàn)碼

根據(jù)ISO標(biāo)準(zhǔn),銀行卡長度一般在13-19位,國際上也有12位的。銀聯(lián)標(biāo)準(zhǔn)卡卡長度一般是在16-19位,雙組織卡也有13-19位的。

二、發(fā)卡行標(biāo)識(shí)代碼

發(fā)卡行標(biāo)識(shí)代碼Bank Identification Number(BIN),又叫發(fā)卡機(jī)構(gòu)標(biāo)識(shí)代碼Issuer Identification Numbers(IIN)。一般由6位數(shù)字組成,2014年底,國際標(biāo)準(zhǔn)組織(ISO)已經(jīng)將BIN由6位數(shù)字調(diào)整到8位數(shù)字。目前國內(nèi)銀聯(lián)卡,因銀行眾多,特別是村鎮(zhèn)銀行的存在,BIN長度以6位占絕大部分,另外還存在7、8、9、10等位數(shù)卡BIN。

發(fā)卡行標(biāo)識(shí)代碼第一位,為發(fā)卡行業(yè)標(biāo)識(shí)號(hào)Major Industry Identifier(MII),代表的是發(fā)卡機(jī)構(gòu)所處行業(yè)。具體分配規(guī)則如下:

目前銀聯(lián)標(biāo)準(zhǔn)卡以62開頭,各銀行再向銀聯(lián)進(jìn)行卡BIN申請(qǐng),如622848開頭的卡為農(nóng)行借記卡。我們發(fā)現(xiàn),銀聯(lián)卡不都是以62開頭,主要有2種情況。第一種是雙組織卡,如銀聯(lián)、運(yùn)通雙組織卡,一般以信用卡居多,如招行與運(yùn)通合作的運(yùn)通卡。另外一種即早期以9開頭的銀行卡,這些卡都是國內(nèi)自行分配的,僅限國內(nèi)使用,無法與國際進(jìn)行接軌。以下為部分常見卡組織發(fā)行的銀行卡起始數(shù)字:

銀聯(lián)卡,通過卡BIN能獲取到的信息不僅僅是發(fā)卡行,還能確定該卡卡種、卡名稱、卡號(hào)長度等信息。以下為部分卡BIN信息列舉:

【國內(nèi)銀行卡BIN號(hào)速查簡表】(資料詳見:http://wenku.baidu.com/view/1d93ebeb856a561252d36fb3.html)

因此,只要能獲取到比較全面的卡BIN數(shù)據(jù),就能判斷出銀行卡發(fā)卡行及卡種。目前支付寶、微信等大部分主流需要綁卡的應(yīng)用都是如此實(shí)現(xiàn)。

三、自定義位

發(fā)卡行自定義位,一般在6-12位。
中間位數(shù)由發(fā)卡行自定義,一般由6-12位數(shù)字組成。最多可以使用12位數(shù)字。

每個(gè)銀行的個(gè)人賬號(hào)標(biāo)識(shí)規(guī)則有所不同。有的銀行在這部分內(nèi)容中會(huì)包含分行、支行、儲(chǔ)蓄網(wǎng)點(diǎn)等代碼信息。有得銀行可能就沒有這么詳細(xì),會(huì)使用自然流水順序碼

四、校驗(yàn)碼算法

校驗(yàn)碼為銀行卡號(hào)最后一位,采用LUHN算法,亦稱模10算法。計(jì)算方法如下:

第一步:從右邊第1個(gè)數(shù)字開始每隔一位乘以2;

第二步: 把在第一步中獲得的乘積的各位數(shù)字相加,然后再與原號(hào)碼中未乘2的各位數(shù)字相加;

第三步:對(duì)于第二步求和值中個(gè)位數(shù)求10的補(bǔ)數(shù),如果個(gè)位數(shù)為0則該校驗(yàn)碼為0。

舉例:

6259 6508 7177 209(不含校驗(yàn)碼的銀行卡號(hào))

第一步:6*2=12,5*2=10,6*2=12,0*2=0,7*2=14,7*2=14,2*2=4,9*2=18

第二步:1+2 + 1+0 + 1+2 + 0 + 1+4 + 1+4 + 4 + 1+8 = 30

30 + 2+9+5+8+1+7+0 = 62

第三步:10-2=8

所以,校驗(yàn)碼是8,完整的卡號(hào)應(yīng)該是6259650871772098。

目前銀聯(lián)卡幾乎都支持校驗(yàn)碼算法,但是也不排除極個(gè)別不支持此算法的,如杭州銀行早期發(fā)行的西湖卡。

注:本文摘錄于不同地方,并經(jīng)實(shí)踐整理所得,望交流。

總結(jié)

以上是生活随笔為你收集整理的银行卡编码规则及检验算法详解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。