RLCTF/Protokolle
Diese Seite behandelt Kommunikationsprotokolle (oder besser gesagt Protokollideen) zum RLCTF, bzw. Scannergame Projekt.
Ein paar Worte zur Krytographie
Asymmetrische Kryptographie ist insbesondere für offline Transfers von Vorteil, da man die Identität eines Spielers oder die Authenzität eines Ereignisses unmittelbar durch seine Signatur verifizieren kann. Leider ist asymmetrische Kryptographie auch immer sehr rechenintensiv und kann auf einem Microcontroller nicht ohne weiteres durchgeführt werden.
Selbst wenn ein ECC Verfahren zum Einsatz kommt, benötigt man eine Library, die es laubt mit großen Zahlen zu rechnen.
Im folgenden werden Protokolle diskutiert, die in akzeptabler Zeit auf einem Microcontroller ausgeführt werden können. Es ist zusätzlich auch möglich, diese Protokolle (in Teilen) offline auszuführen
Token Austausch
Tokens sind bestimmte (Punktbringende) Ereignisse, Virtuelle Objekte oder Eigenschaften die sich ein Spieler während des Spiels aneignen kann. Bei tokens ist es wichtig, das sie verifizierbar sind - auch ohne Kontakt zum Server zu haben.
Offline Token Protokoll
Zu Spielbeginn erhält das Gerät jedes Spielers eine Liste mit Hashsummen:
hashsum_1 hashsum_2 . . hashsum_n
Diese Hashtabellen sind Hashsummen der eigentlichen Tokens, die jeweils mit den Identitäten einer Untergruppe von Spielern Kokateniert werden:
hashsum_k = hash ( token_k || ID_a || ID_b || ... || ID_m )