Fingerprints are popular among the biometricbased systems due to ease of acquisition, uniqueness and availability. Fingerprint based biometric systems work by extracting and matching some features on the fingerprint. Due to errors in acquisition phase, it is possible that the scanned fingerprint image is not of a good quality and hence needs to be enhanced before being processed by the feature extracting module. Out of the various features that can be extracted, orientation and minutiae points are the most common ones to be used. This paper discusses some commonly used fingerprint enhancement techniques, the algorithms for minutiae and orientation extraction followed by the comparison of the algorithm on various databases.