APRS Passcode Generator
Générateur de mot de passe APRS utilisable sur les serveurs APRS-IS
Générateur de mot de passe utilisant PHP
Code Source disponible sur Github
APRS (Automatic Position Reporting System ) est un système dans lequel les objets signalent leur position (généralement obtenue à partir d’un GNSS).
GNSS (Global Navigation Satellite System – Géolocalisation et Navigation par un Système de Satellites) Systèmes de positionnement constitués de constellations de satellites artificiels (GPS – États-Unis d’Amérique, Glonass – Union soviétique , Galileo – Union européenne , Beidou – Chine …).
Quelques liens APRS :
APRS-IS
Aprs.fi
APRS direct
T2NUERNBG aprsc status
Pour aller plus loin :
Le code PHP de hachage
function aprspass ($callsign) { $stophere = strpos($callsign, ‘-‘); if ($stophere) $callsign = substr($callsign, 0, $stophere); $realcall = strtoupper(substr($callsign, 0, 10));// initialize hash $hash = 0x73e2; $i = 0; $len = strlen($realcall);// hash callsign two bytes at a time while ($i < $len) { $hash ^= ord(substr($realcall, $i, 1))<<8; $hash ^= ord(substr($realcall, $i + 1, 1)); $i += 2; } // mask off the high bit so number is always positive return $hash & 0x7fff; } |
Fonction qui calcule un code de hachage pour un indicatif d’appel APRS spécifié. Cette fonction, appelée “aprspass”, prend un indicatif d’appel en tant que paramètre et renvoie un code de hachage calculé à partir de cet indicatif d’appel.
Voici comment fonctionne le code :
1. La fonction commence par vérifier s’il y a un tiret (-) dans l’indicatif d’appel. Si oui, il tronque l’indicatif d’appel à la partie avant le tiret. Par exemple, si l’indicatif d’appel est “N0CALL-1”, il sera tronqué à “N0CALL”. Cela permet d’ignorer les SSID ou les extensions spécifiques à certaines applications APRS.
2. Ensuite, l’indicatif d’appel est converti en majuscules à l’aide de la fonction “strtoupper”.
3. Ensuite, un code de hachage est initialisé avec la valeur hexadécimale 0x73e2.
4. La boucle suivante parcourt l’indicatif d’appel caractère par caractère, en effectuant des opérations de hachage sur chaque paire de caractères.
5. À chaque itération de la boucle, le code de hachage est mis à jour en effectuant un XOR (OU exclusif) avec les valeurs ASCII des caractères successifs de l’indicatif d’appel.
6. Finalement, le code de hachage est masqué avec la valeur 0x7fff pour s’assurer que le nombre résultant est toujours positif.
La fonction “aprspass” renvoie le code de hachage calculé.