# Anonymous Access System with Limited Number of Uses in a Trustless Environment
## 2 Literature Review  
Ethereum [5] provides a reliable and verifiable way to execute Smart Contracts, especially to enforce security checks, and ensures the life cycle of access counters. For this reason, the research is centred on Ethereum-based implementations. In [4], the authors show a reusable anonymous credential protocol based on ABC [6; 7], Verheul self-blinding schemes [8], and modified short ZSS (Zhang, Safavi-Naini, and Susilo) signatures on bilinear pairings over elliptic curves [9]. This approach aligns with the goals outlined in the cited article. One of the drawbacks of this solution is the use of elliptic curve arithmetic, which consumes a large amount of gas. However, with the use of pre-compiled contracts introduced with the Ethereum Improvement Proposal, it is possible to reduce this consumption. More specifically, EIP-196 [10] and EIP-197 [11] provide pre-compiled contracts for addition and scalar multiplication on the elliptic curve alt_bn128, and pre-compiled contracts for optimal Ate pairing [12] check on the elliptic curve alt_bn128. Another improvement is in the choice of the hash function used, using keccak instead of sha256, which is more expensive [5]. These access counters might be seen as electronic tickets, and for this purpose, a detailed analysis of electronic ticket systems in the literature is required. This research focuses on systems that use blockchain as the main backend. Many electronic ticketing systems, usually for event tickets, face the bad behaviour of scalpers who damage the customer's interest and disrupt the normal order of the market. In [13], the authors describe a system based on the Consortium blockchain, where the control and management of the environment are handled by members of the consortium, and together with a regulatory mechanism, they effectively reduce the scalper's profits. This system does not face forward to a multi-usage system because it has no sense of its purpose. In the same scope of event ticketing, in [14], the authors propose a ticket system with a QR code, but it is not multi-usage, does not use a blockchain backend, and is not anonymous. Another system for one-time ticketing has been developed in [15]. It uses Anonymous Credentials to guarantee user privacy, but again it does not use blockchain as the backend. [PERSON] et al. [16] demonstrated that Self-Sovereign Identity [17] based event ticketing facilitated the practical implementation of the centralised exchange model to enable efficient secondary market control. Another field where electronic tickets are introduced is the railway industry. [PERSON] in [18] introduced a digital ticketing platform using blockchain. They used IBM's Hyperledger Fabric Framework to design an architecture that distributes tickets among all participants. However, in this approach, even if they took care of multi-usage through limited time, they did not check or implement the number of times the ticket was used. [PERSON] et al. in [19] proposed a system that includes reusability in the sense that a single electronic ticket allows one to make several journeys. The main goal of this system is to preserve privacy. As in the previous system, multi-usage is limited to time and not to the number of times it is used. There are other proposals [20; 21; 22] that allow transfers so that public transportation passengers can continue their journey on other buses or trains. In systems that limit the number of transfers, there is usually a mechanism in which an electronic ticket contains a hash chain whose size depends on the maximum number of transfers allowed. In this context, [PERSON] et al. [23] proposed a solution involving a Self-Sovereign Identity. They proposed a credential to travel across Europe but not an electronic ticket system similar to an access counter, as the one described in this paper. In [24], a blockchain-enhanced privacy-preserving electronic ticket system for IoT devices has been built. However, it lacks multi-use support, which is required to implement counter access.