Learning Fingerprinting