Files
p2p/todo.md
Tiago Batista Cardoso b54e044ab1 thing
2026-01-11 22:31:31 +01:00

1.7 KiB

Todo

peer discovery

handshake

Todo

peer discovery

  • get rsquest to the uri /peers/

registration with the server

  • generation of the cryptographic key OK
  • put request to the uri (check if the peer is already connected) OK
  • udp handshakes OK
  • get request to the uri /peers/key to get the public key of a peer OK
  • get request to the uri /peers/key/addresses OK

handshake

  • handshake structure OK

  • 5min timeout after handshake

  • matain connection every 4 min

data transfer

  • request structure
  • root/root reply structure
  • datum/nodatum and datum structures
  • nattraversal 1 and 2 structures
  • setting in gui to act as a relay
  • chunk, directory, big, bigdirectory structures

fonctionnalités application

nat traversal

  • make hello and helloreply messages set the first extension bit to announce that peer is available for nat traversal
  • implement actual nat traversal requests
  • implement nat traversal :
    • if hello/helloreply doesnt work with a peer, find a peer that supports nat traversal (server in priority) then begin protocol

fonctionnalités :

rechercher les fichiers d'un pair telechargement des fichiers choisir un dossier à partager choisir le nombre de canaux

handshake server DOING se deconnecter du réseau DOING

autre

socket ipv6

FAIT

  • choisir un pseudo OK
  • get rsquest to the uri /peers/ OK
  • generation of the cryptographic key OK
  • put request to the uri (check if the peer is already connected) OK
  • get request to the uri /peers/key to get the public key of a peer OK
  • get request to the uri /peers/key/addresses OK
  • udp handshakes OK
  • handshake structure OK
  • s'enregistrer avec le serveur OK
  • generer une clé publique OK
  • verifier signature OK
  • 2 channels -> un pour envoyer et un pour recevoir OK