Civilian services of Global Navigation Satellite System are threatened by spoofing attacks since it is hard to determine the authenticity of a navigation signal with a detailed structure open to the public. Signal authentication effectively protects the security of the signal by attaching unforgeable information to one or several elements of the signal. Receivers can verify the authenticity of the signal by extracting and validating this information. Developing good signal authentication schemes requires understanding possible spoofing modes, signal element specialty, and performance evaluation methods. This paper is an overview of navigation signal authentication, where the theories and reported approaches are described in detail. A design/performance matrix that demonstrates the advantages and defects of the signal element and its authentication design is summarized. Recommendations are proposed to improve the robustness, security, efficiency, and implementation hardness for future designs of navigation signal authentication.