Skip to main content

Peer2Drop

Secure P2P file transfer with end-to-end encryption and Device ID system.


Features

  • AES-256 + RSA-2048 end-to-end encryption
  • Device ID System - IP addresses hidden from users
  • Zero configuration - works immediately
  • Cross-platform - Windows, Linux, macOS
  • Real-time transfers with progress tracking
  • Minimalist interface - pure black design

Quick Start

# Install dependencies
pip install -r requirements.txt

# Run application
python3 p2p_transfer.py

Usage

  1. Launch app - Device ID appears at top
  2. Click "Copy ID" and share with peer
  3. Paste peer's Device ID and click "Add Peer"
  4. Select peer and click "Connect"
  5. Add files and click "Upload All"

How It Works

Device ID System

Each instance generates a unique Device ID that encodes the IP address and port:

Device ID: MTkyLj-E2OC4x-LjUzOj-UwMDAZ
           (contains: 192.168.1.53:5000)

Users only share Device IDs - IP addresses remain hidden.

Security

  • Handshake: RSA-2048 key exchange
  • Transfer: AES-256 symmetric encryption
  • Verification: SHA-256 file hashing

Interface

Device ID: MTkyLj-E2OC4x-LjUzOj-UwMDAZ  |  Port: 5000

[Files]  [Peers]  [Transfers]

Name              Size        Hash
document.pdf      2.3 MB      9d5f6c4a
photo.jpg         1.1 MB      3e8a2b7f

[Add File]  [Scan Folder]  [Open Folder]

Server:5000 | Peers:2 | Files:5 (12.3MB) | AES-256

Configuration

Files stored in ~/.p2p_transfer/:

  • shared/ - Files to share
  • downloads/ - Received files
  • peers.json - Peer registry

Default port: 5000 (auto-increments if busy)


Architecture

p2p_core.py          Backend (networking, crypto, files)
p2p_transfer.py      GUI application (PyQt6)

Key Components

  • DeviceID - Generate and encode Device IDs
  • CryptoManager - AES-256 + RSA-2048 encryption
  • FileManager - File scanning and metadata
  • P2PConnection - Peer-to-peer connection handling
  • P2PServer - Accept incoming connections
  • P2PClient - Initiate outgoing connections

Troubleshooting

Peer stays offline:

  • Ensure both apps running
  • Check firewall allows port 5000
  • Verify same local network

Files not sending:

  • Click "Connect" first
  • Wait for "online" status
  • Check files in shared folder

Dependencies

cryptography==41.0.7
psutil==5.9.6
PyQt6==6.6.1
pyperclip==1.8.2

License

MIT License


Repository

https://github.com/vyofgod/peer2drop

Release files for peer2drop 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for peer2drop 1.0.0
File Size Uploaded
peer2drop-1.0.0.tar.gz 16.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for peer2drop 1.0.0
File Interpreter ABI Platform
peer2drop-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 33.1 kB

Release files / peer2drop-1.0.0.tar.gz

Download URL peer2drop-1.0.0.tar.gz
Size 16.9 kB
Tags Source
SHA-256 checksum
How to use checksums
03a83480c3851105ac857a1890f53ca508a373e30744e20575a1b35b3ef4aa60
BLAKE2b-256 checksum
How to use checksums
6f1d5568888f0a5ef7d645a3b44ec159fb333f33972e70f2d8d9d67fcdc54dd2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.3

Release files / peer2drop-1.0.0-py3-none-any.whl

Download URL peer2drop-1.0.0-py3-none-any.whl
Size 16.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1915b6c313a78634030196ca93be7debc5c911a84ec42a40e4bbc544e721a96b
BLAKE2b-256 checksum
How to use checksums
8becdb40514e7938496907b0daeaffbebb7a93918f519d3e71c25c9a900603de
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.3

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page