This application claims priority to European Application Serial No. 19154847.8, filed Jan. 31, 2019, which is incorporated herein by reference in its entirety.
The present invention relates to data processing apparatuses and methods.
The “background” description provided herein is for the purpose of generally presenting the context of the disclosure. Work of the presently named inventors, to the extent it is described in the background section, as well as aspects of the description which may not otherwise qualify as prior art at the time of filing, are neither expressly or impliedly admitted as prior art against the present invention.
In recent years, terminal devices such as smartphones, tablet computers and the like have become more capable at performing a wide range of data processing tasks. These include allowing a large variety of different types of information to be transmitted between users of such devices (such as voice calls, textual messages, videos and images) as well as allowing such terminal devices to be used for performing further data processing functions which would normally (in the past) have required a separate device and/or process.
One such example of such new functionality of terminal devices is the electronic storage of items which, traditionally, would have required to be present as a physical hard copy (such as a paper copy). Such items include electronic tickets, coupons or the like. In particular, it is now possible for terminal devices to store digital data representative of transport tickets (such as railway tickets, bus tickets and the like), event tickets (such as cinema or theatre tickets) or any other similar data which, in the past, would have required a user to carry a separate hard copy of a ticket.
A problem, however, is how to ensure the authenticity (that is, that the tickets are genuine) and integrity (that is, that the tickets have not been altered by an unauthorised party) of such electronic tickets. In particular, it is desirable to prevent fake or forged electronic tickets to be stored on terminal devices and used in order to grant a user of such a terminal device unauthorised access to a ticketed transport network, event or the like. There is therefore a need to alleviate these problems.
The present technique is defined by the claims.
The foregoing paragraphs have been provided by way of general introduction, and are not intended to limit the scope of the following claims. The described embodiments, together with further advantages, will be best understood by reference to the following detailed description taken in conjunction with the accompanying drawings.
A more complete appreciation of the disclosure and many of the attendant advantages thereof will be readily obtained as the same becomes better understood by reference to the following detailed description when considered in connection with the accompanying drawings, wherein:
Referring now to the drawings, wherein like reference numerals designate identical or corresponding parts throughout the several views.
Data processing apparatus 100 comprises a communication interface 101, a controller 102, an electronic display 103 (such as a liquid crystal display (LCD) or the like) and a user interface 104. Each of these components may be implemented using appropriate circuitry, for example. The communication interface 101, display 103 and user interface 104 are controlled by the controller 102. In particular, the controller 102 comprises processing circuitry configured to process instructions for controlling the operation of each of the communication interface 101, display 103 and user interface 104. In an embodiment, the data processing apparatus 100 is a point of sale (POS) device for allowing a user to purchase an electronic ticket.
The data processing apparatus 105 comprises a communication interface 106, a controller 107, a storage medium 108, an electronic display 109 (such as an LCD or the like) and a user interface 110. Each of these components may be implemented using appropriate circuitry, for example. Each of the communication interface 106, storage medium 108, display 109 and user interface 110 is controlled by the controller 107. In particular, the controller 107 comprises processing circuitry configured to process instructions for controlling the operation of each of the communication interface 106, storage medium 108, display 109 and user interface 110. In an embodiment, the data processing apparatus 105 is a terminal device such as a smart phone or tablet computer belonging to a user who wishes to purchase an electronic ticket for storage in the storage medium 108 of the terminal device 105.
The data processing apparatus 111 comprises a communication interface 112, a controller 113, an electronic display 114 (such as an LCD display or the like) and data output circuitry 115. Each of these elements may be implemented using appropriate circuitry, for example. Each of the communication interface 112, display 114 and data output circuitry 115 are controlled by the controller 113. In particular, the controller comprises processing circuitry configured to process instructions for controlling an operation of each of the communication interface 112, display 114 and data output circuitry 115. In an embodiment, the data processing apparatus 111 is for checking the authenticity and/or the validity of an electronic ticket stored in the storage medium 108 of a terminal device 105 of a user wishing to gain access to a ticketed service such as a transport network or event.
In the following embodiments, the data processing device 100 is assumed to be a POS device, the data processing apparatus 105 is assumed to be a terminal device and the data processing apparatus 111 is assumed to be a ticket checking device. However, it will be appreciated that the principles described may be applied to any data processing apparatus which is configured to implement the functions of the described components of each of the POS device 100, terminal device 105 and ticket checking device 111. The present technique is therefore not limited for use with the specific device types as described.
In an embodiment of the terminal device 105, the communication interface 106 is configured to transmit data to or receive data from the POS device 100 using electromagnetic induction when the terminal device 105 is brought into proximity to the POS device 100 (in particular, when the communication interface 106 of the terminal device 105 is brought into proximity to the communication interface 101 of the POS device 100). The communication interfaces 106 and 101 may implement Near Field Communication (NFC) technology, for example. NFC technology enables data to be transmitted between two NFC interfaces when those interfaces are brought to within a proximity of each other of the order of a few centimetres (in particular, less than 4 cm). The controller 107 is configured to control the communication interface 106 to transmit first data indicative of a user of the terminal device 105 to the POS device 100. The first data is data for identifying specifically the user of the terminal device 105 and may be, for example, an electronic payment card number indicative of an electronic payment card of the user of the terminal device 105. The electronic payment card may be a credit card, debit card or charge card, for example, and the electronic payment card number may be a primary account number (PAN). The controller 107 is configured to control the communication interface 106 to transmit second data to or receive second data from the POS device 100, the transmission or reception of the second data occurring in response to the completion of a predetermined data processing event. In an embodiment, the predetermined data processing event is an electronic payment card payment made by the user of the terminal device 105 to a user (e.g. ticket vendor, such as a transport organisation, theatre or cinema) of the POS device 100. The controller 107 is configured to control the communication interface 106 to receive third data from the POS device 100. The third data is received in response to the completion of the predetermined data processing event (e.g. payment for a ticket) and is digitally signed by the POS device 100. The digital signature of the third data is generated using the first data and the third data. In the example in which the POS device 100 is a POS device of a ticket vendor, the third data comprises an electronic ticket for allowing the user of the terminal device 105 to use a predetermined service which requires the user to have a ticket in order for the service to be delivered. As previously mentioned, an electronic ticket is a ticket in electronic form. It comprises digital data representative of an ticket which grants a user access to use a particular ticketed service. An electronic ticket may be used instead of a paper ticket, for example. The controller 107 stores the received third data (e.g. the electronic ticket data) in the storage medium 108. It is noted that, more generally, the third data need not represent electronic ticket data but may represent, more generally, electronic content provided to the user of the terminal device 105 in response to the completion of the electronic payment card payment. The electronic content may be any content for which there is a benefit in being able to authenticate the source of the electronic content using a digital signature. Although the below-mentioned embodiments discuss the specific use of electronic tickets, it will be appreciated that these same embodiments may be applied for use with electronic content more generally (and are therefore not limited to use only with electronic tickets).
In an embodiment of the POS device 100, the communication interface 101 is configured to transmit data to or receive data from the terminal device 105 using electromagnetic induction when the terminal device 105 is brought into proximity to the POS device 100. For example, the communication interface 101 may be an NFC interface (in which case, again, the terminal device 105 is brought into proximity to the POS device 100 when brought within a distance of the order of a few centimetres of the POS device 100, in particular less than 4 cm). The controller 102 is configured to control the communication interface 101 to receive first data indicative of a user of the terminal device 105 from the terminal device 105. As previously described, the first data may be an electronic payment card number of an electronic payment card of the user of the terminal device 105. The controller 102 is configured to control the communication interface 101 to transmit second data to or receive second data from the terminal device 105, the transmission or reception of the second data occurring in response to the completion of a predetermined data processing event (e.g. the completion of an electronic payment card payment made by the user of the terminal device 105 to a vendor operating the POS device 100). In response to the completion of the predetermined data processing event, the controller 102 is configured to generate third data (e.g. electronic ticket data) and to digitally sign the third data using the first data and third data. The controller 102 then controls the communication interface 101 to transmit the digitally signed third data to the terminal device 105.
In an embodiment of the ticket checker 111, the communication interface 112 is configured to receive first data from the terminal device 105, the first data being indicative of a user of the terminal device 105 (e.g. the first data comprising an electronic payment card number of an electronic payment card of the user of the terminal device 105). This is the same first data that was previously transmitted to the POS device 100. The communication interface 112 is configured to receive second data from the terminal device 105, the second data having been previously received by the terminal device 105 in response to the completion of a predetermined data processing event and being digitally signed using the first data and second data. Thus, in this case, the second data may comprise electronic ticket data which has been generated and signed by the POS device 100, stored in the storage medium 108 of the terminal device 105 and transmitted from the terminal device 105 to the ticket checking device 111 together with a digital signature generated using the electronic ticket data and the first data (e.g. electronic payment card number). The controller 113 is then configured to perform a verification process of the digital signature of the second data. In response to a successful verification of the digital signature of the second data, the controller 113 is configured to output a signal indicating that the digital signature of the second data has been verified. On the other hand, in response to an unsuccessful verification of the digital signature of the second data, the controller 113 is configured to output a signal indicating that the digital signature of the second data has not been verified.
In the example in which the second data is representative of an electronic ticket, in response to a successful verification of the digital signature of the electronic ticket, the controller 113 may output a signal to control the display 114 to indicate that the electronic ticket has been successfully verified and/or to output a signal to control the data output circuitry 115 to output a signal to another device such as a ticket barrier (not shown) to open electronically controlled gates of the ticket barrier in order to allow the user of the terminal device 105 access to the ticketed service associated with the electronic ticket.
It is noted that the communication interface 112 may receive the first and second data from the terminal device 105 using electromagnetic induction when the terminal device 105 and ticket checking device 111 are brought into proximity to each other (e.g. if the terminal device 105 is brought into proximity of a reader device comprising the communication interface 112 of the ticket checking device 111 at the entrance to a transport network or event). The communication interface 112 may operate using NFC, for example (in which case, again, the terminal device 105 is brought into proximity to the checking device 111 when brought within a distance of the order of a few centimetres of the checking device 111, in particular less than 4 cm). Alternatively, the first and second data received by the checking device 111 may be received via any other suitable method for transmitting data from one device to another device. For example, the first and second data received by the checking device 111 may be received as a radio signal transmitted by the terminal device 105 (more specifically, the first data (e.g. electronic payment card number) and second data (e.g. electronic ticket data with digital signature) is comprised within a radio signal transmitted from the communication interface 106 of the terminal device 105 to the communication interface 112 of the checking device 111). Such a radio signal may be a Wi-Fi signal or Bluetooth signal, for example.
Thus, with the present technique electronic data representative of an electronic ticket may be obtained by a user of a terminal device 105 and stored in a storage medium 108 of the terminal device following a purchase of that electronic ticket by the user ata POS device 100. In an embodiment, the purchase is carried out by the user of the terminal device 105 using a suitable NFC payment service such as Contactless EMV® (see https://www.emvco.com/emv-technologies/contactless/ for access to the Contactless EMV® specifications).
Following a successful transaction, the digital data representative of the electronic ticket is transferred to the terminal device 105 over the same communication interfaces 101 and 106 used for completing the electronic payment. The data received by the terminal device 105 is provided with a digital signature generated using the digital ticket data and the first data (e.g. electronic payment card number) indicative of the user of the terminal device 105 previously transmitted to the POS device 100. The digital signature may be created by, for example, combining the data representative of the electronic ticket with data indicative of the user of the terminal device 105 (such as the number of the electronic payment card used to pay for the ticket) and applying a hash to the combined data. The hash is then encrypted using a private key known only to the POS device 100. The encrypted hash (which is the digital signature is then provided with the ticket data transmitted from the POS device 100 to the terminal device 105). It is noted that the generation of the digital signature is carried out by the controller 102.
When the user of the terminal device 105 then tries to gain access to a ticketed service using the electronic ticket data, the terminal device 105 must transmit the electronic ticket data, digital signature and user data (e.g. payment card number) to the checking device 111, which performs a verification process on the digital signature. The verification process comprises, for example, hashing the received electronic ticket data and user data (using the same hashing algorithm as used by the POS device 100) and decrypting the digital signature using a public key complementing the private key used by the POS device 100 to perform the encryption. The digital signature will be verified if the hash generated by the hashing algorithm on the ticket data and user data and the hash generated as a result of the decryption process are the same (that is, they match). Such an arrangement ensures both that the electronic ticket data is authentic (that is, has been generated by a POS device 100 authorised to generate electronic ticket data) and has not been tampered with. This is because the generated hashes will only match if the electronic ticket data has not been changed and if the private key (known only to authorised POS devices 100) is used to encrypt the hash generated at the POS device in order to generate the digital signature. It is noted that, in the above-mentioned embodiments, the first data indicative of the user of a terminal device 105 (e.g. payment card number) is stored in the storage medium 108 of the terminal device 105 in advance. For example, if the first data indicative of the user of the terminal device 105 is an electronic payment card number of an electronic payment card held by the user of the terminal device 105, then the user will have entered this information prior to initiating the transaction between the POS device 100 and terminal device 105. This stored user data may then be transmitted to the POS device 100 (in order to generate the digital signature) and checking device 111 (in order to check the digital signature).
An embodiment of the present technique is described in more detail with reference to
The process then proceeds to the next step, shown in
In
At step 304, a payment approval message is transmitted from the terminal device 105 to the POS device 100. Such a payment approval message 304 is the final instance of payment information that must be exchanged between the POS device 100 and terminal device 105 in order for the electronic card payment to be completed successfully. When the electronic payment is completed using EMV® Contactless, the payment approval message step 304 comprises a transaction certificate (TC) application cryptogram transmitted from the terminal device 105 to the POS device 100 in response to a “generate application cryptogram” (Gen AC) command transmitted from the POS device 100 to the terminal device 105. The transaction certificate approving the electronic payment card payment is only transmitted from the terminal device 105 to the POS device 100 in the case that sufficient card holder verification is completed at the terminal device 105. Such card holder verification may include, for example, the user entering a passcode into the terminal device 105, or may utilise biometric verification such as fingerprint recognition (in which case, the terminal device 105 comprises a fingerprint scanner, not shown) or facial recognition (in which case, the terminal device 105 comprises a camera and suitable software and/or hardware for recognising the facial features of the user of the terminal device 105, not shown). In embodiments, when online approval of the payment is required by the issuer of the electronic payment card used by the terminal device 105 for instructing the payment, the payment approval message transmitted at step 304 is transmitted only in response to a second Gen AC command transmitted from the POS device 100 to the terminal device 105 in response to approval of the transaction of the issuer of the electronic payment card.
Following the receipt of the payment approval message, the data representative of the electronic ticket is transmitted from the POS device 100 to the terminal device 105 at step 305. As previously mentioned, the ticket data is provided along with an electronic signature generated on the basis of the electronic payment card number (e.g. PAN number) of the electronic payment card used during the payment procedure of step 303 and the ticket data itself. The POS device 100 knows the electronic payment card number of the electronic payment card used for payment because this is received from the terminal device 105 during the exchange of payment information at step 303. The digital signature provided with the ticket data can therefore only be verified if the ticket data and data indicative of the user of the terminal device 105 (in this case, the electronic payment card number) remain unchanged. This prevents a user of the terminal device 105 from editing the ticket data in order to allow unauthorised access to a ticketed service for which they have not purchased a ticket via official means. Furthermore, a user of a first terminal device cannot transfer legitimately obtained ticket data to another terminal device used by another user, since the user of the other terminal device must use a different electronic payment card for NFC mobile payments and therefore the combination of the ticket data and electronic payment card number used for generation of the digital signature will be different when the ticket data is transmitted from one terminal device to another (thus resulting in the digital signature of the ticket data not being verifiable when read from a terminal device other than the terminal device to which the ticket data was originally issued). In addition, the digital signature ensures the authenticity of the ticket data (that is, that the ticket data was created by a POS device 100 of an official ticket vender with access to the private key for encrypting the hash of the combination of the ticket data and electronic payment card number in order to generate the digital signature, as previously discussed).
In an embodiment, the ticket data and digital signature are stored in the storage medium 108 of the terminal device 105 as part of a predetermined record. The ticket data and digital signature are comprised within an update record command transmitted from the POS device 100 to the terminal device 105 during step 305 shown in
When the ticket data and digital signature are transmitted to the terminal device 105 as part of an update record command, it is noted that existing EMV® architecture may require a message authentication code (MAC) to be included in the update record command. The MAC is for ensuring the authenticity and integrity of the content of the update record command. The use of MACs is known in the art and will therefore not be discussed in detail. However, with the present technique, as previously discussed, the update record command already comprises the digital signature of the ticket data. The authenticity and integrity of the ticket data can therefore already be confirmed based on verification of the digital signature. The inclusion of a MAC in the update record command used for transmitting the ticket data and digital signature from the POS device 100 to the terminal device 105 is therefore not required. The MAC may therefore be omitted from the update record command used to transmit the ticket data and digital signature. This reduces the amount of data which must be transmitted and processed when the update record command is transmitted from the POS device 100 to the terminal device 105. Alternatively, if the EMV® architecture of the POS device 100 and/or terminal device 105 requires data to be included in a portion of the structure of the update record command which usually comprises the MAC, then any combination of bits may be included within this portion of the update record command (in place of a MAC). The authenticity and integrity of the ticket data comprised within the update record command may therefore still be confirmed by verification of the digital signature. At the same time, the data structure of the update record command is maintained, thus ensuring continued compatibility of the present technique with EMV® architectures which require update record commands to include data in the potion of the update record command structure in which a MAC is usually comprised.
It will be appreciated that, even though the ticket data may be authenticated and the integrity of the ticket data confirmed based on a verification of the digital signature, it may still nonetheless be beneficial to include a MAC in the update record command comprising the ticket data and digital signature. In particular, a MAC may be different for each update record command transmitted (e.g. by using a different session key shared between the POS device 100 and terminal device 105 for each update record command), meaning that old ticket data comprising an old MAC cannot be rewritten in the storage medium 108 once the MAC has changed (because the old MAC included in the update record command will not verify). This provides a convenient method for ensuring that old electronic ticket data cannot be reused. Furthermore, this is achieved using a type of data (i.e. the MAC) which already exists in update record commands transmitted using existing EMV® architecture.
Instead of or in addition to including a MAC in the update record command comprising the ticket data and digital signature, the ticket data itself may comprise information indicative of the temporal validity of the ticket data. For example, the ticket data may comprise an expiry date and/or time of the ticket data, after which the ticket data will be deemed valid and will not be accepted by the checking device 111. Due to the digital signature verification, it will not be possible for a user to change the validity data of the ticket data (since to do so would result in the ticket data being changed which would, in turn, result in it not being possible to successfully verify the digital signature).
In the arrangement of
It can be seen that the terminal device 105 and the image 208 displayed on the display 109 of the terminal device 105 (including images representative of different respective electronic tickets) is the same as described with reference to
As previously described, the checking device 111 is able to determine whether or not an electronic ticket (or, more generally, electronic content) stored on the terminal device 105 is authentic (that is, genuine) and has maintained its integrity (that is, has not been altered) by verifying the digital signature provided with the electronic ticket. As previously mentioned, the digital signature is checked by the checking device receiving the ticket data and data indicative of the user of the terminal device 105 (such as the payment card number of an electronic payment card used by the user of a terminal device 105 to purchase the electronic ticket), hashing the combination of the ticket data and user data using a predetermined hashing algorithm and comparing the hash generated from the predetermined hashing algorithm with a hash generated by decrypting the digital signature provided with the ticket data using a public key which complements the private key used for encrypting the hash of the ticket data and user data by the POS device 100 in order to generate the digital signature.
As shown in
In a first outcome indicated by arrow 504, the electronic ticket is deemed to be genuine and unaltered (due to successful verification of the digital signature) and valid (due to the ticket being valid for the service with which the checking device 111 is associated and being temporally valid). In this case, an image 500 shown on the display 114 of the ticket checker 111 shows a symbol 501 (in this case, a check mark) indicating that the electronic ticket is genuine, unaltered and valid.
On the other hand, a second outcome, indicated by arrow 505, occurs when the electronic ticket is not genuine, has been altered and/or is not valid. The electronic ticket is determined to not be genuine or to have been altered when the digital signature fails to verify (that is, when the hash of the combination of the ticket data and user data does not match the hash generated from the decryption of the digital signature). The ticket will not be valid if it is not valid for the service associated with the checking device 111 (e.g. if the user of the terminal device 105 travels on a different train to that to which they are entitled according to the terms and conditions of their electronic train ticket) or if the ticket is not temporally valid (that is, it has expired or is not valid for use until a certain point in the future). In this case, the image 500 displayed on the display 114 of the checking device 111 comprises a symbol 502 (in this case, a cross mark) indicating that the electronic ticket data cannot be accepted. In addition, a message 503 is displayed as part of the image 500 to indicate whether the ticket has been rejected because the digital signature failed to verify (as is the case here) or because the ticket is not valid. In this case, the digital signature has failed to verify (indicating that the ticket is not genuine and/or has been altered) and therefore the ticket is indicated by the message 503 as not being verified. However, it will be appreciated that, in another scenario, the ticket may be genuine and unaltered (thus allowing the digital signature to be verified) but may not be valid (for example, the ticket may have expired, may not yet be temporally valid or may not be appropriate for the service associated with the checking device 111). In this case, the message 503 would indicate that the ticket is not valid. In an embodiment, the verification of the ticket is carried out first. The validity of the ticket is then checked only upon successful verification of the ticket, since the validity of a ticket is irrelevant if it cannot be verified. This reduces the amount of processing required in checking tickets which cannot be verified.
An example of the scenario shown in
Thus, in embodiments of the present technique, electronic ticket data (or data indicative of other electronic content whose authenticity must be checked) and data indicative of a user (that is, data such as an electronic payment card number of an electronic payment card held by the user which may be used to identify the user) is used by the POS device 100 to generate a digital signature which is then provided with the electronic ticket data to the terminal device 105 for storage in the storage medium 108 of the terminal device 105. The user data (such as the electronic payment card number) is transmitted to the POS device 100 from the terminal device 105 in order to allow the digital signature to be generated. When the electronic ticket data is later checked by a checking device 111, the ticket data and user data (such as the electronic payment card number) used to generate the digital signature is transmitted to the checking device 111 together with the digital signature. This allows the checking device 111 to verify the digital signature in order to confirm the authenticity and integrity of the electronic ticket data. The checking device 111 may then also check data indicative of the validity of the ticket data (such as whether the ticket is appropriate for the service with which the checking device 111 is associated and whether the electronic ticket data is temporally valid) in order to determine whether or not to accept the ticket.
In the embodiment of
It will be appreciated that, although the above-described embodiments relate to an electronic ticket (in particular, an electronic railway ticket), the present technique may be applied to any data which is stored in a storage medium 108 of a terminal device 105 and whose authenticity and integrity must be checked. For example, other types of electronic ticket data (for example, cinema tickets, theatre tickets or music event tickets) may be verified according to the present technique, as may other types of electronic content such as media content (for example, image, video, audio, game or textual files). More generally, it will be appreciated that the present technique may be used for authenticating any type of electronic content obtained by a terminal device 105 from a POS device 100 via electromagnetically inductive interaction between the terminal device 105 and POS device 100.
It is noted that an electronic ticket with a digital signature which is successfully verified may be referred to as a verified electronic ticket. A verified electronic ticket is known to be both authentic (that is, genuine) and to have maintained its integrity (that is, the data representing the electronic content has not been altered). An electronic ticket that is not verified is either not authentic or has comprised integrity. In addition, an electronic ticket which, based on the data representative of the ticket (including the ticket's temporal validity and information indicative of the ticketed service for which the ticket is valid), is valid for a ticketed service that the user of the terminal device 105 attempts to access, may be referred to as a valid electronic ticket. On the other hand, an electronic ticket which, based on the data representative of the ticket (including the ticket's temporal validity and information indicative of the ticketed service for which the ticket is valid), is not valid for a ticketed service that the user of the terminal device 105 attempts to access, may be referred to as an invalid electronic ticket. A ticket will be accepted by the checking device 111 when both verified and valid (in which case the controller 113 of the checking device 111 outputs a signal to the display 114 and/or data output circuitry 115 indicating that the ticket is both verified and valid). This is exemplified by scenario 504 of
Some embodiments of the present technique are defined by the following numbered clauses:
1. A first data processing apparatus comprising:
communication circuitry configured to transmit data to or receive data from a second data processing apparatus using electromagnetic induction when the first data processing apparatus is brought into proximity to the second data processing apparatus;
a storage medium; and
processing circuitry configured:
to control the communication circuitry to transmit first data indicative of a user of the first data processing apparatus to the second data processing apparatus;
to control the communication circuitry to transmit second data to or receive second data from the second data processing apparatus, the transmission or reception of the second data occurring in response to the completion of a predetermined data processing event;
to control the communication circuitry to receive third data from the second data processing apparatus, the third data being received in response to the completion of the predetermined data processing event and being digitally signed by the second data processing apparatus, wherein the digital signature of the third data is generated using the first data and the third data; and
to store the received third data in the storage medium.
2. A first data processing apparatus according to clause 1, wherein:
the predetermined data processing event is an electronic payment card payment made by the user of the first data processing apparatus to a user of the second data processing apparatus; and
the third data represents electronic content provided to the user of the first data processing apparatus in response to the completion of the electronic payment card payment.
3. A first data processing apparatus according to 2, wherein the first data is an electronic payment card number indicative of an electronic payment card of the user of the first data processing apparatus.
4. A first data processing apparatus according to clause 2 or 3, wherein the third data comprises electronic ticket data for allowing the user of the first data processing apparatus to use a predetermined service.
5. A first data processing apparatus according to any one of clauses 2 to 4, wherein the second data is transmitted by the communication circuitry to the second data processing apparatus to indicate approval of the electronic payment card payment.
6. A first data processing apparatus according to any one of clauses 2 to 5, wherein the received third data is comprised within a command to store the third data in the storage medium as part of a predetermined record.
7. A first data processing apparatus according to any preceding clause, wherein the received third data comprises information indicative of a validity of the third data.
8. A first data processing apparatus comprising:
communication circuitry configured to transmit data to or receive data from a second data processing apparatus using electromagnetic induction when the second data processing apparatus is brought into proximity to the first data processing apparatus; and
processing circuitry configured:
to control the communication circuitry to receive first data indicative of a user of the second data processing apparatus from the second data processing apparatus;
to control the communication circuitry to transmit second data to or receive second data from the second data processing apparatus, the transmission or reception of the second data occurring in response to the completion of a predetermined data processing event;
in response to the completion of the predetermined data processing event, to generate third data and to digitally sign the third data using the first data and third data; and
to control the communication circuitry to transmit the digitally signed third data to the second data processing apparatus.
9. A first data processing apparatus according to clause 8, wherein:
the predetermined data processing event is an electronic payment card payment made by the user of the second data processing apparatus to a user of the first data processing apparatus; and
the third data represents electronic content provided to the user of the second data processing apparatus in response to the completion of the electronic payment card payment.
10. A first data processing apparatus according to 9, wherein the first data is an electronic payment card number indicative of an electronic payment card of the user of the second data processing apparatus.
11. A first data processing apparatus according to clause 9 or 10, wherein the third data comprises electronic ticket data for allowing the user of the second data processing apparatus to use a predetermined service.
12. A first data processing apparatus according to any one of clauses 9 to 11, wherein the second data is received by the communication circuitry from the second data processing apparatus to indicate approval of the electronic payment card payment.
13. A first data processing apparatus according to any one of clauses 9 to 12, wherein the transmitted third data is comprised within a command to the second data processing apparatus to store the third data in a storage medium of the second data processing apparatus as part of a predetermined record.
14. A first data processing apparatus according to any one of clauses 8 to 13, wherein the transmitted third data comprises information indicative of a validity of the third data.
15. A first data processing apparatus comprising:
communication circuitry configured to receive first data from a second data processing apparatus, the first data being indicative of a user of the second data processing apparatus, and to receive second data from the second data processing apparatus, the second data being previously received by the second data processing apparatus in response to the completion of a predetermined data processing event and being digitally signed using the first data and second data; and
processing circuitry configured:
to perform a verification process of the digital signature of the second data,
in response to a successful verification of the digital signature of the second data, to output a signal indicating that the digital signature of the second data has been verified; and
in response to an unsuccessful verification of the digital signature of the second data, to output a signal indicating that the digital signature of the second data has not been verified.
16. A first data processing apparatus according to clause 15, wherein:
the predetermined data processing event is an electronic payment card payment made by the user of the first data processing apparatus to a user of a third data processing apparatus which previously generated the second data, transmitted the second data to the second data processing apparatus and digitally signed the second data; and
the second data represents electronic content provided to the user of the second data processing apparatus in response to the completion of the electronic payment card payment.
17. A first data processing apparatus according to 16, wherein the first data is an electronic payment card number indicative of an electronic payment card of the user of the second data processing apparatus.
18. A first data processing apparatus according to any one of clauses 16 to 17, wherein the second data received by the second data processing apparatus is comprised within a command to the second data processing apparatus to store the second data in a storage medium of the second data processing apparatus as part of a predetermined record.
19. A first data processing apparatus according to any one of clauses 15 to 18, wherein, in response to a successful verification of the digital signature of the second data, the processing circuitry is configured:
to determine, based on information indicative of a validity of the second data comprised within the second data, whether the second data is valid;
in response to determining that the second data is valid, the processing circuitry is configured to output a signal indicating that the second data is valid;
in response to determining that the second data is not valid, the processing circuitry is configured to output a signal indicating that the second data is not valid.
20. A method of operating a data processing apparatus comprising communication circuitry for transmitting data to or receiving data from a second data processing apparatus using electromagnetic induction when the first data processing apparatus is brought into proximity to the second data processing apparatus, and a storage medium, wherein the method comprises:
controlling the communication circuitry to transmit first data indicative of a user of the first data processing apparatus to the second data processing apparatus;
controlling the communication circuitry to transmit second data to or receive second data from the second data processing apparatus, the transmission or reception of the second data occurring in response to the completion of a predetermined data processing event;
controlling the communication circuitry to receive third data from the second data processing apparatus, the third data being received in response to the completion of the predetermined data processing event and being digitally signed by the second data processing apparatus, wherein the digital signature of the third data is generated using the first data and the third data; and
storing the received third data in the storage medium.
21. A method of operating a first data processing apparatus comprising communication circuitry for transmitting data to or receiving data from a second data processing apparatus using electromagnetic induction when the second data processing apparatus is brought into proximity to the first data processing apparatus, wherein the method comprises:
controlling the communication circuitry to receive first data indicative of a user of the second data processing apparatus from the second data processing apparatus;
controlling the communication circuitry to transmit second data to or receive second data from the second data processing apparatus, the transmission or reception of the second data occurring in response to the completion of a predetermined data processing event;
in response to the completion of the predetermined data processing event, generating third data and digitally signing the third data using the first data and third data; and
controlling the communication circuitry to transmit the digitally signed third data to the second data processing apparatus.
22. A method of operating a first data processing apparatus comprising communication circuitry, wherein the method comprises:
controlling the communication circuitry to receive first data from a second data processing apparatus, the first data being indicative of a user of the second data processing apparatus, and to receive second data from the second data processing apparatus, the second data being previously received by the second data processing apparatus in response to the completion of a predetermined data processing event and being digitally signed using the first data and second data;
performing a verification process of the digital signature of the second data;
in response to a successful verification of the digital signature of the second data, outputting a signal indicating that the digital signature of the second data has been verified; and
in response to an unsuccessful verification of the digital signature of the second data, outputting a signal indicating that the digital signature of the second data has not been verified.
23. A program for controlling a computer to perform a method according to any one of clauses 20 to 22.
24. A storage medium storing a program according to clause 23.
Numerous modifications and variations of the present disclosure are possible in light of the above teachings. It is therefore to be understood that within the scope of the appended claims, the disclosure may be practiced otherwise than as specifically described herein.
In so far as embodiments of the disclosure have been described as being implemented, at least in part, by software-controlled data processing apparatus, it will be appreciated that a non-transitory machine-readable medium carrying such software, such as an optical disk, a magnetic disk, semiconductor memory or the like, is also considered to represent an embodiment of the present disclosure.
It will be appreciated that the above description for clarity has described embodiments with reference to different functional units, circuitry and/or processors. However, it will be apparent that any suitable distribution of functionality between different functional units, circuitry and/or processors may be used without detracting from the embodiments.
Described embodiments may be implemented in any suitable form including hardware, software, firmware or any combination of these. Described embodiments may optionally be implemented at least partly as computer software running on one or more data processors and/or digital signal processors. The elements and components of any embodiment may be physically, functionally and logically implemented in any suitable way. Indeed the functionality may be implemented in a single unit, in a plurality of units or as part of other functional units. As such, the disclosed embodiments may be implemented in a single unit or may be physically and functionally distributed between different units, circuitry and/or processors.
Although the present disclosure has been described in connection with some embodiments, it is not intended to be limited to the specific form set forth herein. Additionally, although a feature may appear to be described in connection with particular embodiments, one skilled in the art would recognize that various features of the described embodiments may be combined in any manner suitable to implement the technique.
Number | Date | Country | Kind |
---|---|---|---|
19154847.8 | Jan 2019 | EP | regional |