From 2c7f16ce516911dc55caef896e4af034398990c5 Mon Sep 17 00:00:00 2001 From: Laan Tungir Date: Thu, 18 Dec 2025 08:59:18 -0400 Subject: [PATCH] Version v0.3.25 - Clean up directory structure --- HARDWARE_RNG_STATUS.md | 46 ----------------------------------------- TODO.md | 3 --- debug | Bin 16008 -> 0 bytes debug.c | 1 - manual_test.sh | 22 -------------------- 5 files changed, 72 deletions(-) delete mode 100644 HARDWARE_RNG_STATUS.md delete mode 100644 TODO.md delete mode 100755 debug delete mode 100644 debug.c delete mode 100644 manual_test.sh diff --git a/HARDWARE_RNG_STATUS.md b/HARDWARE_RNG_STATUS.md deleted file mode 100644 index 1b24fa3..0000000 --- a/HARDWARE_RNG_STATUS.md +++ /dev/null @@ -1,46 +0,0 @@ - -# Hardware RNG Implementation Status - -## Overview - -The OTP cipher application now includes comprehensive hardware Random Number Generator (RNG) device support with automatic detection, device identification, and graceful handling of different device types. - -## Supported Devices - -### ✅ Fully Supported (TrueRNG Family) -- **TrueRNG Original** (VID: 04d8, PID: f5fe) -- **TrueRNG Pro** (VID: 04d8, PID: 0aa0) -- **TrueRNG Pro V2** (VID: 04d8, PID: ebb5) - -These devices work via serial port communication and are fully integrated into the entropy collection system. - -### ⚠️ Detected but Not Supported (SwiftRNG Family) -- **SwiftRNG** (VID: 1fc9, PID: 8111) - -SwiftRNG devices are detected and identified but cannot be used via serial port communication. They require the official SwiftRNG API with libusb-1.0 integration. - -## Implementation Features - -### Device Detection -- **Automatic scanning** of `/dev/ttyUSB*` and `/dev/ttyACM*` devices -- **VID/PID identification** via sysfs to distinguish device types -- **Multi-device support** with interactive selection menus -- **Real-time status indicators** showing device availability - -### Device Communication -- **Optimized serial port configuration** for each device type -- **Timeout protection** to prevent hanging on unresponsive devices -- **Error handling** with clear diagnostic messages -- **Progress tracking** with speed estimation for large entropy collections - -### Integration Points -- **Pad enhancement** via entropy addition to existing pads -- **Interactive menus** for device selection when multiple devices are present -- **Command-line support** for automated workflows -- **Graceful fallback** to other entropy sources when no hardware RNG is available - -## Technical Implementation - -### Core Functions -- `detect_all_hardware_rng_devices()` - Scans and identifies all connected devices -- `collect_truerng_entropy_from_device()` - Collects entropy from TrueRNG devices diff --git a/TODO.md b/TODO.md deleted file mode 100644 index 5af6052..0000000 --- a/TODO.md +++ /dev/null @@ -1,3 +0,0 @@ -# TODO - -## The pad menu in interactive encrypt mode gives numbers instead of checksum selection diff --git a/debug b/debug deleted file mode 100755 index 0c48976f5d059b8ae7f10b26455e44e8d0c7b4b8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16008 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 Rc>3E&|D7$K*V?zx{}+YD9B2Rl diff --git a/debug.c b/debug.c deleted file mode 100644 index 7231826..0000000 --- a/debug.c +++ /dev/null @@ -1 +0,0 @@ -int main() { printf("Testing direct filename: %d\n", strncmp("97d9d82b5414a9439102f3811fb90ab1d6368a00d33229a18b306476f9d04f82.pad", "97", 2)); return 0; } diff --git a/manual_test.sh b/manual_test.sh deleted file mode 100644 index e02b30a..0000000 --- a/manual_test.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/bash - -echo "Manual OTP Test" -echo "===============" - -# Generate a test pad -echo "Generating test pad..." -./otp generate demo 1 -echo - -# Create a test message file for encryption -echo "Creating test message..." -echo "This is a secret message for testing OTP encryption!" > test_message.txt - -# Test encryption interactively -echo "Testing encryption (will prompt for input):" -echo "Please enter: This is a secret message for testing OTP encryption!" -./otp encrypt demo - -echo -echo "Files created:" -ls -la demo.*