Inny język
Protokół jest w pełni opisany w specyfikacji ADARAZ Link. W skrócie:
- Transport: WebSocket pod
/api/adaraz/ws, podprotokóładaraz.v1, tylko wiadomości binarne, jedna wiadomość WebSocket = jedna wiadomość Noise (do 4096 B). - Parowanie:
Noise_XXpsk3_25519_AESGCM_SHA256, PSK wyliczany z 12-znakowego kodu (HKDF-SHA256). Serwer zapamiętuje klucz publiczny czytnika, czytnik klucz serwera. - Sesja:
Noise_IK_25519_AESGCM_SHA256. Czytnik wysyłahello, serwer odpowiadawelcomez kursorem, od którego czytnik ma wysyłać odbicia. - Odbicia: wiadomości
punches(do 100 pozycji[indeks, uid_hex, unix_ts]), serwer odpowiadaackdopiero po trwałym zapisie. - Przekaźnik:
relay->relay_result, tylko za zgodą administratora czytnika.
Do sprawdzenia własnej implementacji użyj symulowanego czytnika z biblioteki adaraz (Test bez czytnika): to niezależna, przetestowana implementacja strony czytnika.