A Privacy-compliant Fingerprint Recognition System Based on Homomorphic Encryption and Fingercode Templates