Patent ID: 7240034

Claim:
A secure electronic transaction process between an electronic wallet to be debited by a certain amount and a terminal that can control this debit and check that the debit has actually been made, the process comprising the steps of: A) before any transaction, initializing the electronic wallet and terminal to support secure transactions between the electronic wallet and the terminal by performing the steps of: a management authority providing a public key and a private key pair; providing a base key different from said public key and private key pair; providing a unique identifier (i) for the electronic wallet; for the electronic wallet defined by the identifier (i), the management authority calculating an authentication value which is a digital signature applicable to the identifier (i), the signature being produced using the private key and checked using the public key; inserting the authentication value into the electronic wallet for storing in the electronic wallet to support the secure transactions between the electronic wallet and the terminal, inputting the public key into the terminal, the management authority calculating a diversified key from the base key by applying a diversification algorithm to the identifier (i) of the electronic wallet using the base key, and inputting the diversified key into the electronic wallet for storing in the electronic wallet to support the secure transactions between the electronic wallet and the terminal, B) for each transaction between the electronic wallet and the terminal: sending the identifier (i) of the electronic wallet to the terminal together with the authentication value, the terminal validating the authentication value using the public key to validate the electronic wallet, the terminal sending the amount and parameters of the transaction to the electronic wallet, debiting the electronic wallet by the amount, the electronic wallet calculating a proof of the debit using a cryptographic function with the diversified key utilized as a secret key applied to the amount and to the parameters of the transaction, transmitting the proof to the terminal, the terminal separately calculating the diversified key of the electronic wallet using the diversification algorithm and using the base key as a secret key applied to the identifier (i) of the electronic wallet, and verifying the proof of the debit using the calculated diversified key.