Implementation of authentication scheme for GNSS signal using Raspberry Pi - Neo, Zhen Ting (Nanyang Technological University, 2022)
GNSS spoofing refers to the malicious attempt by adversaries to trick GNSS receivers into generating incorrect position, velocity, and time (PVT) solutions. As a means of detecting spoofing attempts, Yu Han Chu et. al has proposed an authentication scheme that utilizes an unbounded keychain to protect GPS navigation messages. The keychain is created using the chameleon hash construct, which allows an authentication server to have the exclusive ability to extend the keychain by creating new keys that are publicly verifiable by any clients wishing to participate in the authentication scheme. These keys are then used to protect each individual subframe in the navigation message to allow clients to determine the authenticity of subframes it receive by comparing their HMACs against the reference HMACs provided by the authentication server. This final year project focuses on implementing an improved version of this authentication scheme on a Raspberry Pi, as a proof of concept to demonstrate the feasibility of such an authentication scheme on devices with limited computing resources and less modern hardware. The developed prototype was then tested to show that it is able to correctly identify actual subframes broadcasted by genuine GPS satellites as authentic while also being able to detect spoofed subframes generated by a Hack-RF One as inauthentic.