We propose a simple classification method for public-key based authentication protocols, which consists of identifying several basic properties leading to a large number of generic prototypes for authentication. Most published protocols can be identified as a concrete instance of one of the generic types. The classification method provides a means to clarify the similarities and differences between different concrete protocols. This facilitates avoidance of previous mistakes when designing a new protocol and e-use of analysis of a given abstract protocol when classifying any given concrete protocol.