1. A method comprising the computer implemented steps of: receiving a fingerprint; extracting minutiae from the fingerprint; creating a message based on the minutiae of the fingerprint, comprising: creating ghost points not corresponding to features of the fingerprint; creating a template including the features and the ghost points; subtracting the features from the template, leaving a ghost template, the ghost template being the message; and storing the template; applying a message digest function to the message to create a cryptographic key.