A Global Navigation Satellite System rover for determining a Global Navigation Satellite System-based position, including: a carrier phase processor configured to determine rover carrier phases from Global Navigation Satellite System signals; a data receiver configured to receive Global Navigation Satellite System position-determination reference data; the Global Navigation Satellite System position-determination reference data comprising synthesized reference carrier phases; and a rover position processor configured to compare the synthesized reference carrier phases with the rover carrier phases to determine a first rover position; the Global Navigation Satellite System rover being characterized in that it further comprises: a vector error reverser configured to have confidential access to no or one or more confidential error keys; the vector error reverser comprising means (174, 176) for, when the vector error reverser has confidential access to one or more confidential error keys, calculating one or more pseudo random error vectors (24, 25, 26) using said one or more confidential error keys, respectively; and for adding a sum of said pseudo-random error vectors (24, 25, 26) to said first rover position to compute a second rover position; the rover being provided for, when the vector error reverser has confidential access to no confidential error key, equating the second rover position to the first rover position. a carrier phase processor configured to determine rover carrier phases from Global Navigation Satellite System signals; a data receiver configured to receive Global Navigation Satellite System position-determination reference data; the Global Navigation Satellite System position-determination reference data comprising synthesized reference carrier phases; and a rover position processor configured to compare the synthesized reference carrier phases with the rover carrier phases to determine a first rover position; the Global Navigation Satellite System rover being characterized in that it further comprises: a vector error reverser configured to have confidential access to no or one or more confidential error keys; the vector error reverser comprising means (174, 176) for, when the vector error reverser has confidential access to one or more confidential error keys, calculating one or more pseudo random error vectors (24, 25, 26) using said one or more confidential error keys, respectively; and for adding a sum of said pseudo-random error vectors (24, 25, 26) to said first rover position to compute a second rover position; the rover being provided for, when the vector error reverser has confidential access to no confidential error key, equating the second rover position to the first rover position. a vector error reverser configured to have confidential access to no or one or more confidential error keys; the vector error reverser comprising means (174, 176) for, when the vector error reverser has confidential access to one or more confidential error keys, calculating one or more pseudo random error vectors (24, 25, 26) using said one or more confidential error keys, respectively; and for adding a sum of said pseudo-random error vectors (24, 25, 26) to said first rover position to compute a second rover position; the rover being provided for, when the vector error reverser has confidential access to no confidential error key, equating the second rover position to the first rover position.