En KeyGen (av engelskans Key och Generator, alltså nyckelgenerator) är ett datorprogram som genererar en produktnyckel eller privat och publika nyckelpar. En nyckelgenerator används till exempel för att skapa en privat och en publik nyckel där PKI (Public Key Infrastructure) används.

Ett exempel på sådana program är ssh-keygen som är ett väsentligt och vanligen använt verktyg för att säkra internetsiter med SSL.

Nyckelgeneratorer skapade för illegal användning till mjukvara som inte är avsedd att spridas fritt är därmed ett verktyg som möjliggör piratkopiering. Det illegala keygen-programmet ber normalt användaren att mata in relevanta data för att sedan generera den produktnyckel som passar till användaren och mjukvaran.

Det finns normalt en version av en KeyGen per version av en viss mjukvara. Den som har skapat en viss KeyGen har räknat ut hur tillverkaren av mjukvaran har definierat produktnyckeln för denna och imiterar denna beräkning. Detta kallas på hackerslang för att man crackar produktnyckeln eller crackar programmet.