zoukankan      html  css  js  c++  java
  • Atitit.会员卡(包括银行卡)api的设计

    Atitit.会员卡(包括银行卡)api的设计

     

    1. 银行卡的本质是一种商业机构会员卡1

    2. 会员卡号结构组成1

    2.1. ●前六位是:发行者标识代码 Issuer Identification Number (IIN)1

    2.2. ●中间的位数是:个人账号标识(从卡号第七位开始)6-12位数字2

    2.3. ●最后一位位数是校验位2

    2.4.  将卡号前面的数字采用Luhn算法计算出信用卡或者借记卡的最后一位数字。2

    3. 银行卡号校验 (Luhn算法)2

    4. LUHN公式2

    4.1. 计算步骤3

    5. 工具卡号判断银行3

    5.1. 有效期4

    5.2. 银行归属地查询4

     

    1. 银行卡的本质是一种商业机构会员卡

    第一张信用卡就是加油站 和餐厅 发行的。。

    不过一般商业银行的会员卡可以提现,单也少部分不可或者有限制。。

    其他机构发行的会员卡,根据各个机构不同而不同,有的可以提现,大部分不可提现。。

     

    2. 会员卡号结构组成

     

    其实我们的银行卡号一般是16位或者19位。由如下三部分构成。

     

    2.1. ●前六位是:发行者标识代码 Issuer Identification Number (IIN)。

     

    注意:当前已经用IIN替换了之前的发卡行识别码 Bank Identification Number (BIN).

    其中第一位数字是主要产业标识符(Major Industry Identifier (MII)),下表列出了MII每个数字代表的卡号行业。

    卡号首位

    适用的目录

    0

    ISO/TC 68 和其他行业使用

    1

    航空

    2

    航空和其他未来行业使用

    3

    运输、娱乐和金融财务

    4

    金融财务

    5

    金融财务

    6

    商业和金融财务

    7

    石油和其他未来行业使用

    8

    医疗、电信和其他未来行业使用

    9

    由本国标准机构分配

    下表列出了,不同卡号对应的发行机构。因此“中国银联”发行的卡一定是62开头;而国内使用Visa信用卡的人士其卡号会是4开头,而使用万事达(Matercard)的人士卡号一般以51、52、53、54、55打头。

    2.2. ●中间的位数是:个人账号标识(从卡号第七位开始)6-12位数字

    中间位数由发卡行自定义,一般由6-12位数字组成。最多可以使用12位数字。

    每个银行的个人账号标识规则有所不同。有的银行在这部分内容中会包含分行、支行、储蓄网点等代码信息。有得银行可能就没有这么详细,会使用自然流水顺序码。

    2.3. ●最后一位位数是校验位

    2.4. 
    将卡号前面的数字采用Luhn算法计算出信用卡或者借记卡的最后一位数字。

     

    3. 银行卡号校验 (Luhn算法)

    4. LUHN公式

     编辑

    本词条缺少信息栏名片图,补充相关内容使词条更完整,还能快速升级,赶紧来编辑吧!

    LUHN公式(LUHN formula)也叫模数10modulus 10),它是简单的数学运算,用来验证信用卡的编号。几乎所有的主要的信用卡发行公司的卡都是用它,这里面包括American ExpressVisaMaster CardDiscoverDiner's Club

    它最初是在二十世纪六十年代由一群数学家创造出来的,LUHN公式是公开的,任何人都可以使用。

    4.1. 计算步骤

    编辑

    LUHN公式通过一些简单的数学运算用信用卡号计算出一个校验数,它出现在信用卡号的最后一位。下面是这个公式的三个步骤:

    1. 从倒数(右边的)第二个数字开始,把下一个数乘二并加在一起。

    2. 从右到左,把跳过的数加到第一步的结果里。如果第一步中一个数字乘二之后结果导致出现两位数(如7+7=14),那么按照第二步在把出现的数字(14)加到第二步中。

    3. 从下个高位以零结尾的数减去第二步得到的结果。结果将和校验位一致。

    LUHN公式(LUHN formula)可以在给借方授权的时候把卡号发送前确保信用卡的有效性。在加拿大,它用来验证个人保险号。它并不检查信用卡的其他信息,包括卡是否过期。[1] 

    5. 工具卡号判断银行

    位数少于14的卡号基本是外资银行,或小银行。

    ***496748***        **     HSBC                               HSBCHKHHHKH  

    ***430259***        **     HSBC                               HSBCHKHHHKH  

    ***51878018***     **    Bank of East Asia Limited      BEASHKHHXXX   

    位数多于23的卡号大多是卡号包含字母或空格。

    62270014 **** 0045 ***      CHINA CONSTRUCTION BANK **                

    601382700 **** 9077 **      BANK OF CHINA FOSHAN BRANCH **

    如果是国内的主流银行(中、农、工、建、招、交等)基本都是基于16位或者19位的卡号。

    来看看提现成功(clear_success)里面的卡有多少满足Luhn规则

     

    5.1. 有效期

     

    5.2. 银行归属地查询

     

    作者:: 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 ) 

    汉字名:艾提拉(艾龙)   EMAIL:1466519819@qq.com

    转载请注明来源: http://blog.csdn.net/attilax

     

     

    6. 参考资料

     

    银行卡号编码规则.html

    银行卡号编码规则_昕中的世界_新浪博客.html

    Atiend

     

  • 相关阅读:
    Net基础篇_学习笔记_第十二天_面向对象继承(命名空间 、值类型和引用类型)
    Net基础篇_学习笔记_第十一天_面向对象(练习)
    js判断客户端是pc还是移动端
    swoole_table
    Master Reactor Manager Worker TaskWorker(Task)
    阻塞,非阻塞,同步,异步
    进程,线程与协程
    swoole 安装与简单应用
    laravel 简单应用 redis
    ubuntu 设置固定IP
  • 原文地址:https://www.cnblogs.com/attilax/p/15198453.html
Copyright © 2011-2022 走看看