กลับไปหน้ารวมไฟล์
diceware-password-lookup-box-7bd5f5-en.md

The Diceware Strategy: Security Through Randomness

In an era of sophisticated hackers, the Diceware Password Lookup Box brings back the power of physical randomness. Diceware is a method for generating passwords that are nearly impossible to crack but easy for humans to remember. By rolling five dice, you generate a 5-digit number (like 1-6-2-4-3) which corresponds to a specific word in a massive table of 7,776 possibilities. This "Lookup Box" automates the tedious manual search, allowing you to build multi-word passphrases in seconds.

The Hardware Stack: A "Shield Cake"

The project is built as a vertical stack of Arduino shields, requiring no messy wiring:

  1. Bottom Layer: The Arduino Uno, serving as the central processor.
  2. Middle Layer: The Data Logging Shield, which provides a real-time clock and, crucially, an SD Card Slot to store the word lists.
  3. Top Layer: An LCD Shield with Buttons, used for user interaction. The author cleverly handles pin conflicts by removing Pin 10, ensuring the SD card's Chip Select (CS) remains dedicated.

Software Architecture: Searching the Library

The complexity of this project lies in managing large data files on limited hardware.

  • File Management: The SD card stores several versions of the Diceware list, including the EFF Long List (large words) and EFF Short Lists (4-dice options). These are stored as .txt files in a "Number-to-Word" CSV format.
  • The Search Engine: Since the Arduino lacks enough RAM to load the entire 7,000+ word list, it uses a Line-by-Line Search algorithm. While this means looking up the last word in the list (66666) can take up to 8 seconds, it ensures the system remains portable and standalone.
  • Chorded Keyboard Input: The buttons are managed by an interrupt-driven routine, allowing the user to quickly increment each digit of their dice roll.

Why It’s Secure

Unlike software-based password generators that can be compromised by malware or biased random number algorithms, the Diceware Box is an "Air-Gapped" device. It never connects to the internet, and the randomness comes from your physical dice rolls. It is the ultimate companion for anyone serious about their Cybersecurity and digital privacy.

Diceware is a way of generating harder-to-crack passwords. You roll 5 dice, look up the number in a table, and chain the words together. Since manual lookup is time-consuming, I created this box where you enter the numbers and it finds the words for you. This project supports both the original and EFF lists, making high-level security accessible to everyone.

ข้อมูล Frontmatter ดั้งเดิม

title: "Diceware password lookup box"
description: "A hardware security companion that generates uncrackable passphrases by looking up dice rolls against large-scale word lists."
author: "glennedi"
category: "Security"
tags:
  - "password"
  - "encryption"
  - "sd-card"
  - "lcd"
  - "cybersecurity"
views: 702
likes: 0
price: 2450
difficulty: "Easy"
components:
  - "1x Arduino UNO"
  - "1x LCD Shield with Keyboard / Buttons"
  - "1x Deek-Robot Data Logging Shield (with SD Slot)"
  - "1x SD Card (FAT32 formatted)"
tools: []
apps:
  - "1x Arduino IDE"
downloadableFiles:
  - "https://projects.arduinocontent.cc/4a5fbd18-457d-47e7-b9f5-e69193937e43.ino"
documentationLinks:
  - "http://world.std.com/~reinhold/diceware.html"
passwordHash: "bf4326adf89369e408fcaabf3caf926633309d7514b230d748eb40ff3682e89e"
encryptedPayload: "U2FsdGVkX19IolpBx+vmshLdtQIuFyNQzgQrWZKRqhdjiYQpsgAn4tHEqmZdRgauMZB6w2Al8ctaRxPSBSBZl2yyJndJQXMGzOxxDTCrojA="
seoDescription: "Secure your digital life with an Arduino Diceware Box. Generate hard-to-crack passwords using 5-dice rolls and huge localized word lists on an SD card."
videoLinks: []
heroImage: "https://cdn.jsdelivr.net/gh/bigboxthailand/arduino-assets@main/images/projects/diceware-password-lookup-box-7bd5f5_cover.jpg"
lang: "en"