explaingit

evilsocket/pwnagotchi

9,060PythonAudience · ops devopsComplexity · 4/5LicenseSetup · hard

TLDR

Pwnagotchi turns a Raspberry Pi into a self-learning portable device that automatically captures WiFi handshakes for offline security research and authorized network password auditing.

Mindmap

mindmap
  root((Pwnagotchi))
    What it does
      WiFi handshake capture
      Self-learning AI
      Security research
    Hardware
      Raspberry Pi
      Portable device
    AI approach
      Reinforcement learning
      Improves over time
      Channel exploration
    Output
      PCAP files
      Hashcat compatible
    Multi-unit
      Channel splitting
      Cooperative mode
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Carry a Pwnagotchi during authorized WiFi network audits to automatically collect handshakes without manual intervention.

USE CASE 2

Feed collected PCAP files into hashcat to attempt offline password recovery during permitted penetration testing engagements.

USE CASE 3

Deploy multiple Pwnagotchi units to cover more WiFi channels simultaneously during a coordinated security assessment.

USE CASE 4

Study reinforcement learning in practice by observing your Pwnagotchi adapt to different WiFi environments over time.

Tech stack

PythonRaspberry Pi

Getting it running

Difficulty · hard Time to first run · 1day+

Requires a compatible Raspberry Pi, a supported WiFi adapter, and hardware-specific setup documented on the external project site.

Use and modify freely, but any software you distribute based on this must also be open source under GPL3.

In plain English

Pwnagotchi is a small, self-learning device that wanders around collecting WiFi security data. The name is a play on Tamagotchi, the classic handheld digital pet from the 1990s, because this project turns a tiny computer (typically a Raspberry Pi) into something you carry with you that gets smarter over time. Instead of learning to avoid predators in a virtual world, it learns to capture WiFi handshakes, which are snippets of encrypted data exchanged between a router and a device when they connect. Under the hood, the project uses a type of machine learning called reinforcement learning. The AI watches what WiFi networks and devices are nearby, tries different approaches to capturing handshake data, and adjusts its behavior based on what works. Over many sessions it improves at collecting this material in whatever environment you bring it into. The AI is not doing anything instant or magic, early on it performs poorly and explores options, and it gets noticeably better after extended use in varied locations with different networks around it. The handshakes Pwnagotchi captures are saved as PCAP files. These files can then be fed into tools like hashcat to attempt to recover the original WiFi password through offline testing. This is the workflow used by security researchers and network penetration testers who have permission to audit a WiFi network. The README frames the project explicitly as a security research and learning tool. Multiple Pwnagotchi units placed near each other can detect one another and coordinate. They split up the available WiFi channels between themselves to avoid duplicating work, which the README describes as cooperative behavior learned over time. The project is released under the GPL3 license and has an official website with fuller documentation, a community forum, and a subreddit. The README is relatively brief and points readers to the external site for setup guides and deeper explanation of how the AI training works.

Copy-paste prompts

Prompt 1
I want to build a Pwnagotchi on a Raspberry Pi Zero W for authorized WiFi security testing. What hardware and software do I need to get started?
Prompt 2
How does Pwnagotchi's reinforcement learning improve its handshake capture rate over time and what should I expect in the first few sessions?
Prompt 3
I have a PCAP file from my Pwnagotchi for a network I own. How do I use hashcat to attempt offline WiFi password recovery?
Prompt 4
How do I configure two Pwnagotchi units to work cooperatively and automatically split WiFi channels between them?
Open on GitHub → Explain another repo

← evilsocket on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.