Internet DRAFT - draft-stanish-iiban

draft-stanish-iiban



Internet Draft                                Walter Stanish
Intended status: Informational              The IFEX Project
Obsoletes: draft-stanish-iiban-00                   May 2013
Expires: November 16, 2013

           Internet International Bank Account Number (IIBAN)
                         draft-stanish-iiban-01


Abstract


   An Internet IBAN (IIBAN) identifies an internet-based financial
   endpoint in a manner that is superset-compatible with the existing
   European Committee for Banking Standards (ECBS) International Bank
   Account Number (IBAN) standard [ISO13616] and implementation
   recommendations [ECBS].  This document obsoletes draft-iiban-00.


Status of this Memo


   This memo defines an Experimental Protocol for the Internet
   community.  This memo does not specify an Internet standard of any
   kind.  Discussion and suggestions for improvement are requested.
   Distribution of this memo is unlimited.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at http://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This document is an individual submission. Comments are solicited
   and should be addressed to the author(s).

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   This Internet-Draft will expire on November 16, 2013.



The IFEX Project / ifex-project.org                             [Page 1]

INTERNET-DRAFT         Expires: November 16, 2013               May 2013


Copyright Notice

   Copyright (c) 2013 IETF Trust and the persons identified as the
   document authors. All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (http://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.





1.  Introduction


   An Internet IBAN (IIBAN) identifies an internet-based financial
   endpoint.  No assumptions are made about settlement paths, currencies
   or commodities being exchanged, or trust relationships between
   parties.  IIBAN provides a building block with which the internet
   community can develop viable, interoperable alternatives to legacy
   financial systems.

   Technically, IIBAN is an unofficial superset of the European
   Committee for Banking Standards (ECBS) International Bank Acccount
   Number (IBAN) standard [ISO13616] that is increasingly used in
   conventional global financial networks, including outside of its
   original home of Europe.  Against the IBAN registry [IBAN-REG], IIBAN
   subsumes the position of National Numbering Authority (NNA) for the
   nominal [ISO3166] 'nation' of AA (the Internet) in order to provide a
   financial endpoint registrar service for the internet community.

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in BCP 14, RFC 2119
   [RFC2119].









The IFEX Project / ifex-project.org                 Section 1.  [Page 2]

INTERNET-DRAFT         Expires: November 16, 2013               May 2013



Table of Contents


   1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . .   2
   2. Requirement. . . . . . . . . . . . . . . . . . . . . . . . . .   5
   3. Solution . . . . . . . . . . . . . . . . . . . . . . . . . . .   5
    3.1. ISO13616 (IBAN) . . . . . . . . . . . . . . . . . . . . . .   5
    3.2. IIBAN . . . . . . . . . . . . . . . . . . . . . . . . . . .   6
   4. General Considerations . . . . . . . . . . . . . . . . . . . .   8
    4.1. Human Format. . . . . . . . . . . . . . . . . . . . . . . .   8
    4.2. Issues of Centralization. . . . . . . . . . . . . . . . . .   8
    4.3. Country Code. . . . . . . . . . . . . . . . . . . . . . . .  10
    4.4. Institution Identifiers . . . . . . . . . . . . . . . . . .  10
     4.4.1. Issuing Paradigms. . . . . . . . . . . . . . . . . . . .  10
      4.4.1.1. Proxied Issue Schemes . . . . . . . . . . . . . . . .  11
      4.4.1.2. Distributed Consensus Schemes . . . . . . . . . . . .  11
      4.4.1.3. Private Issue Schemes . . . . . . . . . . . . . . . .  12
      4.4.1.4. IIBAN's Combined Issue Scheme . . . . . . . . . . . .  12
     4.4.2. Why Institutions?. . . . . . . . . . . . . . . . . . . .  13
     4.4.3. Number of Institutions . . . . . . . . . . . . . . . . .  13
     4.4.4. Number of Endpoints per Institution. . . . . . . . . . .  14
     4.4.5. Intra-Institution Routing. . . . . . . . . . . . . . . .  14
    4.5. BBAN Length . . . . . . . . . . . . . . . . . . . . . . . .  14
   5. Implementation Considerations. . . . . . . . . . . . . . . . .  16
    5.1. Acceptance of IIBAN and IBAN. . . . . . . . . . . . . . . .  16
    5.2. Case Sensitivity. . . . . . . . . . . . . . . . . . . . . .  16
    5.3. Machine vs. Human Format. . . . . . . . . . . . . . . . . .  16
    5.4. Checksum Error Correction Suggestion. . . . . . . . . . . .  16
    5.5. Country Code Handling . . . . . . . . . . . . . . . . . . .  17
    5.6. Internationalization. . . . . . . . . . . . . . . . . . . .  17
   6. Security Considerations. . . . . . . . . . . . . . . . . . . .  17
    6.1. Non-Linear Issue. . . . . . . . . . . . . . . . . . . . . .  17
    6.2. Validation. . . . . . . . . . . . . . . . . . . . . . . . .  18
    6.3. IANA Processes. . . . . . . . . . . . . . . . . . . . . . .  18
   7. IANA Considerations. . . . . . . . . . . . . . . . . . . . . .  18
    7.1. Institution Identifiers . . . . . . . . . . . . . . . . . .  18
     7.1.1. Name Space Exhaustion. . . . . . . . . . . . . . . . . .  18
     7.1.2. Registration . . . . . . . . . . . . . . . . . . . . . .  19
     7.1.3. Modification / Cancellation. . . . . . . . . . . . . . .  19
     7.1.4. Expiry . . . . . . . . . . . . . . . . . . . . . . . . .  19
    7.2. Publications. . . . . . . . . . . . . . . . . . . . . . . .  19
     7.2.1. IIBAN Institution Identifier Registry. . . . . . . . . .  19
    7.3. ISO Liason. . . . . . . . . . . . . . . . . . . . . . . . .  20
    7.4. Security. . . . . . . . . . . . . . . . . . . . . . . . . .  20
   8. References . . . . . . . . . . . . . . . . . . . . . . . . . .  21
    8.1. Normative References. . . . . . . . . . . . . . . . . . . .  21
    8.2. Informative References. . . . . . . . . . . . . . . . . . .  22



The IFEX Project / ifex-project.org                 Section 1.  [Page 3]

INTERNET-DRAFT         Expires: November 16, 2013               May 2013


   9. Acknowledgments. . . . . . . . . . . . . . . . . . . . . . . .  23
   10. Authors' Addresses. . . . . . . . . . . . . . . . . . . . . .  23
   11. Appendix A: Mistranscription Table. . . . . . . . . . . . . .  24
   12. Appendix B: Initial IIBAN Institution Identifier
   Registry Contents . . . . . . . . . . . . . . . . . . . . . . . .  26
   13. Appendix C: Document History. . . . . . . . . . . . . . . . .  27













































The IFEX Project / ifex-project.org                 Section 1.  [Page 4]

INTERNET-DRAFT         Expires: November 16, 2013               May 2013


2.  Requirement


   In recent years the internet has seen the emergence of an increasing
   variety of online financial settlement scenarios.  Such scenarios
   include web based commerce, high frequency trading (HFT) on stock
   markets, mobile phone 'in app' payments, mobile near field
   communication (NFC) physical proximity-based payments, online banking
   based bill payment, and interpersonal payments within Massive
   Multiplayer Online Roleplaying Games (MMORPGs), amongst others.
   These scenarios vary in at least the following aspects:

    * Typical payment size

    * Acceptable settlement latency

    * Currencies or commodities supported

    * Nature of trust relationships between parties (if any)

    * Requirement for offline operations

   Despite these differences, in each case the need remains to precisely
   identify each of the parties within a transaction.

   Given this trend, it makes sense to propose a standard mechanism for
   the consistent, global identification of internet-based financial
   endpoints.  IIBAN provides such a mechanism.



3.  Solution

3.1.  ISO13616 (IBAN)


   For inspiration we look toward emerging standards for international
   financial endpoint identification in conventional financial networks.
   Today's most widely adopted international standard in this area is
   the European Committee for Banking Standards (ECBS)' IBAN [ISO13616],
   which builds upon the ISO's 2-character country identification scheme
   [ISO3166].

   The format of an IBAN is as follows:

    <ISO3166-1 alpha2 country> + <2 digit checksum> + <BBAN>





The IFEX Project / ifex-project.org               Section 3.1.  [Page 5]

INTERNET-DRAFT         Expires: November 16, 2013               May 2013


   The checksum is calculated as follows:

    1. Set the checksum digits to '00'.

    2. Re-arrange the string such that the BBAN comes first, then
       the country code, and finally the '00' or blank checksum.

    3. Transpose the letters A-Z to the numbers 10-35, expanding
       the string as appropriate.

    4. Convert the string to an integer, ignoring leading zeros.

    5. Calculate the Mod-97 [ISO7064] checksum of the number.

    6. Subtract the checksum from 98 and, if necessary, pad with
       a leading 0 to make a two digit number.

   The BBAN is a nation-specific 'Basic Bank Account Number' that must
   be fixed length for any given nation but whose length may vary (to a
   maximum of 30 characters) between nations.  National formats are
   specified by National Numbering Authorities (NNAs).  SWIFT's IBAN
   registry [IBAN-REG] aggregates each national scheme in to the global
   IBAN standard.



3.2.  IIBAN


   In order to issue financial endpoint identifiers within the IBAN
   [ISO13616] scheme IANA assumes National Numbering Authority (NNA) or
   'nation' status for the nominal nation of 'AA' (the Internet).

   The IIBAN format may be expressed in ABNF [RFC5234] as follows:

    iiban        = iircc checksum bban         ; eg: AA110011123Z5678
    iircc        = iircc-aa                    ; IIBAN-reserved
                                               ; country code
    iircc-aa     = %d65.65                     ; ie. AA
    checksum     = 2iiban-digit                ; eg: 12
    bban         = institution account         ; eg: INST123Z5678
    institution  = rsv-inst / std-inst         ; eg: 0010 or INST
    rsv-inst     = "00" 2char                  ; eg: 0010
    std-inst     = nonzerochar 3iiban-char /   ; eg: INST
                   iiban-char nonzerochar 2iiban-char
    account      = 8iiban-char                 ; eg: 123Z5678

    iiban-char   = iiban-digit / caps-letter



The IFEX Project / ifex-project.org               Section 3.2.  [Page 6]

INTERNET-DRAFT         Expires: November 16, 2013               May 2013


    iiban-digit  = "0" / "1" / "2" / "3" / "4" / "5" / "6" / "7" / "8" /
                   "9"

    caps-letter  = %d65 / %d66 / %d67 / %d68 / %d69 / %d70 / %d71 /
                   %d72 / %d73 / %d74 / %d75 / %d76 / %d77 / %d78 /
                   %d79 / %d80 / %d81 / %d82 / %d83 / %d84 / %d85 /
                   %d86 / %d87 / %d88 / %d89 / %d90   ; ie. capital A-Z

    nonzerochar  = caps-letter / "1" / "2" / "3" / "4" / "5" / "6" /
                                 "7" / "8" / "9"

   An explanation of the major elements follows.

   iiban:
     A structurally valid IIBAN.

   iircc:
     IIBAN-reserved country code.  Initially "AA", though in future
     this MAY include one or more additional ISO 3166-1 alpha-2
     country codes subsumed by IANA for the expansion IIBAN namespace.

   checksum:
     Two checksum digits as per the IBAN standard, the algorithm for
     which is described above.  These digits are used to detect
     transposition errors, preventing accidental misrouting.

   bban:
     The Basic Bank Account Number (BBAN) is the portion of an IBAN
     defined by a National Numbering Authority (NNA).  In our nominal
     nation of 'AA' (the Internet), the BBAN defines the structure of
     an internet-based financial endpoint as being comprised of a
     four character institution code followed by an eight character
     institution-specific endpoint identifier.

   institution:
     The four character institution code identifies either a reserved
     portion of the name space or a registrant of 'institution' status.
     Four characters provides for a total of 1,679,616 institution
     codes (36^4).  Reserved institution codes are those that begin
     with two zeros ('00'), whilst all other codes are available for
     IANA to assign to registrants.










The IFEX Project / ifex-project.org               Section 3.2.  [Page 7]

INTERNET-DRAFT         Expires: November 16, 2013               May 2013


     The following table defines reserved institution codes.

     +-----------+-------------------------------------------+
     | Code      | Purpose                                   |
     +-----------+-------------------------------------------+
     | 0000-0009 | (Reserved for future use)                 |
     | 0010      | Private Use (eg. IPv4 10.x.x.x [RFC1918]) |
     | 0011      | Documentation, public works of fiction    |
     | 0012-00ZZ | (Reserved for future use)                 |
     +-----------+-------------------------------------------+

   account:
     An eight character, institution-specific,
     institution-assigned endpoint identifier.  The identifier
     length allows for 2,821,109,907,456 endpoints (36^8)
     per institution.



4.  General Considerations


4.1.  Human Format


   IBAN distinguishes between machine and human formatted endpoint
   identifiers.  Machine format IBAN are simply those stripped of spaces
   (' '), dashes ('-'), periods ('.'), and any other non-alphanumberic
   characters that may occur within the IBAN for presentation purposes.
   Human format IBAN include such characters to aid recognition and
   transcription.

   IIBAN implementations seeking a presentation scheme for similar
   purposes SHOULD use the [ECBS] mandated format, consisting of the
   machine format IIBAN with the addition of a single space (' ') every
   four characters, ie: 'AA11 0011 123Z 5678'.


4.2.  Issues of Centralization


   Conventional financial settlement systems typically assign endpoint
   creation, maintenance, and identification responsibility to large
   incumbent players (for example banks, major telecommunications
   carriers, online payment processors, credit card companies, stock
   exchanges or brokerage firms).  In addition, financial settlement
   processes themselves typically occur via a relatively small number of
   relatively centralized networks.



The IFEX Project / ifex-project.org               Section 4.2.  [Page 8]

INTERNET-DRAFT         Expires: November 16, 2013               May 2013


   Whilst this centralized approach is understandable from an historic
   perspective, today its age and drawbacks are becoming more visible.

    * Systems integration and maintenance overheads due to
      disparate endpoint identification schemes, centralized
      endpoint identifier validation and differing prerequisite
      communications security configurations (for example, TLS
      client certificates [RFC5246])

    * Poor fault tolerance. Incumbent players and their
      physical, legal and communications infrastructure
      represent undesirable Single Points of Failure (SPOFs)
      that act to reduce system availability.  Classic
      examples of this are banking services that suspend
      over the weekend, and unpredictable international
      settlement delays due to differing holidays affecting
      financial services in foreign jurisdictions.

    * Potential for abuse. Attackers (or indeed individual
      nation-states or organizations within conventional
      centralized financial systems) may consider temptation
      for abuse too great to resist.  Abuses observed include
      constant, passive, warrantless surveillance of entire
      populations [SWIFT2] [EDPS], financial blockades
      [WL] [WL2] [IRAN] and asset seizure [WSJ] [BERLINGSKE].

   It is hoped that IIBAN will assist the internet community to develop
   systems that move beyond the above limitations.























The IFEX Project / ifex-project.org               Section 4.2.  [Page 9]

INTERNET-DRAFT         Expires: November 16, 2013               May 2013


4.3.  Country Code


   In order to issue bank account numbers within the IBAN [ISO13616]
   scheme, National Numbering Authority (NNA) or 'nation' status must be
   assumed.  An appropriate [ISO3166] two letter country code must
   therefore be selected, ideally one that is not either in formal issue
   by the ISO or used informally by various global bodies.

   One such code is 'AA'.  This code is considered particularly
   attractive for the following reasons:

    * It is unlikely that a country will emerge that is best identified
      with 'AA'.  The ISO appears to recognize this fact, since in
      ISO 3166-1 [ISO3166] 'AA' is specified in the series of elements
      for user purposes which the ISO 3166/MA will never issue.

        "If users need code elements to represent country names not
         included in this part of ISO 3166, the series of letters AA,
         QM to QZ, XA to XZ, and ZZ, and the series AAA to AAZ, QMA to
         QZZ, XAA to XZZ, and ZZA to ZZZ respectively and the series of
         numbers 900 to 999 are available."
                                   -- ISO 3166-1:2006, clause 8.1.3,
                                      'User-assigned code elements'.

    * 'AA' will appear above legacy, centralized financial systems in
      alphabetically sorted destination lists

    * Users from international locations in which Roman letters are not
      frequently used are more likely to recognize 'AA' as two of the
      first letter of the Roman alphabet than arbitrary alternatives

    * The letter 'A' tends to have positive connotations

   IIBAN therefore employs 'AA' as a virtual [ISO3166] two letter
   country code to represent the Internet.

   As per the ISO's request within the same document, IANA will request
   that ISB notify the ISO of this use case.



4.4.  Institution Identifiers

4.4.1.  Issuing Paradigms






The IFEX Project / ifex-project.org            Section 4.4.1.  [Page 10]

INTERNET-DRAFT         Expires: November 16, 2013               May 2013


4.4.1.1.  Proxied Issue Schemes


   Conventional financial systems generally require a facilitating
   institution to issue financial endpoint identifiers on behalf of
   participants; for example, banks might issue account numbers on
   behalf of individuals or businesses.  Such de-facto identifier
   issuing paradigms can be described as 'proxied' in that they require
   participants to approach the network via one of a number of mediators
   in order to obtain a viable financial endpoint.

   Drawbacks to this approach include:

    * Inefficient name space utilization.  Individual institutitons
      are unlikely to achieve complete utilization of endpoint
      identifiers within their delegated name space.

    * Issues of centralized financial systems, described above.

   The benefits of this approach are:

    * Facilitates effective name space delegation to financial
      institutions who might apply differing models or guidelines to
      endpoint identifier issue, therefore encouraging heterogeneity.

    * Already an operational and widely understood/accepted model
      within conventional financial service industries.



4.4.1.2.  Distributed Consensus Schemes


   Using distributed consensus systems (such as distributed hash tables)
   it is possible to provide dynamic identifier name space management
   within a financial network itself, such that individual users might
   self-issue IIBANs and have them corroborated by other network
   participants.

   Drawbacks to this approach include:

    * The 'always on, always connected' requirement of most of these
      architectures.

    * The 'endpoint exposure' problem.
      IP addresses for critical financial systems are generally made
      available to a DHT network, which MAY not be desirable in a
      financial services setting.



The IFEX Project / ifex-project.org          Section 4.4.1.2.  [Page 11]

INTERNET-DRAFT         Expires: November 16, 2013               May 2013


    * Name space exhaustion.
      Without some underlying capability for reliable network
      participant identification, a single party could request vast
      quantities of identifiers in a bid to disrupt the network through
      name space exhaustion or processing overhead, causing Denial of
      Service (DoS).

    * Latency requirements for consensus establishment.

   The primary benefit of this approach is that it is completely
   decentralized, thus avoiding the issues associated with
   centralization (described above).



4.4.1.3.  Private Issue Schemes


   Just as the Internet Protocol provides a mechanism for Address
   Allocation for Private Internets [RFC1918], so too IIBAN provides a
   mechanism for address allocation for private financial networks.
   Private financial networks might include those operated in Massive
   Multiplayer Online Roleplaying Games (MMORPGs), financial
   simulations, technical documentation or fictional works of media.

   The reserved institution code '010' is normally used for such
   purposes.

   However, just as the latter two use cases (documentation and media)
   are segregated from the normal name space in standards for both
   telephony [NANPA, OFCOM] and IPv4 addressing [RFC5737], IIBAN also
   maintains a segregated address space (under the '011' reserved
   institution code) for this subset of private issue purposes.



4.4.1.4.  IIBAN's Combined Issue Scheme


   The benefits and drawbacks of various issuing paradigms have already
   been discussed.  IIBAN's combined issue paradigm allows the balancing
   of these against other requirements, such as IANA's need to perform
   name space management.  Under this scheme, proxied issue is
   facilitated through IANA managed institution registration, provision
   for two types of privately issued addresses is reserved within this
   document, and registered institutions COULD provide DHT or similar
   mechanisms for the management of their delegated name space.  The
   combined issue paradigm offers adequate provision for both



The IFEX Project / ifex-project.org          Section 4.4.1.4.  [Page 12]

INTERNET-DRAFT         Expires: November 16, 2013               May 2013


   manageability and decentralization, whilst maintaining heterogeneity.



4.4.2.  Why Institutions?


   With the advent of decentralized virtual currencies such as [BITCOIN]
   the conventional idea of a financial institution (such as a bank) may
   be seen by some as somewhat superfluous.  However, the notion remains
   useful:

    * Conventional currencies will not disappear in the conceivable
      future, so the notion of financial institutions is expected
      to endure at least as providers of currency exchange and holding
      services.

    * Systems such as [BITCOIN] have quirks that require slightly
      delayed settlement due to the nature of their decentralized,
      consensus-based approach to fiscal transfer.  Users requiring
      instant settlement MAY thus see benefit in the use of a
      centralized proxy system or organization as an instantaneous
      financial settlement provider (the 'institution').

    * IANA MAY delegate management of portions of the IIBAN name space
      through such institutions.

    * The IBAN standard mandates that each national format (BBAN)
      SHALL "include within it a bank identifier with a fixed position
      and length per country". [ISO13616]

    * Institutions may provide legitimate financial asset management
      services that protect assets and/or increase net worth.



4.4.3.  Number of Institutions


   The current global SWIFT BIC [ISO9362] system used for international
   inter-institution transaction addressing is reported to possess over
   7,500 'live' codes, and an additional 10,000 codes that may be used
   for manual transactions.  We therefore assume a requirement to
   support at least 15-20,000 institution identifiers within the IIBAN
   system.  Significantly more than this number (1,679,616, or 36^4) has
   been provided for.





The IFEX Project / ifex-project.org            Section 4.4.3.  [Page 13]

INTERNET-DRAFT         Expires: November 16, 2013               May 2013


4.4.4.  Number of Endpoints per Institution


   The number of endpoints per institution is significantly larger than
   is likely to be functionally required.  However, the eight character
   space allocated allows for clean and even visual grouping across
   functionally disparate structural components of the IIBAN under human
   format visual display requirements (ie. one space every four
   characters) as mandated by the European Committee for Banking
   Standards [ECBS].



4.4.5.  Intra-Institution Routing


   Intra-institution routing identifiers used in conventional financial
   networks such as 'sort code' or 'branch code' have been purposefully
   excluded from IIBAN.

   Institutions wishing to divide financial endpoints under their
   management between disparate entities, physical or logical systems
   MAY create their own address space segmentation schemes.  (It is
   noted that intra-institution routing codes are largely relics of an
   earlier financial era of disconnected systems and as such will
   probably be phased out over time, at the very least as public-facing
   identifiers.)



4.5.  BBAN Length


   BBAN lengths in the official registry [IBAN-REG] seem to be
   determined solely by National Numbering Authorities (NNAs) and are
   allowed to extend up to 30 characters.  In practice, however, they
   vary between about 11 and 26 characters.  To avoid issues of
   backwards compatibility with existing systems, exceeding this range
   is undesirable.

   Existing NNAs seem to determine BBAN formats simply by concatenating
   existing national account identifiers such as institution, branch and
   account number.  Because these numbers are typically very old they
   are often longer than strictly required as legacy identifiers:

    * Are sometimes numeric only (ie: do not include letters), or a
      significant portion of the BBAN is numeric only.




The IFEX Project / ifex-project.org              Section 4.5.  [Page 14]

INTERNET-DRAFT         Expires: November 16, 2013               May 2013


    * Often include secondary checksums that were instituted to avoid
      financial endpoint transposition errors in the days prior to
      electronic banking.  Such secondary checksums are no longer
      required for non-legacy transactions due to IBAN's built-in
      checksum feature.

   Thus, by allowing alphanumeric values for each character and relying
   solely upon IBAN's checksum, IIBAN increases the effective capacity
   of an endpoint identifier without requiring undue increase in its
   length.









































The IFEX Project / ifex-project.org              Section 4.5.  [Page 15]

INTERNET-DRAFT         Expires: November 16, 2013               May 2013


5.  Implementation Considerations


5.1.  Acceptance of IIBAN and IBAN

   Implementations SHOULD accept both IIBAN and IBAN equally in all
   cases, such that end users are NOT aware of any difference between
   the two standards.


5.2.  Case Sensitivity

   Implementations MAY accept mixed or lower case IIBAN input AND
   normalize this input to upper case prior to either processing or
   presentation.  However, because under the parent IBAN standard some
   nations' BBAN (national IBAN formats) require a distinction between
   upper and lower case letters, IIBAN implementations MUST be careful
   to normalize only IIBAN (ie: NOT IBAN) to upper case.  Additionally,
   it should be noted that IIBAN's uppercase only format is conformant
   to the European Committee for Banking Standards IBAN implementation
   recommendations [ECBS].


5.3.  Machine vs. Human Format

   As human format IIBANs include extraneous information,
   implementations SHOULD NOT output human format IIBAN where machine
   format would suffice.


5.4.  Checksum Error Correction Suggestion

   Implementers MAY choose to provide automatic suggestions for the
   resolution of checksum errors, by flipping commonly mistranscribed
   characters and revalidating the resulting IIBAN's checksum.  For
   example, given the knowledge that the characters 'O' (capital 'o')
   and '0' (zero) are often mistranscribed, when supplied the incorrect
   string 'AA11OO11123Z5678' as input, an implementation COULD
   programatically attempt to flip these characters and regenerate
   checksums, resulting in a checksum match on the string
   'AA110011123Z5678'.  The end user would then be prompted to confirm
   this was the intended input.

   When suggesting transcription error corrections, implementations
   SHOULD provide additional context information where possible.  For
   example, if a suggestion alters the institution code (eg: as per the
   above example) AND the implementation is either aware of the name of
   the originally input OR suggested (checksum validated) target



The IFEX Project / ifex-project.org              Section 5.4.  [Page 16]

INTERNET-DRAFT         Expires: November 16, 2013               May 2013


   institution, then this information SHOULD be displayed as part of the
   interface that is presented to the user for confirmation purposes.

   During testing of this algorithm with a simple mistranscriptions
   table (Appendix A), it was found that single-character transcription
   errors usually result in either one (ie: intended input only) or two
   possible suggestions for checksum-valid IIBANs.  However, when two
   characters are mistranscribed far too many suggestions were returned.
   Therefore implementations SHOULD check only for single
   mistransposition errors and the extended case of multiple
   mistransposition errors resulting from miscomprehension of a single
   character (for example, all '0' have been mistranscribed as 'O').


5.5.  Country Code Handling

   Because IANA MAY one day wish to subsume an additional country code
   in order to extend the IIBAN namespace, implementations MUST NOT
   implement fixed handling of 'AA' as the sole IIBAN-reserved country
   code.  Instead, implementations MUST treat the contents of IANA's
   IIBAN institution identifier registry document (see IANA
   Considerations and Appendix B) as the definition of valid IIBAN
   prefixes.


5.6.  Internationalization

   The IANA managed IIBAN Institution Identifier registry MAY include
   institution names as arbitrary UTF8 strings.

   To aid international recognition of individual IIBAN, only upper case
   letters are allowed within an IIBAN and IIBAN implementations MUST
   normalize all input to upper case before presentation or processing.
   (See Case Sensitivity).


6.  Security Considerations

   IIBAN only provides an endpoint identification scheme and DOES NOT
   approach problems of communications security, which are purposefully
   left to other protocols.  Even so, some security considerations are
   are pertinent.


6.1.  Non-Linear Issue

   To preserve the anonymity of clients and to refrain from leaking
   information about the number of financial endpoints created over a



The IFEX Project / ifex-project.org              Section 6.1.  [Page 17]

INTERNET-DRAFT         Expires: November 16, 2013               May 2013


   given period, institutions SHOULD refrain from issuing IIBAN in a
   sequential manner.  Instead, a random or semi-random sequence of
   issue SHOULD be adopted.


6.2.  Validation

   IBAN [ISO13616] and, by extension, IIBAN provide checksum digits for
   algorithmic identifier validation.  Implementers MUST be aware that
   the checksum is intended primarily for the early detection of
   transposition errors.  An IIBAN passing the checksum SHOULD be
   referred to as 'checksum-valid'.  As it does NOT necessarily exist,
   it MUST NOT be considered otherwise valid.

   In addition, for the purposes of efficiency pre-checkum validation
   MAY be executed.  Such validation MAY based upon one or both of the
   length and structure of the IIBAN.  An IIBAN passing such validation
   SHOULD be referred to as 'structure-valid'.  As it does NOT
   necessarily exist, it MUST NOT be considered otherwise valid.

   The only way to completely validate an IIBAN or IBAN is with the
   issuing institution.


6.3.  IANA Processes

   IANA MUST provide adequate authentication of registrant institution
   communications in order to prevent the subversion of established
   institutions' registration information via IANA's registrar
   functions.



7.  IANA Considerations

7.1.  Institution Identifiers

7.1.1.  Name Space Exhaustion

   Should the entire 'AA' name space approach registration, IANA MUST
   immediately select an additional [ISO3166] country prefix from those
   reserved by the ISO for user assignment, add it to the 'iircc' ABNF
   line, and publish the new IIBAN standard with the expanded namespace.








The IFEX Project / ifex-project.org            Section 7.1.1.  [Page 18]

INTERNET-DRAFT         Expires: November 16, 2013               May 2013


7.1.2.  Registration

   Institution identifiers MUST be assigned by IANA on a first come
   first served basis [RFC5226].  Institution identifiers SHOULD NOT be
   provided to entities capable of issuing IBAN in conventional
   financial networks as this would represent duplicate allocation under
   the IBAN standard.  Such entities SHALL be defined as those offering
   banking services in countries that appear within the IBAN registry
   [IBAN-REG], with definitions of those terms being solely of IANA's
   own judgement.  Registrants MUST provide the domain name with which
   their service is primarily associated AND the name of the registrant
   (either a person or an organizational entity).

   Institution identifiers MUST be assigned randomly from the pool of
   available assignments and MUST NOT be granted on a specific request
   basis.  Thus, the first issued institution code MUST NOT be '100'.
   Institutions unhappy with their random assignment for legitimate
   reasons (such as unfortunate linguistic connotations) MAY request one
   (1) replacement assignment.  No further replacement is allowed.
   Registrants requesting replacement assignments automatically cause
   their initial allocation to expire (see Expiry, below).


7.1.3.  Modification / Cancellation

   Registrants MUST contact IANA to cancel or change the details
   associated with their registration.  Authentication procedures will
   be stipulated at IANA's discression.


7.1.4.  Expiry

   In case of imminent name space exhaustion and no viable alternative
   avenues for expansion, IANA MAY consider the expiry of a registrant's
   stated primary domain for a reasonable period (as determined by IANA)
   as adequate grounds for the deallocation of an instutition
   identifier.  Deallocated identifiers MUST be immediately returned to
   the pool of available allocations, and MUST be re-issued to new
   parties on a first come, first served [RFC5226] basis.


7.2.  Publications


7.2.1.  IIBAN Institution Identifier Registry

   IANA SHALL publish revisions to the global registry of IIBAN
   institution identifiers as changes are made.



The IFEX Project / ifex-project.org            Section 7.2.1.  [Page 19]

INTERNET-DRAFT         Expires: November 16, 2013               May 2013


   IANA SHALL provide GPG-compatible cryptographic signatures along with
   each version of the registry.  IANA MAY provide additional
   cryptographic signatures and/or checksums, at their discretion.

   The registry SHALL utilize UTF8 encoding in order to meet
   internationalization requirements for institution names.

   The format and initial contents of this registry document are
   specified in Appendix B.


7.3.  ISO Liason

   On account of IIBAN's exclusive use of IBAN's reserved, user assigned
   name space, ISO liason is not strictly required but is requested by
   the ISO.  Therefore, IANA should request the ISB to notify the ISO of
   this use of the 'AA' prefix.


7.4.  Security

   IANA MUST provide adequate authentication of registrant institution
   communications in order to prevent the subversion of established
   institutions' registration information via IANA's registrar
   functions.  As IANA is likely to have superior experience in this
   domain, specific procedures are left to IANA's judgement.

























The IFEX Project / ifex-project.org              Section 7.4.  [Page 20]

INTERNET-DRAFT         Expires: November 16, 2013               May 2013


8.  References

8.1.  Normative References


   [ECBS]          European Committee for Banking Standards
                   "IBAN: Standard Impementation Guidelines",
                   SIG203 v3.2, August 2003.
                   http://www.europeanpaymentscouncil.eu/
                    knowledge_bank_download.cfm?
                    file=ECBS%20standard%20implementation%20guidelines%20SIG203V3.2.pdf

   [ISO9362]       ISO TC 68/SC 7 (Core Banking), "ISO 9362:2009:
                   Banking - Banking telecommunication messages -
                   Business identifier code (BIC)", ISO 9362:2009.
                   http://www.iso.org/iso/catalogue_detail?
                    csnumber=52017

   [ISO13616]      ISO TC 68/SC 7 (Core Banking), "ISO 13616-1:2007:
                   Financial services - International bank account
                   number (IBAN) -- Part 1: Structure of the IBAN",
                   ISO 13616-1:2007.
                   http://www.iso.org/iso/catalogue_detail?
                    csnumber=41031

   [ISO7064]       ISO JTC 1/SC 27 (IT Security techniques),
                   "ISO/IEC 7064:2003: Information technology -
                   Security techniques - Check character systems",
                   ISO/IEC 7064:2003.
                   http://www.iso.org/iso/iso_catalogue/
                    catalogue_tc/catalogue_detail.htm?csnumber=31531

   [IBAN-REG]      SWIFT, "ISO13616 IBAN Registry",
                   http://www.swift.com/solutions/messaging/
                    information_products/directory_products/
                    iban_format_registry

   [RFC2119]       Bradner, S., "Key words for use in RFCs to
                   Indicate Requirement Levels", BCP 14, RFC 2119,
                   March 1997.

   [RFC5226]       Narten, T., and H. Alvestrand, "Guidelines for
                   Writing an IANA Considerations Section in RFCs",
                   BCP 26, RFC 5226, May 2008.

   [RFC5234]       Crocker, D. and P. Overell, "Augmented BNF for
                   Syntax Specifications: ABNF", STD 68, RFC 5234,
                   January 2008.



The IFEX Project / ifex-project.org              Section 8.1.  [Page 21]

INTERNET-DRAFT         Expires: November 16, 2013               May 2013


8.2.  Informative References


   [BERLINGSKE]    Simon Bendtsen & Peter Suppli Benson,
                   "Dansk politimand fanget i amerikansk terrornet",
                   Berlingske, 26 February 2012.
                   http://www.b.dk/nationalt/
                    dansk-politimand-fanget-i-amerikansk-terrornet

   [BITCOIN]       Nakamoto, S., "Bitcoin: A Peer-to-Peer Electronic
                   Cash System", 2009-05-24.
                   http://www.bitcoin.org/bitcoin.pdf

   [EDPS]          European Data Protection Supervisor,
                   "Comments on the Communication from the Commission to
                   the European Parliament, the Council, the European
                   Economic and Social Committee and the Committee of
                   the Regions of 13 July 2011: 'A European terrorist
                   finance tracking system: Available options'",
                   25 October, 2011.  (Relevant excerpt follows:
                    "Currently, under TFTP, data are sent in bulk to
                     the US, to be stored and filtered according to
                     requests of the US Treasury Department. This has
                     raised serious criticism, especially by the
                     European Parliament (and obviously the EDPS and
                     WP29), notably with regard to the necessity and
                     proportionality of the 'bulk' data flows")
                   http://www.edps.europa.eu/EDPSWEB/webdav/site/mySite/
                    shared/Documents/Consultation/Comments/2011/
                    11-10-25_Comments_TFTS_EN.pdf

   [ISO3166]       ISO 3166/MA, "ISO - Maintenance Agency for ISO
                   3166 country codes" and "ISO 3166-1 decoding table",
                   November 2011.
                   http://www.iso.org/iso/country_codes.htm

   [NANPA]         NANPA, "555 Report", November 2011.
                   http://www.nanpa.com/nas/public/
                    form555MasterReport.do?method=display555MasterReport

   [OFCOM]         OFCOM, "Telephone Numbers for drama use (TV, Radio
                   etc)", November 2011.
                   http://stakeholders.ofcom.org.uk/telecoms/numbering/
                    guidance-tele-no/numbers-for-drama

   [PHPIBAN]       Stanish, Walter. The PHP IBAN project.
                   http://code.google.com/p/php-iban/




The IFEX Project / ifex-project.org              Section 8.2.  [Page 22]

INTERNET-DRAFT         Expires: November 16, 2013               May 2013


   [RFC1918]       Rekhter, Y. et al, "Address Allocation for Private
                   Internets", BCP 5, RFC 1918, Feburary 1996.

   [RFC5246]       Dierks, T., and E. Rescorla, "The Transport Layer
                   Security (TLS) Protocol - Version 1.2", RFC5246,
                   August 2008.

   [RFC5737]       Arkko, Cotton and Vogoda, "IPv4 Address Blocks
                   Reserved for Documentation", RFC5737, January 2010.

   [SWIFT2]        European Parliament, "Parliament gives green light
                   for SWIFT II", #20100707IPR78054, 8th July, 2010.
                   http://www.europarl.europa.eu/sides/getDoc.do?
                    language=en&type=IM-PRESS&reference=20100707IPR78054

   [WL]            Wikileaks, "Banking Blockade", October 2011.
                   http://wikileaks.org/Banking-Blockade.html

   [WL2]           The Nonprofit Quarterly, "The Financial Blockade of
                   WikiLeaks and Its Meaning for the Nonprofit Sector",
                   October 2011.
                   http://www.nonprofitquarterly.org/?option=com_content
                    &view=article&id=17171

   [WSJ]           Emshwiller, J., and G. Fields, "Federal Asset Seizure
                   Seizures Rise, Netting Innocent With Guilty", The
                   Wall Street Journal, August 2011.
                   http://online.wsj.com/article/
                    SB10001424053111903480904576512253265073870.html



9.  Acknowledgments


    * Payward, Inc. funded the research and development of this
   document.


10.  Authors' Addresses


   Prepared by Walter Stanish <walter@stani.sh> of Payward, Inc. on
   behalf of The Internet Financial EXchange (IFEX) Project:
   http://www.ifex-project.org/






The IFEX Project / ifex-project.org               Section 10.  [Page 23]

INTERNET-DRAFT         Expires: November 16, 2013               May 2013


11.  Appendix A: Mistranscription Table

   The ABNF [RFC5234] grammar below identifies alternate Roman letters
   and numerals from which a user-input character may reasonably be
   supposed to have originated.  Information was compiled manually,
   taking in to account various writing styles and perceived common
   errors of recognition across both the lower and upper case letter
   forms.  Note that the data is not based upon formal research and is
   is reproduced here for the sole purpose of providing a reasonable and
   convenient basis for IIBAN-based system implementation.  Replacement
   characters have been roughly ordered by estimate mistransposition
   frequency.  A reference implementation is available [PHPIBAN].

   (Note: Such a structure may apparently be known as a 'confusion
   matrix' in the field of artificial intelligence, or a 'contingency
   table' or 'error matrix' in other fields of computing.  Instead, we
   use the term 'mistranscription table' as it seems less generic and
   more self-evident.)


 ; formalities
 roman-char = number / letter
 number     = c-0 / c-1 / c-2 / c-3 / c-4 / c-5 / c-6 / c-7 / c-8 / c-9
 letter     = c-a / c-b / c-c / c-d / c-e / c-f / c-g / c-h / c-i / c-j
                  / c-k / c-l / c-m / c-n / c-o / c-p / c-q / c-r / c-s
                  / c-t / c-u / c-v / c-w / c-x / c-y / c-z

 ; possible sources of mistranscribed numbers
 c-0 = "O" / "6" / "D" / "G"
 c-1 = "I" / "L" / "7" / "2" / "Z"
 c-2 = "Z" / "7" / "P" / "E" / "1"
 c-3 = "8" / "B"
 c-4 = "G" / "U"
 c-5 = "S" / "7"
 c-6 = "0" / "O" / "8" / "G" / "C" / "B" / "D"
 c-7 = "J" / "I" / "1" / "L"
 c-8 = "B" / "3" / "6"
 c-9 = "G" / "Y" / "O" / "0" / "D"

 ; possible sources of mistranscribed letters
 c-a = "G" / "Q" / "O" / "0"
 c-b = "6" / "3" / "8" / "P" / "0" / "O"
 c-c = "R" / "6" / "I" / "L" / "O" / "0"
 c-d = "0" / "O" / "9" / "Q" / "G" / "6" / "A"
 c-e = "F" / "G" / "0" / "2" / "K" / "Z" / "S" / "O"
 c-f = "E" / "K" / "T" / "P" / "Y" / "4" / "B" / "7" / "1"
 c-g = "9" / "Q" / "8" / "6" / "0" / "C" / "4" / "O"
 c-h = "B" / "N" / "A" / "4" / "6" / "M" / "W" / "F" / "R" / "T" / "X"



The IFEX Project / ifex-project.org               Section 11.  [Page 24]

INTERNET-DRAFT         Expires: November 16, 2013               May 2013


 c-i = "1" / "L" / "7" / "J" / "2" / "T" / "Z"
 c-j = "I" / "7" / "2" / "9" / "1" / "U" / "T" / "Q" / "P" / "Y" / "Z"
           / "L" / "S"
 c-k = "F" / "X" / "H" / "R"
 c-l = "1" / "2" / "7" / "C" / "I" / "J" / "R" / "T" / "Y" / "Z"
 c-m = "H" / "8" / "E" / "3" / "N" / "V" / "W"
 c-n = "H" / "R" / "C" / "2" / "4" / "M" / "O" / "P" / "K" / "T" / "Z"
 c-o = "0" / "6" / "9" / "A" / "D" / "G" / "C" / "E" / "B" / "N" / "P"
           / "Q" / "R"
 c-p = "F" / "4" / "8" / "2" / "B" / "J" / "R" / "N" / "O" / "T" / "Y"
 c-q = "O" / "G" / "9" / "Y" / "1" / "7" / "L"
 c-r = "K" / "B" / "V" / "C" / "1" / "L" / "2"
 c-s = "5" / "6" / "9" / "B" / "G" / "Q" / "A" / "Y"
 c-t = "1" / "4" / "7" / "F" / "I" / "J" / "L" / "P" / "X" / "Y"
 c-u = "V" / "N" / "A" / "4" / "9" / "W" / "Y"
 c-v = "U" / "R" / "N"
 c-w = "M" / "N" / "U" / "V"
 c-x = "K" / "F" / "4" / "T" / "V" / "Y"
 c-y = "G" / "V" / "J" / "I" / "4" / "9" / "T" / "F" / "Q" / "1"
 c-z = "2" / "1" / "L" / "R" / "I" / "7" / "V" / "3" / "4"































The IFEX Project / ifex-project.org               Section 11.  [Page 25]

INTERNET-DRAFT         Expires: November 16, 2013               May 2013


12.  Appendix B: Initial IIBAN Institution Identifier Registry Contents

Prior to IANA handover, parties wishing to acquire an instutition
identifier may do so by contacting the IFEX Project via ifex-project.org


 # IIBAN Institution Identifier Registry.
 #
 # To be published by IANA and replicated freely.
 #
 # Format:
 #  - Lines beginning with '#' are comments.
 #  - Whitespace should be ignored.
 #  - Fields at the end of a record may be absent.
 #  - Records are comprised of the following fields (ABNF):
 #     country-code institution-code "|" created "|" modififed \
 #       "|" domain "|" registrant "|" fingerprint
 #
 # Fields:
 #  country-code      Two letter ISO 3166-1 alpha-2 country code.
 #  institution-code  Three character institution identifier.
 #  created           Date of registration (YYYY-MM-DD).
 #  modified          Date last modified (YYYY-MM-DD), or blank.
 #  domain            Primary domain name associated with the record.
 #  registrant        Native language name of the registrant (UTF8).
 #  fingerprint       Optional public key fingerprint.  Format is
 #                    the concatenated (whitespace stripped) output
 #                    of a GPG fingerprint, obtainable via
 #                    `gpg -k; gpg --fingerprint <keyid>`.
 AA0010|2012-11-13|||(IANA: Reserved for private use)
 AA0011|2012-11-13|||(IANA: Reserved for documentation/public fiction)
 AA34CF|2012-11-13||payward.com|Payward|29ABE6723D760F83A27E77D563635213C8515C12



















The IFEX Project / ifex-project.org               Section 12.  [Page 26]

INTERNET-DRAFT         Expires: November 16, 2013               May 2013


13.  Appendix C: Document History

draft-stanish-iiban-01 (2013-05-16)
  - Integrate feedback from Barry Leiba
     - Avoid possible RFC5234 ambiguous use of 'char' and
       'digit' in ABNF.
     - Remove RFC2119 notation from IANA Considerations.
     - Remove improper RFC2119 use.
     - Change to ISO liason recommendation.
     - Change to IANA process security recommendation.
  - Update ABNF as above.
  - Update headers.

draft-stanish-iiban-00 (2012-11-13)
  - Update recommended human format to ECBS.
  - Update ABNF specification to respect case.
  - Document modifications (including document name) as requested for
    conformance with BCP 78 and BCP 79.
  - Add European Committee for Banking Standards (ECBS) recommendations
    conformity notes, including modification to document abstract.
  - Remove requirement for the support of lowercase input, in line with
    ECBS recommendations.
  - Extend institution code length from three to four characters, and
    account code length from six to eight characters, in line with the
    ECBS-mandated presentation for human format IBAN.
  - Mandate IANA registry signature in GPG format.
  - Added explanatory note on mistranscription terminology.
  - Added Danish report on US seizure of an intra-European transfer.
  - Added European Data Protection Supervisor comments.
  - Added asset management and growth as points for institutions.
  - Corrected reserved institution code table summary.
  - Typographic error correction.
  - Various minor changes in nomenclature.

draft-iiban-01 (2012-04-13)
  - Added request to accept IBAN and IIBAN equally.
  - Added case sensitivity information.
  - Developed and added a reference mistranscriptions table and
    the resulting 'Checksum Error Correction Suggestion' section.
  - Added official limitation of 30 characters per BBAN.
  - Added IBAN's fixed length national institution identifier
    requirement.
  - Generalized DHT scheme description to distributed consensus systems.
  - Added latency as a drawback to distributed consensus systems.
  - Rewording of some sections, notably IANA Considerations.
  - Typographic error correction.
  - Added 'iircc' field to ABNF and 'Country Code Handling' to
    implementation section in order to discourage hard coded



The IFEX Project / ifex-project.org               Section 13.  [Page 27]

INTERNET-DRAFT         Expires: November 16, 2013               May 2013


    country portions in early implementations.
  - Added 'Human Format' section due to observed implementation issues.
  - Added 'Machine vs. Human Format' section.
  - Added 'Internationalization' section.
  - Removed extraneous registration information that likely duplicates
    data already available through DNS (business address, etc.)
  - Added initial registry contents and format definition.

draft-iiban-00 (2011-11-16)
  Initial relase.









































The IFEX Project / ifex-project.org               Section 13.  [Page 28]