A confidential navigation method of a user within a given geographical area, by confidentially querying a server equipped with a database, characterised in that : - said geographical area contains a plurality of reference points, each couple of reference points being associated with an index; - said database contains for each index corresponding to a couple of reference points, a record of an optimum path as a predetermined criterion between these points, the optimum path being defined by a list of indices of reference points [ k 1 ,...., kq ] through which this path passes; - the user determines the respective indices [I A , I B ] of a couple of starting, A , and destination, B points, and deduces an index i corresponding to the couple of points [ A , B ] therefrom; - the user builds a vector V i all the elements of which except for that of the index i are ciphertexts of zero and the element of index i of which is a ciphertext of one, the encryption being made by means of a probabilistic cryptosystem satisfying the following homomorphic properties: Dec sk Enc pk a r ⊕ Enc pk b r = a + b Dec sk a ⊗ Enc pk b r = a . b where [sk,pk] is a pair of private and public keys of the user, Enc pk is an encryption operation by means of the public key, Dec sk is a decryption operation using the private key, a,b are plaintexts, ⊕ is an operator on the ciphertext space and ⊗ is an operator between the plaintext space and the ciphertext space; - the user transmits a request having the vector V i as an argument to the server; - the server performs a scalar product between the record vector O and the vector V i and returns the scalar product C i thus obtained to the user; - the user decrypts the scalar product C i to obtain the record of index i of the database, said record giving the optimum path between points A and B . - said geographical area contains a plurality of reference points, each couple of reference points being associated with an index; - said database contains for each index corresponding to a couple of reference points, a record of an optimum path as a predetermined criterion between these points, the optimum path being defined by a list of indices of reference points [ k 1 ,...., kq ] through which this path passes; - the user determines the respective indices [I A , I B ] of a couple of starting, A , and destination, B points, and deduces an index i corresponding to the couple of points [ A , B ] therefrom; - the user builds a vector V i all the elements of which except for that of the index i are ciphertexts of zero and the element of index i of which is a ciphertext of one, the encryption being made by means of a probabilistic cryptosystem satisfying the following homomorphic properties: Dec sk Enc pk a r ⊕ Enc pk b r = a + b Dec sk a ⊗ Enc pk b r = a . b where [sk,pk] is a pair of private and public keys of the user, Enc pk is an encryption operation by means of the public key, Dec sk is a decryption operation using the private key, a,b are plaintexts, ⊕ is an operator on the ciphertext space and ⊗ is an operator between the plaintext space and the ciphertext space; - the user transmits a request having the vector V i as an argument to the server; - the server performs a scalar product between the record vector O and the vector V i and returns the scalar product C i thus obtained to the user; - the user decrypts the scalar product C i to obtain the record of index i of the database, said record giving the optimum path between points A and B . <EOS>