This paper proposes a triplet based fingerprint indexing algorithm which selects the candidates for identification from a large number of enrolled fingerprints. Previous triplet based indexing algorithms have three problems: quantization error, triplet matching error, the proportional increase of similarity score to the number of enrolled triplets. The proposed algorithm solves these problems as follows. First, we generate weighted indices through fuzzy membership functions based on the statistics to reduce quantization error. Second, we apply Geometric Relationships to reduce triplet matching error. Finally, we normalize similarity score to solve the last problem. We compare the proposed algorithm with the previous triplet approach and the Fingercode. Experimental results show that the average rank of the enrolled fingerprint which is identical to an input fingerprint, becomes 2.01 times less than the previous triplet method, and becomes 0.4 times less than the Fingercode.