You are browsing as a guest. Sign up (or log in) to start making projects!

My own P2P protocol

  • 4 Devlogs
  • 4 Total hours

Building my own cryptographically secure peer-to-peer protocol in python, handling everything from establishing handshake, exchanging keys, creating the encryption engine, layering onto rack packets, to (hopefully) peer discovery. Fear no longer of your snoopy teacher trying to spy on u and bro's convo!

Ship #1 Pending review

I made a cryptographically secured peer-to-peer protocol. Behind the chatbox, the diffe hellman key exchange ensures that only you and the connected peer can understand data exchanged. Communicate with anyone in your network (for now) securely with ease. run the program twice and connect to the given IP to try it by yourself! (Dont worry, the IP shown and the one the program uses is your network's private internal IP, not one exposed to the internet!)

  • 4 devlogs
  • 4h
Try project → See source code →
Open comments for this post

48m 28s logged

Added a “servant”, this can act as both the client and server, allowing 2 servants to send messages back and fourth and recieve, with a simple GUI that lets you connect and talk to a given IP

0
0
5
Open comments for this post

33m 4s logged

lots of bugs fixed (client and server both listing for packets, aka deadlock)
functions were encoded when they should’nt have been (and vice versa)
endian across client and server were not always consistent
and added a small text prompt to ensure it was actually working (not just the encryption engine)

0
0
7
Open comments for this post

2h 18m 20s logged

Finished Encryption engine (applying a XOR mask, this way decryption is using the same function, like a “toggle”), trauncated/repeated the key where plaintext was not the same size, and finsished handshake between a client running the script and server (will make them both the same next, so both are listening and either can send the first request). All that is left after that is a GUI
Image shows the word “hello”, then the word being encrypted by a random priv key, then the result after reusing the encryption function (which returns the original message here)

0
0
5
Open comments for this post

43m 34s logged

Learnt the maths behind the diffe hellman key exchange,
created a working private key generator from a safe large prime, common generator number and {someone’s public key},
created a template for establishing a connection to a peer.

TODO (next):
add functionality to send and recieve public keys (currently am able to send encoded text)

0
0
7

Delete project?

Are you sure you want to permanently delete this project? This action cannot be undone.

All devlogs, followers, and associated data will be removed.

Followers

Loading…