A Secure Personal Identification System: Techniques of Fingerprint Image Enhancement, Feature Extraction and Template Protection