# SAM-PAY: A Location-Based Authentication Method for Mobile Environments +
## 3 Architecture and Components  
The GNSS (Global Navigation Satellite System) acronym has been introduced within the European Galileo program to provide users with an alternative satellite system that is independent but interoperable with the US GPS. The system refers to any satellite constellation that provides global positioning, navigation, and timing services, including Galileo (EU), GPS (US), GLONAS (Russia), BeiDou (China). Galileo is a satellite navigation system specifically for civil purposes, generating new opportunities for the market and pushing the advance in technology for Europe. It became operational in 2013 with a constellation of 30 satellites placed in Medium Earth Orbits (MEO), over three circular planes inclined at 56\({}^{\circ}\) to the equator, and about 23,222 km altitude for a global coverage of the Earth. In the architecture that we consider for the implementation of the service, all target applications are based on a common technological infrastructure (shown in Figures 1 and 2), which includes the GNSS-enabled User Terminals, the Local Element (LE), the middleware platform, and the Service Provider (SP). The middleware platform is a distributed softwarelayer that allows different SPs (for example, providing road, emergency, or finance services) to benefit from common functionalities, such as obtaining certified position information or exchanging data with user terminals. The LE is an element of the ground infrastructure of Galileo, which can be used for certifying the location information. The User Terminal (UT) is an advanced navigation device of rather small size that can support various communication technologies and that can be profiled based on the application service in which the UT is used. For example, in services based on Global System for Mobile (GSM) communication, such as road and/or finance services, the UT exchanges data with the LE over a GPRS communication channel, and communicates with the SPs via Unstructured Supplementary Service Data (USSD) technology. The SP interacts with the UT and with the LE by means of a set of web service adapters implemented in the middleware platform. Emergency and crisis-management applications instead are not necessarily based on the GSM network (which could not be reachable in certain zones, like mountains), but they typically use professional networks like the Very High Frequency (VHF) network, the TErrestrial Trunked RAdio (TETRA), or the innovative Digital Mobile Radio (DMR) technologies. In this case, a dedicated front end manages these professional networks from the service provider side, as shown in Figure 2.  
General security requirements. In the considered architecture, we aim to define a practical, user-friendly mechanism enabling an SP to verify whether the UT of a given user previously registered at the SP via an International Mobile Equipment Identifier (IMEI) and a phone number currently resides within a certain geographical reference area at a given  
Figure 1: Possible architecture in the case of a GSM network. Figure 2: Possible architecture in the case of professional communication networks (VHF, TETRA and DMR). time. Moreover, the SP must be able to authenticate the user through a dynamic password (or One-Time Code) and a static password registered by the user at the SP. User Terminal. The UT is a technological platform that holds the hardware, software, and firmware elements to create an embedded, power-safe, and easily customizable system that combines localization functionalities with professional and standard communication capabilities. In particular, the UT is a Galileo-ready embedded system that integrates Assisted GPS (A-GPS) and DPGS/EGNOS functionalities enhanced with the possibility of combining GSM, VHF, TETRA, and DMR communication channels. An early prototype of a UT (along with a detailed description of its components) can be found in [60]. Nevertheless, the proposed SAM-PAY method can also be used with more recent Galileo-enabled user terminals.