diff --git a/src/cssrlib/osnma.py b/src/cssrlib/osnma.py index 9d98d41..689dba0 100644 --- a/src/cssrlib/osnma.py +++ b/src/cssrlib/osnma.py @@ -4,6 +4,9 @@ [1] Galileo Open Service Navigation Message Authentication (OSNMA) Signal-in-Space Interface Control Document (SIS ICD), October, 2023. +[2] Galileo Open Service Navigation Message Authentication (OSNMA) + Receiver Guidelines Issue 1.3, January, 2024. + Note: to use the package for OSNMA, the user needs to install the public keys provided by EUSPA. diff --git a/src/cssrlib/qznma.py b/src/cssrlib/qznma.py index a6dc49e..e6c4853 100644 --- a/src/cssrlib/qznma.py +++ b/src/cssrlib/qznma.py @@ -572,6 +572,10 @@ def verify_gnss_nav(self, npr, mnav): if self.pk is None: pubk_path = self.pubk_bdir + f"/{npr.keyid:03d}.der" self.pk = load_pubkey(pubk_path) + if self.pk is None: + if self.monlevel > 0: + print(f"loading public key {npr.keyid} was faild.") + return False ds_der = raw2der(npr.ds) status = False @@ -762,6 +766,10 @@ def verify_qzss_nav(self, sat, npr, msg, mode): if self.pk is None: pubk_path = self.pubk_bdir + f"/{npr.keyid:03d}.der" self.pk = load_pubkey(pubk_path) + if self.pk is None: + if self.monlevel > 0: + print(f"loading public key {npr.keyid} was faild.") + return False status = False try: