WO2009039600A1 - Système et procédé pour une vérification sécurisée de transactions électroniques - Google Patents

Système et procédé pour une vérification sécurisée de transactions électroniques Download PDF

Info

Publication number
WO2009039600A1
WO2009039600A1 PCT/CA2007/001710 CA2007001710W WO2009039600A1 WO 2009039600 A1 WO2009039600 A1 WO 2009039600A1 CA 2007001710 W CA2007001710 W CA 2007001710W WO 2009039600 A1 WO2009039600 A1 WO 2009039600A1
Authority
WO
WIPO (PCT)
Prior art keywords
pin
encrypted
encrypted pin
hashed
party processor
Prior art date
Application number
PCT/CA2007/001710
Other languages
English (en)
Inventor
Ernie Nachtigall
Original Assignee
International Business Machines Coporation
Ibm Canada Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US11/859,957 external-priority patent/US8621230B2/en
Application filed by International Business Machines Coporation, Ibm Canada Ltd. filed Critical International Business Machines Coporation
Publication of WO2009039600A1 publication Critical patent/WO2009039600A1/fr

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/02Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/347Passive cards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3825Use of electronic signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3827Use of message hashing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1008Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1025Identification of user by a PIN code
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1025Identification of user by a PIN code
    • G07F7/1075PIN is checked remotely
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1025Identification of user by a PIN code
    • G07F7/1091Use of an encrypted form of the PIN

Definitions

  • the present invention relates to systems and methods for verification of electronic transactions, and in particular secure processing of personal identification numbers.
  • the present invention provides a system and method for secure verification of electronic transactions, and in particular secure processing of personal identification numbers when third party processors are involved.
  • a variable length PIN associated with a credit card or debit card is encrypted, then hashed using a one-way hash algorithm before it is passed along to and stored by a third party processor.
  • the encrypted-hashed PIN always remains in an encrypted form while in the hands of the third party processor.
  • secure cryptographic hardware is used to store the one-way hash algorithm. Encrypted PIN values received for verification (e.g.
  • the encrypted PIN values are highly resistant to reverse engineering or decryption.
  • a method of processing a personal identification number comprising: encrypting at an owning institution processor a clear PIN input using an encryption algorithm to generate a first encrypted PIN; hashing at the owning institution processor the first encrypted PIN using a one-way hash algorithm to generate a first hashed-encrypted PIN; storing at a third party processor the first hashed- encrypted PIN.
  • the method further comprises: receiving at the third party processor a second encrypted PIN generated from a clear PIN input; translating at the third party processor the second encrypted PIN into a third encrypted PIN in a form usable by the third party processor; hashing at the third party processor the third encrypted PIN using the one-way hash algorithm to generate a second hashed-encrypted PESf; and comparing at the third party processor the second hashed-encrypted PIN to the stored first hashed-encrypted PIN to determine if the second encrypted PIN is generated from the same clear PIN input as that of the first encrypted PIN.
  • the method further comprises securing at the third party processor the one-way hash algorithm in cryptographic hardware.
  • the method further comprises receiving at the owning institution processor a user generated clear PIN input.
  • the user generated clear PIN input has a variable length
  • the method further comprises generating at the owning institution processor the first hashed- encrypted PIN from the variable length PIN, and storing at the third party processor the first hashed-encrypted PIN from the variable length PIN.
  • the method further comprises receiving at the third party processor the second encrypted PIN generated from a clear PIN input; translating at the third party processor the second encrypted PIN into a third encrypted PIN in a form usable by the third party processor; hashing at the third party processor the third encrypted PIN using the oneway hash algorithm to generate a second hashed-encrypted PIN; comparing at the third party processor the second hashed-encrypted PIN to the stored first hashed-encrypted PIN to determine if the second encrypted PIN is generated from the same variable length clear PIN input as that of the first encrypted PIN.
  • a system for processing a personal identification number comprising: an encryption algorithm module provided at an owning institution processor and configured to encrypt a clear PIN input and to generate a first encrypted PIN; a one-way hash algorithm module provided at the owning institution processor and configured to hash the first encrypted PIN and to generate a first hashed- encrypted PIN; storage provided at the third party processor for storing the first hashed- encrypted PIN.
  • PIN personal identification number
  • the system further comprises: a PIN translator module provided at the third party processor for translating a second encrypted PIN into a third encrypted PIN in a form usable by the third party processor; a one-way hash algorithm module provided at the third party processor for hashing the third encrypted PIN to generate a second hashed- encrypted PIN; a comparison module provided at the third party processor for comparing the second hashed-encrypted PIN to the stored first hashed-encrypted PIN to determine if the second encrypted PIN is generated from the same clear PIN input as that of the first encrypted PIN.
  • the system further comprises cryptographic hardware provided at the third party processor for securing the one-way hash algorithm.
  • system further comprises receiving means provided at the owning institution processor for receiving a user generated clear PIN input.
  • the system further comprises a PIN translator module provided at the third party processor for translating a second encrypted PIN into a third encrypted PIN in a form usable by the third party processor; a one-way hash algorithm module provided at the third party processor for hashing the third encrypted PIN to generate a second hashed-encrypted PIN; a comparison module provided at the third party processor for comparing the second hashed-encrypted PIN to the stored first hashed-encrypted PIN to determine if the second encrypted PIN is generated from the same clear PIN input as that of the first encrypted PIN.
  • a PIN translator module provided at the third party processor for translating a second encrypted PIN into a third encrypted PIN in a form usable by the third party processor
  • a one-way hash algorithm module provided at the third party processor for hashing the third encrypted PIN to generate a second hashed-encrypted PIN
  • a comparison module provided at the third party processor for comparing the second hashed-encrypte
  • system further comprises cryptographic hardware provided at the third party processor for securing the one-way hash algorithm.
  • a computer readable medium storing computer code that when loaded into one or more data processors adapts the processors to provide a method of processing a personal identification number (PIN), the computer readable medium comprising: code for encrypting at a owning institution processor a clear PIN input using an encryption algorithm to generate a first encrypted PIN; code for hashing at the owning institution processor the first encrypted PEST using a one-way hash algorithm to generate a first hashed-encrypted PIN; code for storing at a third party processor the first hashed-encrypted PIN.
  • PIN personal identification number
  • the computer readable medium further comprises: code for receiving at the third party processor a second encrypted PIN generated from a clear PIN input; code for translating at the third party processor the second encrypted PIN into a third encrypted PIN in a form usable by the third party processor; code for hashing at the third party processor the first encrypted PIN using the one-way hash algorithm to generate a second hashed-encrypted PIN; and code for comparing at the third party processor the second hashed-
  • the computer readable medium further comprises code for receiving a user generated clear PIN input.
  • the user generated clear PIN input has a variable length
  • the computer readable medium further comprises code for generating the first hashed- encrypted PIN from the variable length PIN at the owning institution processor and storing the first hashed-encrypted PIN from the variable length PIN at the third party processor.
  • the computer readable further comprises code for securely accessing the one-way hash algorithm secured in cryptographic hardware at the third party processor.
  • FIG. 1 shows a generic data processing system that may provide a suitable operating environment
  • FIG. 2 shows a schematic block diagram of a PIN verification system
  • FIG. 3 shows a schematic block diagram of a PIN encryption system and method in accordance with an embodiment
  • FIG. 4 shows a schematic block diagram of a PIN decryption system and method in accordance with an embodiment.
  • the present invention relates a system and method for secure verification of electronic transactions, and in particular secure processing of personal identification numbers or PINs.
  • FIG. 1 shows a generic data processing system 100 that may include a central processing unit (“CPU") 102 connected to a storage unit 104 and to a random access memory 106.
  • the CPU 102 may process an operating system 101, application program 103, and data 123.
  • the operating system 101, application program 103, and data 123 may be stored in storage unit 104 and loaded into memory 106, as may be required.
  • An operator 107 may interact with the data processing system 100 using a video display 108 connected by a video interface 105, and various input/output devices such as a keyboard 110, mouse 112, and disk drive 114 connected by an I/O interface 109.
  • the mouse 112 may be configured to control movement of a cursor in the video display 108, and to operate various graphical user interface ("GUI") controls appearing in the video display 108 with a mouse button.
  • the disk drive 114 may be configured to accept data processing system readable media 116.
  • the data processing system 100 may form part of a network via a network interface 111, allowing the data processing system 100 to communicate with other suitably configured data processing systems (not shown).
  • the particular configurations shown by way of example in this specification are not meant to be limiting.
  • video interface 105, video display 108, keyboard 100, and mouse 112 may be provided at a workstation operatively connected to a mainframe (not shown), and not at the mainframe itself.
  • FIG. 2 shown is a schematic block diagram of an electronic transaction verification system 200 that may include one or more data processing systems 100 suitably configured for various purposes.
  • electronic transaction verification system 200 may include a banking institution 202 connected via a network 204 to its own automated teller machine (ATM) 206.
  • the banking institution 202 may maintain a banking institution database 203 containing information on debit cards or credit cards issued to various customers.
  • the banking institution 202 processes its own electronic payment transactions and validates PINs entered by its customers at ATM 206 by accessing records stored in database 203.
  • PIN processing is one of the most secure areas within any bank as any security breach may be devastating from a reputation standpoint, as well as from the viewpoint of exposure to legal risks.
  • the banking institution 202 may want a third party processor to have the ability to process electronic transactions on its behalf. This may be done, for example, in situations where the banking institution 202 may not able to verify the transaction itself (e.g. due to a communication problem or system maintenance, or because of geographic location).
  • banking institution 202 may be connected via network 204 to a third party processor 208.
  • the third party processor 208 may be, for example, a service provider that may be engaged by the banking institution 202 to verify credit card or debit card transactions on its behalf.
  • Third party processor may maintain a third party database 209 that may store data that may be provided by banking institution 202 for the purposes of conducting electronic transaction verification on the banking institution 202 's behalf.
  • Third party processor 208 may be accessible via a network 214 to retail location 210 having a point-of-sale (POS) terminal 212.
  • the third party processor 208 may also be connected to various other retail locations via network 210, such as retail location 216 having POS terminal 218.
  • the third party processor 208 there are a number of available techniques that may be used by the third party processor 208 to accomplish PIN verification processing.
  • the first technique requires that all cryptographic keys and processing information available to the owning banking institution 202 also be available to the third party processor 208 such that the normal authorization processes done at the banking institution 202 can also be performed at the third party processor 208.
  • a drawback to this approach is that highly sensitive cryptographic keys may need to be made available outside the banking institution 202 's direct control. If this is done, it is possible that rogue personnel with the third party processor 208 could use the cryptographic keys to manufacture counterfeit cards with their respective PINs.
  • a second technique requires that encrypted PIN information be maintained at the banking institution 202 and at the third party processor 208 within client records (e.g. in a cardholder database in banking institution database 203 and third party database 209).
  • transaction processing requires that the encrypted PIN received from POS terminals 212, 218 be securely translated from encryption under a session key (used at the POS terminals 212, 218) to encryption under the database encryption key (used at the third party processor 208).
  • the translated cryptogram may then be compared against the database cryptogram. A match between the session key and the database stored encryption key means that the same PIN was used.
  • the PIN information stored in the third party database 209 is usually encrypted, the possibility exists that a rogue third party insider could translate the database encrypted PINs using that same database encryption key which may be available to that insider. It is then simply a matter of decrypting the PIN values for the entire database.
  • a third technique requires using two sets of cryptographic keys and two separate PIN algorithms.
  • the banking institution 202 may use either of the two above approaches to process PINS ⁇ i.e. the banking institution 202 may calculate PINs via an algorithm, or it may store encrypted PIN values in a client database.
  • a second, separate cryptographic key may then be provided to the third party processor 208.
  • the banking institution 202 may use this cryptographic key to generate PIN Verification Values (PW).
  • PW PIN Verification Values
  • a PW may be generated from encrypting the client account number (i.e. the credit card or debit card number) and the clear (i.e. unencrypted) value of an encrypted PIN.
  • the algorithm requires an encrypted value which it may then securely decrypt within the confines of secure cryptographic hardware.
  • the result is then passed through an extraction routine and, typically, a four-digit reference may be produced.
  • the banking institution 202 creates the reference, and the third party processor 208 may use the PW algorithm to verify the reference.
  • the third party processor 208 does not have access to cryptographic information that can be used to manufacture credit/debit cards.
  • the PVV algorithms in use today typically only allow a relatively short fixed number of digits (typically 4 digits) which may allow the PIN to be hacked in a concerted effort.
  • PIN encryption system 300 may include a PIN encryption algorithm module 304, and a one-way hash algorithm module 308.
  • the PIN encryption algorithm module 304 may be configured to receive a clear PIN input 302, and to produce an encrypted PIN output 306.
  • a one-way hash algorithm module 308 may be configured to receive the encrypted PIN output 306 and produce a hashed-encrypted PIN output 310.
  • a corresponding method may proceed as follows: First, a PIN value provided at clear PIN input 302 is encrypted via a PIN encryption algorithm 304 to produce an encrypted PIN output 306.
  • the PIN encryption 304 may be, for example, a third party database cryptographic key (e.g. ANSI X9.8, also known as ISO-O).
  • the encrypted PIN output 306 may be passed through one-way hash algorithm 308 to produce a hashed-encrypted PIN output 310.
  • the hash algorithm 308 used may be, for example, Secure Hash Algorithm (SHA)-256.
  • the resulting value output of the one-way HASH) is now the obscured version of the encrypted PIN.
  • the owning banking institution 202 may make available a shared encryption key (KPEV) to the third party processor 208.
  • KPEV shared encryption key
  • the banking institution 202 then translates all PIN values from encryption under a banking institution key to encryption under this shared KPEV.
  • the banking institution 202 may allow customers to have PENs that may have a variable number of digits.
  • the PIN may be virtually any length, certain parameters may be set for a minimum number of characters and a maximum number of characters.
  • the minimum length may be 4 digits, and the maximum length may be 12 digits, as per PIN standards.
  • the original PIN may be encrypted in the ANSI X9.8 or ISO-O format, for example, such that the encrypted values are unique.
  • ANSI X9.8/ISO-0 format even though a four digit PIN value can be from 0000 to 9999, all PINs may be virtually unique since the actual PIN may be exclusive OR'ed with, for example, the 12 most significant digits of a unique account number. Since the accounts are unique, the resulting PIN value will also be virtually unique.
  • PIN encryption algorithm module 304 and one-way hash algorithm module 308 translates the value into a hashed-encrypted PIN output 310. Since hashing is a one-way function, and as the PIN does not have a fixed number of values, it will be appreciated that the hashed-encrypted PIN output 310 will be highly resistant to hacking, and the clear PIN input 302 may not be reasonably recovered by the third-party processor 208. Thus, the hashed-encrypted PIN output 310 for each client PIN may be safely stored in the third party database 209 and made available to the third party processor 208 for secure PIN verification.
  • the third party PIN verification system 400 may include an encrypted PIN translation module 404, a one-way hash algorithm module 406, and a comparison module 410.
  • the encrypted PIN translation module 404 may be configured to receive an encrypted PIN input 402 (e.g. from POS 212 or 218) and to produce a translated PIN output 405.
  • the one-way hash algorithm module 406 may be configured to receive the translated PIN output 405 and to produce a hashed-encrypted PIN output 408.
  • the comparison module 410 may be configured to compare the hashed-encrypted PIN output 408 to a previously stored hashed-encrypted PIN value (e.g. as may be stored in third party database 209).
  • a corresponding method may proceed as follows: Upon receiving a card verification request (e.g. from a customer using a credit card or debit card at POS 212 or 218), the PIN entered by the user may be received as an encrypted PIN input 402.
  • this encrypted PIN input 402 may be translated (e.g. by using the Encryption PIN translation module 404) by the third party processor 208 using a shared device encryption key to another encrypted form usable by the third party processor (i.e. the KPEV provided by the banking institution).
  • Encryption PIN translation module 404 produces a translated PIN 405.
  • the third party processor 208 uses a one-way hash algorithm 406 provided in secure cryptographic hardware to produce a hashed-encrypted PIN output 408 from the translated PIN 405. This hashed-encrypted PIN 408 is then compared to the hashed-encrypted values previously stored in the third party database 209. As the third party processor 208 cannot practically reverse engineer the one-way hash algorithm used in one-way hash algorithm module 406, and does not know the length of the variable PIN used, the third party processor 308 does not have sufficient information to generate the original clear PINs. Effective control is thus retained by the banking institution 202.
  • the proposed solution may further involve validation of a supplied token (e.g. a magnetically striped card as in credit or debit) to verify that, again, the owning banking institution 202 actually produced and generated a cryptographic checksum that verifies the original. This verification may happen both at the banking institution 202 when it does validation processing and also at the third party processor 208.
  • a supplied token e.g. a magnetically striped card as in credit or debit
  • credit card issuers such as VISATM, Master CardTM, and AMEXTM use various card verification techniques (e.g. card verification value / card verification code / card security code - CW/CVC/CSC) that involve the use of proprietary cryptographic keys.
  • the normal card verification algorithm may be used which can verify and also create valid tokens (e.g. CVV/CVC/CSC).
  • CVV/CVC/CSC the normal card verification algorithm
  • the banking institution 202 uses most of the data normally used for this verification, as well as the cryptographically generated checksum to then pass this modified data through the normal CW/CVC/CSC algorithm. This value is then made available to the stand-in system and serves to validate that the supplied token was generated by the owning bank institution 202 (since the third party processing site uses the clear text, yet the owning bank institution securely generated the checksum) in its verification process.
  • the encrypted PIN value of an account is received (e.g. from POS devices 212, 218), then translated using the KPEV.
  • the result is hashed and that result is then compared to the values resident in the third party database 404.
  • To verify that the supplied magnetically striped card has been issued by the banking institution 202 it is possible to still use the CW/CVC/CSC function.
  • the banking institution 202 will create its true CW/CVC/CSC value using its own secret cryptographic keys.
  • the CW/CVC/CSC value may still be written to the magnetic stripe of the client card.
  • a separate CW/CVC/CSC cryptographic key (hereinafter "KVCV”) may then be shared with the third party processor 208.
  • the KVCV is then used to also process the CW/CVC/CSC again, but this time, instead of using a SERVICE CODE field, the true CW/CVC/CSC is used in its place. This helps to ensure that the resulting cryptographic "checksum" also includes, and is dependant on, the true CW/CVC/CSC generated from the banking institution 202's cryptographic keys. This recalculated CW/CVC/CSC is then also made available to the third party processor 208 and stored in the third party database 404 along with the above described hashed-encrypted PIN output 310.
  • the KVCV cannot be used to generate valid magnetic stripe cards.
  • the CW/CVC/CSC as described here is also a cryptographic one-way function such that the result cannot be used to recover the original source.

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Storage Device Security (AREA)

Abstract

L'invention concerne un système et un procédé pour une vérification sécurisée de transactions électroniques et, en particulier, un traitement sécurisé de numéros d'identification personnels lorsque des processeurs de tiers sont impliqués. Dans un mode de réalisation, un numéro d'identification personnel (PIN) de longueur variable associé à une carte de crédit ou à une carte de débit est crypté, puis haché à l'aide d'un algorithme de hachage unidirectionnel avant d'être transmis à un processeur de tiers et stocké par celui-ci. Le PIN crypté et haché reste toujours en une forme cryptée tant qu'il est dans les mains du processeur de tiers. Au niveau du processeur de tiers, du matériel cryptographique sécurisé est utilisé pour stocker l'algorithme de hachage unidirectionnel. Des valeurs PIN cryptées reçues pour une vérification (par exemple, provenant d'un terminal de point de vente de détaillant) sont converties et hachées à l'aide de l'algorithme de hachage unidirectionnel, et la valeur hachée et cryptée obtenue est comparée aux valeurs PIN hachées et cryptées préalablement stockées dans le processeur de tiers. Étant donné que le PIN a une longueur variable, et que le processeur de tiers n'a pas accès à l'algorithme de hachage, les valeurs PIN cryptées sont très résistantes à une ingénierie inverse ou à un décryptage.
PCT/CA2007/001710 2007-09-24 2007-09-25 Système et procédé pour une vérification sécurisée de transactions électroniques WO2009039600A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/859,957 2007-09-24
US11/859,957 US8621230B2 (en) 2006-09-26 2007-09-24 System and method for secure verification of electronic transactions

Publications (1)

Publication Number Publication Date
WO2009039600A1 true WO2009039600A1 (fr) 2009-04-02

Family

ID=40512161

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CA2007/001710 WO2009039600A1 (fr) 2007-09-24 2007-09-25 Système et procédé pour une vérification sécurisée de transactions électroniques

Country Status (1)

Country Link
WO (1) WO2009039600A1 (fr)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2482664A (en) * 2010-07-30 2012-02-15 Makalu Technologies Ltd Method for authorising a payment
WO2018130994A1 (fr) * 2017-01-13 2018-07-19 Hashkloud Pty Ltd Système et procédé de vérification et d'authentification de données
US11216817B2 (en) 2016-08-30 2022-01-04 No Common Payment Ab Generation and verification of a temporary card security code for use in card based transactions
US11863548B2 (en) 2019-09-27 2024-01-02 No Common Payment Ab Generation and verification of a temporary authentication value for use in a secure transmission

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002063580A2 (fr) * 2001-02-02 2002-08-15 Hodgson Robert B Dispositif et procede permettant des transactions securisees par carte de debit et carte de credit atm via internet
US6820202B1 (en) * 1998-11-09 2004-11-16 First Data Corporation Account authority digital signature (AADS) system
US20050055318A1 (en) * 2003-09-04 2005-03-10 Robert Ziegler Secure PIN management

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6820202B1 (en) * 1998-11-09 2004-11-16 First Data Corporation Account authority digital signature (AADS) system
WO2002063580A2 (fr) * 2001-02-02 2002-08-15 Hodgson Robert B Dispositif et procede permettant des transactions securisees par carte de debit et carte de credit atm via internet
US20050055318A1 (en) * 2003-09-04 2005-03-10 Robert Ziegler Secure PIN management

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2482664A (en) * 2010-07-30 2012-02-15 Makalu Technologies Ltd Method for authorising a payment
US11216817B2 (en) 2016-08-30 2022-01-04 No Common Payment Ab Generation and verification of a temporary card security code for use in card based transactions
WO2018130994A1 (fr) * 2017-01-13 2018-07-19 Hashkloud Pty Ltd Système et procédé de vérification et d'authentification de données
US11863548B2 (en) 2019-09-27 2024-01-02 No Common Payment Ab Generation and verification of a temporary authentication value for use in a secure transmission

Similar Documents

Publication Publication Date Title
US8621230B2 (en) System and method for secure verification of electronic transactions
US10185956B2 (en) Secure payment card transactions
EP2143028B1 (fr) Gestion securisee d'un pin
US7770789B2 (en) Secure payment card transactions
US7841523B2 (en) Secure payment card transactions
US7526652B2 (en) Secure PIN management
CN106031207B (zh) 用于向不带有安全元件的移动设备安全传送远程通知服务消息的方法及系统
CA2688762C (fr) Transactions de carte de paiement securisees
CN106062799B (zh) 用于对用户和不带有安全元件的移动设备进行安全认证的方法及系统
CN106104605B (zh) 用于在不带有安全元件的移动设备中生成高级存储密钥的方法及系统
US20080208758A1 (en) Method and apparatus for secure transactions
US20060136332A1 (en) System and method for electronic check verification over a network
JP2018522353A (ja) サーバベースド支払のための認証システム及び方法
US8620824B2 (en) Pin protection for portable payment devices
WO2009039600A1 (fr) Système et procédé pour une vérification sécurisée de transactions électroniques
EP3862953A1 (fr) Procédé d'amélioration de la sécurité de données sensibles
AU2021329996A1 (en) Electronic payments systems, methods and apparatus
Milosavljević Payment Cards Counterfeiting Methods and Pin Uncovering

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 07815899

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 07815899

Country of ref document: EP

Kind code of ref document: A1