Det finnes i utgangspunktet tre typer engangspassord: den første typen bruker en matematisk algoritme for å generere et nytt passord basert på det forrige. Den andre typen er basert på tidssynkronisering mellom autentiseringstjeneren og -klienten som gir passordet. Den tredje typen bruker også en matematisk algoritme, men passordet er basert på en utfordring (challenge), for eksempel et vilkårlig tall valgt av autentiseringstjeneren, kombinert med en teller, i stedet for å baseres på det forrige passordet.