Abstract
In recent years, with the rapid development and popularization of e-commerce, the applications of e-coupons have become a market trend. As a typical bar code technique, QR codes can be well adopted in e-coupon-based payment services. However, there are many security threats to QR codes, including the QR code tempering, forgery, privacy information leakage and so on. To address these security problems for real situations, in this paper, we introduce a novel fragment coding-based approach for QR codes using the idea of visual cryptography. Then, we propose a QR code scheme with high security by combining the fragment coding with the commitment technique. Finally, an enhanced QR code-based secure e-coupon transaction framework is presented, which has a triple-verification feature and supports both online and offline scenarios. The following properties are provided: high information confidentiality, difficult to tamper with and forge, and the ability to resist against collusion attacks. Furthermore, the performance evaluation of computing and communication overhead is given to show the efficiency of the proposed framework.
Introduction
With the rapid development of electronic payment systems and digital marketing, e-coupons (Electronic Coupons) have become increasingly popular. Because e-coupons are easy to manage, quick to distribute, and eco-friendly, they are widely accepted as a replacement of paper coupons by many companies, such as Shoppers Drug Mart, McDonald’s, Air Canada and so on. Besides, the various types of e-coupons, including but not limited to discount coupons, cash coupons, pre-paid cards and rechargeable cards, are appropriate for different uses in the market. The demands for e-coupon services include easy generation, fast readability, large storage capacity, error recovery and so on. QR (Quick Response) codes support the above properties well and thus are universally preferred.
Although QR codes have been widely used in many domains, such as mobile payment, document verification, commodity management, inventory checking, parcel tracking and so on, security incidents still occur frequently and the situation becomes increasingly serious. Economic losses and privacy leak which are caused by scanning malicious QR codes are reported many times. Focardi et al. [11] surveyed attacks on QR codes including phishing, barcode-in-barcode attacks, cross-site scripting attacks and so on. Cadger et al. [3] analyzed 12 different software packages which can decode QR codes, and found that none of them has the ability to detect a tampered QR code. Besides, scanning QR codes with sensitive personal information, such as tickets, payment codes and so on, poses a dramatic threat to the privacy of users. The risks above are mainly due to the open coding scheme of QR codes, plaintext format of the content in QR codes, and lack of verification mechanisms. Without proper measures and solutions, QR codes cannot be used in online transactions safely.
The studies on the security of QR codes are increasingly hot in recent years. Many works focus on the anti-phishing of QR codes with the techniques of link detection, digital signature and so on [21,22,29]. There are also some works using cryptography and steganography to provide the confidentiality of QR codes [36,47]. However, due to the specific threats of e-coupon services, e.g., the collusion attack between merchants and customers, tempering or forgery of e-coupons, and liability disputes among users, these research results cannot be applied well to the QR code-based e-coupon transaction services.
To address the above concerns, in this paper, we propose an enhanced QR code and triple-verification-based secure e-coupon transaction framework EQRC. It mainly aims at the common security risks such as the plaintext transmission, collusion attack, forgery and tampering in e-coupon services. Using encryption and scrambling, anonymous authentication, and commitment, EQRC has the ability to ensure data confidentiality and provide anti-tampering, anti-forgery, signature verification for both online and offline scenarios. The main work and contributions of this paper include the following four aspects:
We presented a fragment coding-based approach for QR codes, which is based on the idea of visual cryptography. Due to the pseudo-randomness of fragments, it is hard to guess the true information of the original QR code from one of the split code pair. Thus, the safety of QR codes is enhanced efficiently as the attacker would be more difficult to access the original QR code.
We presented an enhanced QR code scheme with a higher security, which is inspired by the fragment coding and commitment technique. This scheme not only has the ability to prevent the leakage of sensitive information in QR codes, but also can effectively reduce the security risks caused by QR code tampering or forgery. The proposed enhanced QR codes can be used as e-coupons.
We presented a secure online e-coupon transaction framework EQRC, which relies on the enhanced QR codes with digital signature and commitment. EQRC provides three verifications, i.e., message digest computing, enhanced QR codes stacking and commitment opening. Due to these three verifications, our framework can provide integrity and authenticity for e-coupons.
We extended EQRC from online to offline. In both of the scenarios, users can use e-coupons with the same security and privacy properties provided. The collusion attack between merchants and customers can be resisted effectively. Furthermore, in the offline scenario, liability disputes can be settled with an audit trail.
In addition, we analyzed and proved the security of EQRC based on cryptographic assumptions, mathematical properties, and potential attacks. The comprehensive evaluations of the computation overhead, encoding and decoding overhead, and communication overhead are provided. We also compared our work with other related secure e-coupon protocols. Results show that the proposed framework has a good performance in security and efficiency.
In the rest of this paper, the related work is shown in Section 2. Section 3 briefly introduces related cryptographic techniques, the system model, security goals and threats. Section 4 gives the detailed description of the schemes proposed in this paper. The security and performance evaluations are presented in Section 5 and 6, respectively. Section 7 discusses the possible generalization, remaining problems and potential solutions of the proposed framework. Section 8 concludes the paper.
Related work
E-coupon systems have been studied for many years. To solve the problem of targeted marketing in e-coupon services, Yan et al. [44] extracted features from user’s behavior records, and proposed a complex model based on random forest and extreme gradient boosting. Based on an oblivious transfer model and a blind signature scheme, Liu et al. [27] proposed a system that focuses on user privacy. In this work, a dishonest user will lose the redemption privacy when he redeems an e-coupon several times. He et al. [18] studied users’ behaviors to predict coupon usage probabilities. The authors explored 34 factors that impact the probability and ranked them according to the effects. These works are from different perspectives. However, the more important thing is to ensure the security of e-coupons.
To satisfy the essential security requirements of e-coupons, several systems have been proposed. In 2014, Chang et al. [5] presented an e-coupon authentication scheme based on chaotic maps. The scheme satisfies anonymity, mutual authentication and privacy protection. In 2015, two schemes that allow servers to issue different types of e-coupons were proposed [4]. Both the two schemes in [4] target on providing authentication and integrity for e-coupon transactions and preventing the reuse of e-coupons. In the first scheme, e-coupons are not issued to specific customers. That is different in the second scheme which focuses on keeping loyal customers. In Section 6.4, the first scheme [4], the chaotic map-based scheme [5] and our framework are compared.
In our work, we focus on adopting QR codes in e-coupon services while solving the typical security problems, including the data leakage, e-coupon forgery and modification, authentication and privacy.
To protecting the content of QR codes, some novel schemes have been proposed these years. Cheng et al. [8] proposed an innovative secret sharing scheme for QR code applications. The proposed scheme uses the XVCS (XOR-based Visual Cryptography Scheme) theory and has more flexible access structures. Lin et al. [24] proposed a secret hiding mechanism based on QR code error correction with a high capacity. Tkachenko et al. [40] proposed a two-layer QR code-based scheme for sharing secret messages, which replaces the black blocks in the traditional QR code with a specific pattern. Although these strategies can effectively protect the contents of QR codes to some extent, they cannot be adopted well in e-coupon transactions where both malicious merchants and customers should be considered.
To solve the problem of forgery and tampering, some effective techniques have been presented. Zhang et al. [45] proposed a message authentication scheme with the help of roadside units for vehicular communications. The scheme has a better performance than previous work in message loss ratio and delay. Considering the large amount of information generated in vehicular networks at the same time, Lee and Lai [23] presented a secure batch verification scheme based on bilinear pairing. Hasan et al. [17] designed a secret information verification mechanism based on an authentication chain. Although this mechanism has the characteristic of traceability and anti-counterfeiting, it is not suitable for QR code services as keeping a chain for each QR code is space-consuming.
As for the anonymous digital signature technique which is often adopted for authentication, many related studies have been reported. Brickell et al. [2] proposed the direct anonymous attestation (DAA) in 2004. Based on zero-knowledge proof and the idea of group signature, users in DAA can obtain identity-anonymous certificates without revealing privacy information. Chen et al. [6,7] proposed a pairing-based DAA protocol in the asymmetric setting in 2009 and proposed a threshold anonymous authentication (TAA) scheme for vehicular ad-hoc network (VANET) in 2011, which is adopted in our paper for e-coupon services.
Preliminaries
Cryptographic techniques
In this section, we briefly introduce the cryptographic tools adopted in our framework.
Group Signature: Group signature allows a user of a group to sign a message anonymously, i.e., a verifier can only tell whether the signer is a group member. With a group signature scheme, a signature σ to a message m can be generated by In this paper, we adopt an effective group signature-based authentication scheme TAA [7] and adapt it to e-coupon services. TAA was proposed for VANET (Vehicle Ad-hoc NETworks) communication. It achieves the reliability, privacy and auditability with direct anonymous attestation and one-time anonymous authentication. The main algorithms of TAA are as follows: (1) Commitment: Commitment is a basic cryptographic tool that is usually used in zero-knowledge proofs, contract signing, e-voting, secret sharing, secure coin flipping, secure computation and so on. It allows one to keep the sensitive information hidden to others while maintaining the ability to reveal it. A commitment protocol is a two-party scheme between a sender (also called committer) and a receiver. It usually comprises a generation phase, a commitment phase and an opening phase. In the generation phase, given generators g, h and a security parameter k, a key generation algorithm The security properties of a commitment scheme include hiding and binding. To be specific, (1) Without The Pedersen commitment scheme is adopted in our work. It is based on the Discrete Logarithm Problem (DLP). The DLP is defined as follows: given a group, a generator g and an element h of it, to find Visual Cryptography: Visual cryptography allows visual information such as pictures to be encrypted in such a way that the decryption can be performed by human vision instead of algorithms. One well-known secret sharing scheme based on visual cryptography [33] is achieved by breaking up an image One possible application is to encode the secret message into two shares With the idea of visual cryptography, we proposed a fragment coding-based approach for QR codes. Each QR code can be easily split into two parts and recovered quickly, while it is hard for an adversary to get the original code by any one of the parts. The approach is described in detail in Section 4.2. One-way Function and Randomness: One-way function is a widely used cryptography tool, which is easy to check but hard to invert. To be specific, for any randomized algorithm A hash function is called one-way hash function because it satisfies the property above. It outputs a fixed-size value for an input data with arbitrary size. The output value is called hash values or hash codes. One particular application of one-way hash function is the keyed-hash message authentication code (HMAC). HMAC is usually used for message authentication and integrity. In the design of the enhanced QR codes, we adopted SHA-2 (Secure Hash Algorithm (2) as the hash function used in the HMAC. SHA-2 is an iterated hash function, using the Merkle–Damgåd structure. The Merkle–Damgåd structure defines a hash function h based on an external one-way compression function Additionally, one-way function can also apply to Pseudorandom Number Generators (PRNGs) in this work. A PRNG, also known as a deterministic random bit generator, is a deterministic polynomial-time algorithm mapping a uniformly chosen short string called seed to a longer string, i.e.,
System model

System model.
We consider a system model comprised of four entities, which are shown in Fig. 1:
Root certificate authority (CA): a root certificate authority generates and distributes keys for other entities. It issues certificates to merchants and customers. CA is trusted by other entities in the model.
Merchant: a merchant provides services or goods to customers. It can support e-coupon transactions but may be a malicious entity.
Customer: a customer uses e-coupons when buying services or goods from a merchant. It also may be a malicious entity and may be in collusion with a merchant.
Server: a trusted server manages transactions with e-coupons. The main functions include e-coupon generation, e-coupon distribution, authentication, verification, e-coupon updating and so on. Besides, it handles disputes when necessary.
The scenarios of online transactions and offline transactions are considered in this work. In both scenarios, the server generates the e-coupons, i.e., enhanced QR code pairs, and distributes them to the merchant and customer, respectively.
Online transactions allow the customer to finish transactions remotely on computers or mobile phones. Both the customer and the merchant need to send one enhanced QR code to the server, respectively. Note that the merchant only sends it when receiving the request from the server, which means there is no direct interaction between the merchant and the customer. The server will process the verification and payment when receiving the QR codes.
In offline transactions, the customer does not directly connect to the server, but sends the encrypted and signed QR code to the merchant through near-field communications, e.g., bluetooth technologies. The merchant then sends his own QR code with the customer’s one to the server. As there is a direct interaction between merchants and customers, disputes need to be resolved.
In this paper, we aim at achieving the following security goals,
Authentication: merchants and customers must be authorized by a CA. In a transaction, the identities of both the merchant and the customer should be verified;
Data integrity: no adversary can temper or damage e-coupons without being detected;
Data authenticity: the server with EQRC should be able to detect the e-coupons forged by adversaries;
Data confidentiality: the sensitive information of e-coupons is only visible to the server. Any other entities including merchants and customers cannot get the access;
Identity anonymity: the true identity of a user should not be exposed during signing and verification so that the user privacy is preserved.
Besides, the integrity and authenticity of the messages sent between entities are also required.
The potential threats in e-coupon transaction services we focus on are information leakage, message eavesdropping, message modification, message forgery, message replay attack and collusion attack between a merchant and a customer. Liability disputes are also considered.
Framework design
In this section, we first provide the details of the framework design of EQRC-I, which is used for online scenarios. Then we briefly talk about the framework of EQRC-II for offline scenarios. The protocol flow of EQRC-I is shown in Fig. 2. There are four main algorithms, namely Enhanced QR Coding (Alg. 1), Signing (Alg. 2), Verification (Alg. 3) and Recovery (Alg. 4).

Protocol flow of EQRC-I.
The notations of our framework are listed in Table 1.
Notations
There is a trusted certificate authority
In addition, for message signature,
Bilinear:
Non-degenerate:
Computable: there exists a polynomial time algorithm for computing
The triple certificates
Generation of enhanced QR codes
The framework we proposed is based on an enhanced QR code scheme. With this scheme, a standard QR code is processed to finally generate a pair of enhanced QR codes

Generation of enhanced QR codes.

Enhanced QR coding
The generation flow of enhanced QR codes is shown in Fig. 3. As Algorithm 1 discusses, there are four main functions in the generation process: (1)
Consider the capacity of QR codes and the size of commitments, the sensitive data
QRFC approach
With the idea of visual cryptography, we introduce QRFC, a fragment coding-based approach for QR codes. Through QRFC, we can split
Define
With the rule above, all blocks in
We choose
QRFC approach (
)
QRFC approach (
As customers need an easy way to access some public information, such as the merchant’s name, the expiry date of the coupon and the discount amount, we introduce a standard QR code, say carrier QR code
Based on the Reed-Solomon error correction code used in QR codes, the enhanced QR codes
To emphasize that the pair of
Signing and verification
To protect the messages sent between entities, we introduce encryption and anonymous authentication techniques. In this section, we mainly talk about the transaction process instead of the distribution process of S. Before being sent, a message must be encrypted and signed.
Algorithm 2 performs the signing on message

Signing
The verification algorithm carried out by S is shown in Algorithm 3.

Verification
Once receiving a pair of enhanced QR codes
Here are some details of the triple-verification which can defend against the tampering and forgery attacks on e-coupons. First, the message digest

Recovery
We propose EQRC-II for a scenario where customers visit stores but are not connected to the Internet directly. In this scheme, M will transmit the enhanced QR code from C to S, which results in a new risk, i.e., M may tamper or forge the message from C. Thus we should pay attention to the audit trail of the messages.

Protocol flow of EQRC-II.
The protocol flow of EQRC-II is shown in Fig. 4. The generation and distribution of QR code-based e-coupons in EQRC-II are the same with that in EQRC-I. Other necessary details are provided as follows.
Similar to EQRC-I, EQRC-II introduces encryption and authentication schemes.
Audit trail
With the triple-verification scheme, S can verify whether
When the verification on
If the equation is satisfied, C is the attacker or the data storage of C is compromised. If not, which means
Security analysis
In this section, we first analyze the security of the proposed framework on six aspects, according to the protocol flow of EQRC. Then, we describe how the proposed framework resists attacks and achieves the corresponding security goals.
Security of the digital signature
The security of the digital signature is guaranteed by the hardness of the
This assumption guarantees that without the secret key
For the case of the verification algorithm, the above assumption also guarantees that only holding the bilinear group parameters
Security of the encryption
The security of the ElGamal encryption in this work is guaranteed by the hardness of the
In other words, the distributions
Defense against the typical attacks
Defense against the typical attacks
In general, there are three algorithms in a Pedersen commitment [43], i.e., the generation algorithm
Based on the design described above, for any given value r, the commitment is uniformly distributed with a randomly and uniformly chosen parameter [15], i.e.,
In EQRC, the perfect hiding property provided by the Pedersen commitment guarantees that any adversary on the channel can only obtain data from
In addition, we introduce the
Security of the HMAC
For one thing, the security of HMAC is provided by the common construction defined as follows:
Based on the discussion above and the existing research [14], the security of SHA-2 has been widely analyzed and proved. Theoretically, taking SHA-256 as an example, the upper bound of finding a collision using the birthday attack is
Overall, in QRFC, as only Server S knows the HMAC key
Security of the QRFC approach
Because of the pseudorandomness property of the PRNG algorithm, the output sequences are computationally indistinguishable for any p.p.t. algorithm
Security of the triple verification
The security of the first verification is guaranteed by the HMAC-SHA-2, as we analyze in Section 5.4. The secure hash
Defense against the typical attacks
In this section, we illustrate some specific situations to prove that the proposed framework can resist the threats and achieve the security goals mentioned in Section 3.3. The security properties to defend against the typical attacks are summarized in Table 3. Note that TriVerf denotes the triple-verification. Security Properties are the corresponding security properties threatened by the attacks. We suppose that Eavesdropping and data leakage: (1) Suppose E-coupon forgery and modification: (1) Suppose Collusion attack: Suppose Message forgery, modification and replay: (1) Suppose
Performance evaluation
In this section, we analyze the efficiency of the signature scheme, the overhead of enhanced QR codes, and the communication overhead. All experiments are conducted on Windows 8, with 2.8 GHz Intel CPU, 12 GB memory and 500 GB disk.
Computation overhead of the signature scheme
We consider the scalar multiplications in
The experiment in [35] shows that we need to set
Encoding/decoding overhead for the enhanced QR codes
In our framework, the generation, recovery and verifications of the enhanced QR codes are realized by S with cloud computing, which significantly reduces the computation burden of users.
We evaluate the time consumption for QRFC approach, which is developed based on C#. Three different versions of QR codes are tested, which are Version 1 (Block
The setting of QR code samples
The setting of QR code samples
The running-time overhead for the encoding process in QRFC is calculated from two stages: the preprocessing stage and the computing stage. The overhead for the preprocessing stage is shown in Fig. 5(a) and that for the computing stage is shown in Fig. 5(b). The preprocessing stage includes the processes such as reading the QR codes and building Bitmap objects with C#. Thus, we can see that the version of QR codes has little effect on the preprocessing time but the size of QR codes affects a lot. In contrast, the computing is on blocks instead of pixels, as described in Section 4.2.2. Thus, as shown in Fig. 5(b), the version of QR codes has effect on the computing time but the size does not. Compared with the preprocessing stage (around 40 to 380 ms in the experiments), the overhead for the computing stage (less than 6 ms in the experiments) is trivial. The reason can be described intuitively: the handling of pictures is slower than computation on given arrays or integers in the experiments. Overall, the encoding time is mainly determined by the preprocessing stage, which is the same for all schemes regardless security.

Running-time overhead for encoding in (a) the preprocessing stage and in (b) the computing stage.
On the other hand, the decoding process for QRFC also contains two parts: the preprocessing stage and the computing stage. The overhead of the preprocessing stage is shown in Fig. 6(a). The overhead of the computing stage which includes the processes of decoding computation and original QR codes recovery is shown in Fig. 6(b). It is clear that the computing stage (less than 0.25 ms in the experiments) costs less time than the preprocessing stage (about 13 to 35 ms in the experiments). Comparing the decoding process with the encoding process, we can find that the decoding process is more efficient, costing less time than the encoding process. The result is reasonable. As described in Section 4.2.2, pseudo-random numbers are generated for each block to split a QR code in the encoding process. However, only a modulo-2 addition operation is necessary for each block in the decoding process due to the attribute of QRFC. The quicker decoding is a beneficial property for e-coupon transactions, because users concern more about the successful transaction time than the generation time of e-coupons.

Running-time overhead for decoding in (a) the preprocessing stage and in (b) the computing stage.
To evaluate the communication overhead, we implemented a simulation on the end-to-end delay from users to a server. Because the transactions in both EQRC-I and EQRC-II are composed of several communication rounds and every rounds are similar, the experiment focuses on one round is reasonable and representative. The experiment is conducted by a well-known simulation tool, OMNeT
The network is designed as shown in Fig. 7. The host denotes users in our system, which can be clients or merchants. The hosts are connected to an access point, AP, via a wireless network and thus can send messages to the server through a wired core network. Considering the networking technologies nowadays, we choose IEEE802.11ac with a bit rate of 346.7 Mbps as the wireless network to ensure that most of the new mobile devices can support [28,38]. The bit rate of the wired network is set as 1000 Mbps with a packet drop rate of 1%. The maximum propagation delay is calculated as the ratio between the half of the longest distance from east to west Canada (2757 km) [13] and the light speed for optical cables (180000 km/s), which is 15.3167 ms. Note that the server is deployed on the cloud and thus can handle the requests via cloud computing, which is not the main consideration of this simulation.

Network design in Omnet
In this simulation, we mainly focus on the messages sent from users to servers which are the signatures and the ciphertext of
Typical message length
†The versions chosen for
The size of enhanced QR codes varies in different settings. For example, as the size of
To measure the effect of the message length on the end-to-end delay, we set the message length as 2, 4, 8 and 32 KB for EQRC-I and doubled the size for EQRC-II. In the experiment, 100 messages are sent following a Poisson process in 100 s, which simulates a common scenario with request intensity of 1 (per second). Note that, too large QR codes are seldom used in real life, but we also measure the delay with a rare message length of 32 KB in EQRC-I and 64 KB in EQRC-II, when the latest QR code version (40) is adopted as

End-to-end delay in (a) EQRC-I and in (b) EQRC-II.

End-to-end delay in normal scenarios (yellow) and in a burst (blue).
To measure the effect of the scale of users on the end-to-end delay, we set the number of hosts in the simulation as 100, 500, 1000 and 1500. Each host is expected to send only one 4-KB message with an inter-arrival time following the exponential distribution [32]. The service time is set as 100 s to represent normal scenarios such as using coupons in a shopping mall. In other words, the request intensity is set as 1, 5, 10 and 15 per second. Note that we only consider the end-to-end process from users, i.e., merchants or customers, to a server. The only difference for EQRC-I and EQRC-II is the possible length of messages. That is why we choose 4-KB messages in this experiment, which is probable for both EQRC-I and EQRC-II as shown in Table 5.
The intensity set is expected to have little influence on the end-to-end delay, otherwise, the system capacity is reached easily even in a normal scenario. Besides, another experiment is conducted where all messages are sent at the same time to test the performance further. The variable, number of requests, is set as 100 and 500. In such a burst, the delay is expected to be larger but in an acceptable range. The results in Fig. 9 are the same with the reasonable expectation. It indicates that the delay is not affected much by the scale of requests in normal scenarios while is larger in a burst.
Figure 10 shows the transmission time of each message and the corresponding delay in bursts. It is clear that when there are 100 hosts trying to send QR codes at the same time, most of the requests are sent out directly and some succeed in around 1 second because of the collisions at the AP. Only a few wait for 3 seconds. When there are 500 hosts, the upper bound of waiting time is around 9 seconds. Overall, with the network configuration described in this section, the EQRC performance is good and acceptable even with a burst.

End-to-end delay and the transmission time in a burst.
Comparisons of the secure e-coupon frameworks
†The anonymity of users, i.e., merchants and customers. ‡The verification of e-coupons. §The privacy protection for e-coupons. ¶The design for security.
Comparisons on computation overhead
†We keep the original terms used in the related papers so that readers can find and understand them easily. Note that although the names in frameworks are not exactly the same, the processes are matched. To be specific, we are considering the phases from preparing e-coupons to using it successfully. Registration is not involved. ‡The operations are commitment, QR codes encoding or decoding, splitting, stacking, encrypting, chaotic mapping, hash, and necessary operations (i.e., encrypting and signing messages) for communication from left to right. Note that, we consider
∗Not mentioned in the references.
In Table 6, EQRC is compared with two recent research papers published in 2014 and 2015 [4,5]. All of the schemes focus on satisfying the security requirements for the e-coupon system, including authentication and integrity. The difference is as follows. The anonymity of users in EQRC is protected by the private key of
The detailed computation overhead is compared in Table 7. The result shows that merchants and customers in EQRC only have the work necessary for communication, including signing and encrypting the message while most of the work is on the server. Although Framework-B also has fewer cryptography operations on the user side, it does not provide enough and strong security properties as EQRC. Overall, EQRC is secure and more friendly to users. The advantage is guaranteed by the design of the framework, as shown in Table 6. To be specific, our scheme applies both outside and inside the e-coupons, which means that we proposed not only how e-coupons are wrapped with cryptography techniques (such as the anonymous signature), but also the components of e-coupons for security (i.e., the generation of the enhanced QR codes). Thus, users have much less computation overhead than the cloud server. However, the techniques are adopted outside of e-coupons directly for security in Framework-A and Framework-B.
As for communication, in EQRC-I and EQRC-II, the numbers of communication rounds for e-coupon redemption and verification are slightly larger than that in Framework-A and Framework-B. It is reasonable because each of the customer and the merchant only holds one of the pair
Further discussion
EQRC has the ability to satisfy the essential security requirements, including data confidentiality, authentication, integrity and anonymity. Although it is proposed for e-coupon transactions, EQRC can be generalized for other scenarios easily. Some possible applications are described as follows.
Generalized e-coupons: The proposed enhanced QR codes can be used as the generalized e-coupons, i.e., not only the common coupons with discounts, but also the cash coupons, gift cards, pre-paid membership cards, and rechargeable cards. The only task is to update the QR codes after redemption. For example, the server can update the amount of money in a rechargeable card after consumption or recharging by issuing a new pair of
Payment cards for relatives: Considering users are family members, we can apply the proposed framework to payment tasks. For example, the parents and their child hold one of the enhanced QR code pair
Certificates: The enhanced QR codes can also be used as an aided verification of certificates, or even certificates directly. Compared with classic certificates, enhanced QR codes have more advantages. For example, a paper certificate only with a stamp is easy to forge. However, the necessary information such as the name of the awardee and the awards can be stored in the enhanced QR codes, which satisfy the requirements of integrity and authenticity. In addition, the holders of certificates may not trust the issuing institutions. With the enhanced QR codes, each of the holder and the institution only keep one of
Health barcodes: As a special case of certificates, health barcodes can be well used when citizens are exposed to infectious disease seriously, such as COVID-19. People with different health codes have different access to community activities. The design of enhanced QR codes and the triple verification guarantee that it is infeasible to tamper or forge the health barcodes. It provides a social safety guarantee in difficult time.
Although EQRC satisfies the security goals with good performance, there are still some remaining problems. Some of the problems are open questions in related research. The detailed discussions are as follows.
The embedding position: Based on the Reed-Solomon error correction code, Because the elements have fixed shapes, colors and positions in standard QR codes, the detection is not a problem. In fact, the elements are first detected after scanning, easily, quickly and accurately [39]. In addition, a recently developed QR code called Frame QR has a region where the arbitrary altering of figures and contents will not affect other regions. Combining Frame QR into the design of our EQRC can make the generation and merging of enhanced QR codes more standardized and concise. The size of enhanced QR codes: Comparing with some classic e-coupon systems, which only use a bit string as e-coupons, EQRC has larger e-coupons in size. This is also a problem for other QR code-based innovative applications [8,40]. Considering the network performance nowadays, it is not a significant limitation. A possible solution is to increase the capability of QR codes, which is a hot topic for researchers. With higher capability, a smaller QR code can be used for coding the same amount of data. One mature scheme is the colored QR codes. In EQRC, using colored QR codes to implement the fragment coding of QR codes, can provide more storage space. Thus, it will be an attractive research direction for us in the future. Copies on QR codes: An illegitimate copy on e-coupons has the potential to infringe the rights of legitimate holders. It is an open question for QR codes for a long time. Because QR codes are usually used on smartphones, the risk of illegal copies by capturing the screen or taking pictures is high [37]. We cannot ensure that users’ phones are not accessible from attackers. Thus, it is hard to avoid copies. If the QR code is linked with the identity of the legal holder, the problem can be solved by checking the signature. From this point of view, EQRC can be extended to e-coupon services provided for particular users. Another possible solution is to check the freshness. For example, Alipay refreshes the payment QR codes every minute. However, both of the solutions above cannot solve the problem thoroughly. Privacy issues: Although EQRC provides the identity anonymity and audit trail for users by the TAA scheme, there are many other privacy issues in practice. For example, (1) Once a user is determined dishonest, all the actions of the user in previous transactions are expected to be revealed. Some latest oblivious transfer schemes can be considered [27]. (2) User behaviors are usually studied for improving economic efficiency. However, how to protect the user’s privacy while aggregating the statistical information is also a problem. One possible solution is the differential privacy, which withholds the information of individuals while revealing the patterns of groups. Portability: As EQRC, most of the work on e-coupon systems is self-contained. However, a problem is whether the protocols can be successfully integrated with existing mature applications, such as Walmart, Amazon, Paypal, Aliexpress and Alipay. The difficulty of the work is that, interfaces of many mature shopping and payment applications are not public for researchers. In addition, to make the proposed framework user-friendly and practical, many details should be considered more carefully, including processing interruptions and communication interruptions. Strengthened cooperation between academic and industrial communities may provide more development space.
Conclusion
In this paper, we first proposed a fragment-based approach to enhance the confidentiality of QR codes. Second, we designed an enhanced QR code scheme with the combination of the QRFC approach and the commitment technique. The enhanced QR code scheme can prevent the leakage of the sensitive information in QR codes and forgery or tampering of QR codes. Third, we gave a secure e-coupon transaction framework called EQRC based on the techniques above. EQRC provides a triple-verification mechanism, reducing the security threats during the e-coupon delivery and transaction. Both online and offline scenarios are supported by EQRC, which provides a comprehensive protection for the real situation. The strong analyses and evaluation have shown that the proposed framework has a high security and low computing and communication overhead.
