Skip to content

Latest commit

 

History

History
23 lines (12 loc) · 3.12 KB

File metadata and controls

23 lines (12 loc) · 3.12 KB

Space-Image Based Entropy Generator: Project Overview

About This Project

The Space-Image Based Entropy Generator is an innovative cryptographic randomness service that harnesses the inherent unpredictability of solar activity to generate high-quality random numbers. Unlike traditional pseudo-random number generators that rely on algorithmic sequences, this system extracts genuine entropy from NASA's Solar Dynamics Observatory (SDO) imagery, providing a unique source of true randomness grounded in physical phenomena.

How It Works

The system continuously fetches live solar images from NASA's SDO in multiple wavelengths (193Å, 304Å, 171Å, and 211Å), capturing the sun's dynamic and chaotic activity in real-time. These images contain natural noise patterns from solar plasma, magnetic fields, and atmospheric turbulence—phenomena that are fundamentally unpredictable and impossible to reproduce.

The entropy generation pipeline employs a multi-stage approach to extract and refine this randomness. First, advanced image processing techniques analyze each solar image using Laplacian edge detection, Fast Fourier Transform (FFT) filtering, gradient calculations, and non-deterministic random sampling to isolate high-entropy noise patterns. This raw noise is then cryptographically hardened through multiple rounds of BLAKE3 and SHA-256 hashing, with timestamp integration and blockchain-style chaining to ensure temporal uniqueness and prevent pattern repetition.

Every generated entropy block undergoes rigorous statistical validation using five comprehensive tests: Shannon entropy calculation (targeting ≥7.8 bits/byte), chi-square distribution analysis, runs testing for pattern detection, autocorrelation testing for self-similarity, and bit-level entropy verification. Only blocks meeting strict quality thresholds (average quality score >0.93) are accepted into the entropy pool, ensuring cryptographic-grade randomness.

Technical Implementation

Built with Python and FastAPI, the system features a Redis-backed entropy pool that manages random data with atomic operations and automatic time-to-live (TTL) management to ensure freshness. The REST API provides simple HTTP endpoints for retrieving random bytes in base64 format, making integration straightforward for any application. A beautiful web interface offers real-time visualization of the entropy generation process, displaying pool statistics, quality metrics, and generated random numbers in multiple formats (hex, base64, decimal).

Background tasks continuously maintain the entropy supply by fetching new solar images every five minutes and automatically refilling the pool when it drops below capacity thresholds. The entire system is containerized with Docker, includes optional Azure cloud integration for production deployment, and implements comprehensive security measures including one-time entropy usage, validation checks, and monitoring capabilities.

This project demonstrates how natural physical processes can serve as entropy sources for cryptographic applications, bridging astrophysics and information security in an elegant, production-ready service.

Total Words: 400