A method of generating an encoded satellite navigation message, in the form of a number of pages, for transmission to at least one user receiver via a plurality of satellites, the method comprising the steps of:
- a) dividing, at a ground station, a satellite navigation message M into k pages;
- b) dividing, at the ground station, each page into j symbols, the satellite navigation message M being divided into k×j symbols;
- c) for each symbol position, encoding the symbols of the k pages at the ground station by encoding each column of the symbols of the pages separately for a total of j block codes, wherein each of n pages comprises symbols from j parallel codes;
- d) generating, at the ground station, an encoded satellite navigation message M′ for the n pages;
- e) allocating, at the ground station, at least a subset of the n pages of the encoded satellite navigation message to each of the plurality of satellites;
- f) transmitting, by the ground station, the allocated pages to respective ones of the plurality of satellites;
- and
- g) transmitting the allocated pages by the plurality of satellites to the at least one user receiver.