β–“β–ˆβ–ˆβ–ˆβ–ˆβ–ˆ  β–ˆβ–ˆβ–ˆβ–„    β–ˆ  β–„β–ˆβ–ˆβ–ˆβ–ˆβ–„   β–ˆβ–ˆβ–€β–ˆβ–ˆβ–ˆ β–“β–ˆβ–ˆ   β–ˆβ–ˆβ–“ β–ˆβ–ˆβ–“β–ˆβ–ˆβ–ˆ  β–„β–„β–„β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–“
β–“β–ˆ   β–€  β–ˆβ–ˆ β–€β–ˆ   β–ˆ β–’β–ˆβ–ˆβ–€ β–€β–ˆ  β–“β–ˆβ–ˆ β–’ β–ˆβ–ˆβ–’β–’β–ˆβ–ˆ  β–ˆβ–ˆβ–’β–“β–ˆβ–ˆβ–‘  β–ˆβ–ˆβ–’β–“  β–ˆβ–ˆβ–’ β–“β–’
β–’β–ˆβ–ˆβ–ˆ   β–“β–ˆβ–ˆ  β–€β–ˆ β–ˆβ–ˆβ–’β–’β–“β–ˆ    β–„ β–“β–ˆβ–ˆ β–‘β–„β–ˆ β–’ β–’β–ˆβ–ˆ β–ˆβ–ˆβ–‘β–“β–ˆβ–ˆβ–‘ β–ˆβ–ˆβ–“β–’β–’ β–“β–ˆβ–ˆβ–‘ β–’β–‘
β–’β–“β–ˆ  β–„ β–“β–ˆβ–ˆβ–’  β–β–Œβ–ˆβ–ˆβ–’β–’β–“β–“β–„ β–„β–ˆβ–ˆβ–’β–’β–ˆβ–ˆβ–€β–€β–ˆβ–„   β–‘ β–β–ˆβ–ˆβ–“β–‘β–’β–ˆβ–ˆβ–„β–ˆβ–“β–’ β–’β–‘ β–“β–ˆβ–ˆβ–“ β–‘ 
β–‘β–’β–ˆβ–ˆβ–ˆβ–ˆβ–’β–’β–ˆβ–ˆβ–‘   β–“β–ˆβ–ˆβ–‘β–’ β–“β–ˆβ–ˆβ–ˆβ–€ β–‘β–‘β–ˆβ–ˆβ–“ β–’β–ˆβ–ˆβ–’ β–‘ β–ˆβ–ˆβ–’β–“β–‘β–’β–ˆβ–ˆβ–’ β–‘  β–‘  β–’β–ˆβ–ˆβ–’ β–‘ 
β–‘β–‘ β–’β–‘ β–‘β–‘ β–’β–‘   β–’ β–’ β–‘ β–‘β–’ β–’  β–‘β–‘ β–’β–“ β–‘β–’β–“β–‘  β–ˆβ–ˆβ–’β–’β–’ β–’β–“β–’β–‘ β–‘  β–‘  β–’ β–‘β–‘   
 β–‘ β–‘  β–‘β–‘ β–‘β–‘   β–‘ β–’β–‘  β–‘  β–’     β–‘β–’ β–‘ β–’β–‘β–“β–ˆβ–ˆ β–‘β–’β–‘ β–‘β–’ β–‘         β–‘    
   β–‘      β–‘   β–‘ β–‘ β–‘          β–‘β–‘   β–‘ β–’ β–’ β–‘β–‘  β–‘β–‘         β–‘      
   β–‘  β–‘         β–‘ β–‘ β–‘         β–‘     β–‘ β–‘                       
                  β–‘                 β–‘ β–‘                       
==============================================================

To access our main server, please email us your hash so we can grant you access.

HASH    : A95E0C74EA743324E8FDE710FD34BCB0D5D65B791CC1B21EE4A062BD66602D9E
IP      : 104.244.77.14
PORT    : 10101
CONTACT : hello@e-n-c-r-y-p-t.cc

Peer Connection Requirements:
|
|- For a peer to successfully connect to the system, its IP address must satisfy the following conditions:
|   |-> Present in allowed_hashes.txt: The SHA-256 hash of the peer's IP address must be listed in the allowed_hashes.txt file.
|   |-> Present in trusted_hashes.txt: The same SHA-256 hash must also be found in the trusted_hashes.txt file.
|   |-> Both conditions must be met simultaneously. If the peer's IP hash is absent from either file, the connection will be denied.
|
|- This dual-check mechanism ensures that only trusted and explicitly allowed peers can establish a connection, 
  enhancing the security and integrity of the network.
				  
==============================================================

πŸ” 
A peer-to-peer application that securely exchanges random data between peers using TLS encryption.
			
==============================================================
			
πŸš€ 
Overview

This project implements a TLS-encrypted P2P communication system where each peer authenticates the other using a custom challenge-response mechanism based on X.509 certificates exchanged after the TLS handshake. 

The system includes additional security and privacy features such as:

    πŸ”„ Post-handshake certificate exchange (manual verification)
    πŸ›‘οΈ Challenge-response authentication using public/private key cryptography
    🎭 Continuous transmission of random, obfuscated data to thwart traffic analysis and fingerprinting
    πŸ”— Support for asynchronous send/receive over secure TLS sockets

==============================================================

βš™οΈ 
Key Features

1. πŸ” TLS Connection Setup

    Establishes a secure TLS connection between peers.
    Uses OpenSSL for encrypted transport.
    After the TLS handshake completes, peers exchange their public certificates.

2. πŸ“„ Post-Handshake Certificate Exchange

    Unlike typical TLS mutual authentication, certificates are exchanged after TLS is established.
    Allows flexible certificate management without requiring TLS client authentication during handshake.
    Peers send their certificates over the established TLS channel.

3. πŸ” Custom Challenge-Response Authentication

    Once each peer has the other's certificate, it generates a random challenge (nonce).
    The challenge is sent to the peer, who must sign it with its private key.
    The signature is sent back and verified against the public key in the received certificate.
    Only a peer that holds the private key corresponding to the public certificate can successfully authenticate.

4. 🎲 Obfuscated Random Data Transmission

    To prevent traffic analysis and timing attacks, peers continuously send randomly generated obfuscated data.
    This data is indistinguishable from normal traffic but carries no meaningful payload.
    Helps to mask communication patterns and defend against fingerprinting.

5. πŸ’¬ Communication Protocol

    After successful mutual authentication, peers can securely exchange randomly generated obfuscated data.

==============================================================
	
πŸ—οΈ How it works

        Peer A                                              Peer B
   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”                                  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
   β”‚ TLS Handshake β”‚  <---------------------------->  β”‚ TLS Handshake β”‚
   β”‚ (ClientHello) β”‚                                  β”‚ (ServerHello) β”‚
   β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                                  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
          β”‚                                                   β”‚
          β”‚<----- Post-handshake certificate exchange ------->β”‚
          β”‚                                                   β”‚
          β”‚------------- Challenge (nonce) ------------------>|
          β”‚<------------ Challenge signature response --------|
          β”‚                                                   β”‚
          β”‚   Verify signature against peer's public key      |
          β”‚                                                   β”‚
          β”‚<----------- Secure, authenticated comm ---------->β”‚
          β”‚                                                   β”‚
          β”‚<------- Random obfuscated data streams ---------->β”‚
Cypherpunks write code. We know that someone has to write software to defend privacy, and since we can't get privacy unless we all do, we're going to write it. We publish our code so that our fellow Cypherpunks may practice and play with it. Our code is free for all to use, worldwide. We don't much care if you don't approve of the software we write. We know that software can't be destroyed and that a widely dispersed system can't be shut down.

Made with ❀️ in πŸ‡ΈπŸ‡°