A fresh look into designing channel error protection codes for satellite navigation messages