SparkSome Venture

> DOKUMENTACJA_PUBLICZNA · OPEN_SOURCE

BIG_BANG_ENTROPY

SEKCJA O_PROJEKCIE

Szybki dostęp Download Raporty Język
AKTYWNY OPEN SOURCE AKADEMICKI

> MISJA_PROJEKTU

Otwarte źródło
wysokiej entropii
zakorzenione w fizyce

Big Bang Entropy to otwartoźródłowy system generowania entropii, w którym materiał losowy pochodzi z rzeczywistego toru radiowego — szumu mikrofalowego nieba, promieniowania kosmicznego i nieusuwalnego szumu termicznego w układach pomiarowych SDR.

Projekt jest tworzony przez SparkSome Venture i udostępniany nieodpłatnie osobom, deweloperom i instytucjom, które potrzebują wysokiej jakości, fizycznie zakorzenionej entropii — bez konieczności wdrażania własnej infrastruktury sprzętowej.

> ŹRÓDŁO_ENTROPII

Fizyczny szum RF i mikrofale
CMB, szum termiczny, ADC, warunki lokalne

> SPRZĘT

Nody SDR · PlutoSDR
Anteny skierowane w niebo, odbiór szerokiego szumu radiowego

> DOSTĘP

Publiczne API + Open Source
Licencja MIT · GitHub · brak rejestracji

> SKĄD_BIERZE_SIĘ_LOSOWOŚĆ

Jak powstaje materiał losowy w nodach

Każdy node pracuje jako niezależny tor pomiarowy: antena, odbiornik SDR, przetwornik ADC i dalsza obróbka cyfrowa. Interesuje nas nie treść transmisji radiowych, lecz ten fragment odbieranego widma, w którym można mierzyć fizyczny szum i niestabilność tła.

Do próbek trafia mieszanina wielu zjawisk obecnych w wybranym paśmie i szerokości kanału: emisja galaktyczna, mikrofalowe promieniowanie tła, szum atmosferyczny, szum termiczny własnych elementów analogowych, ograniczenia front-endu odbiorczego, kwantyzacja ADC oraz lokalne warunki pracy anteny i instalacji.

Materiał losowy nie pochodzi więc z jednego idealnego źródła, ale z nakładania się wielu drobnych procesów fizycznych mierzonych przez niezależne nody w różnych lokalizacjach. Dopiero później ten materiał jest filtrowany, próbkowany i mieszany kryptograficznie.

> ANTENA_I_NAZWA_PROJEKTU

Co naprawdę mierzy antena i skąd nazwa projektu

Antena skierowana w niebo nie odbiera pojedynczego, „czystego" sygnału z kosmosu. Rejestruje raczej sumę zjawisk obecnych w tle radiowym i mikrofalowym, w tym emisję galaktyczną, wkład mikrofalowego promieniowania tła oraz szum wnoszony przez sam układ pomiarowy.

Mikrofalowe promieniowanie tła, czyli CMB, jest jednym z naturalnych składników tego szerokiego krajobrazu szumowego i dlatego ma dla projektu znaczenie ideowe. Nie oznacza to jednak, że każda próbka może być interpretowana jako bezpośredni „pomiar Wielkiego Wybuchu”. W praktyce odbiornik widzi zawsze mieszankę sygnałów kosmicznych, środowiskowych i instrumentalnych.

Nazwa Big Bang Entropy jest więc świadomym skrótem myślowym: odwołuje się do kosmologicznego tła mikrofalowego i do idei budowania entropii z realnego procesu fizycznego, a nie wyłącznie z deterministycznego algorytmu. Wcześnie rozważane okolice 1420 MHz były dla projektu inspiracją radioastronomiczną, ale nie stanowią dziś jedynego ani obowiązkowego punktu pracy systemu.

> ARCHITEKTURA_SYSTEMU

Od próbki radiowej do publicznego bajtu entropii

01

TOR RADIOWY

Odbiór sygnału z anteny

PlutoSDR odczytuje próbki z anten skierowanych w niebo. Na tym etapie w danych miesza się to, co dociera z otoczenia radiowego, z własnym szumem toru odbiorczego.

02

OBRÓBKA SYGNAŁU

Wybór najbardziej losowych bitów

Node rozrzedza próbki, wybiera najmłodsze bity ADC i ogranicza przewidywalne odchylenia prostymi ekstraktorami. Wynikiem jest materiał bliższy użytecznej losowości niż surowy sygnał wejściowy.

03

WARSTWA KRYPTOGRAFICZNA

Łańcuchowe SHA-512

Generator centralny przyjmuje paczki z wielu nodów i miesza je łańcuchowym mechanizmem opartym o SHA-512. Wzmacnia to bezpieczeństwo wyjścia i ukrywa stan wewnętrzny systemu.

04

WARSTWA PUBLICZNA

Pula FIFO · Publiczne API

Wynik trafia do zużywalnej puli FIFO. Każdy pobrany bajt jest usuwany po wydaniu — publiczny interfejs nie rozdaje ponownie tych samych danych.

> HOW_TO_USE

Jak korzystać z usługi

Big Bang Entropy udostępnia surową entropię przez HTTP i TCP oraz kilka endpointów diagnostycznych. Poniżej są najprostsze sposoby użycia serwisu z terminala.

HTTP_RAW

Pobieranie entropii przez HTTP

Endpoint /raw zwraca pojedynczy chunk binarny, /raw/stream strumieniuje wskazaną liczbę bajtów, a /download/entropy przygotowuje odpowiedź jako plik do pobrania.

curl https://entropy.sparksome.pl/raw --output entropy.bin

TCP_RAW

Pobieranie entropii przez TCP

Port 1420 wydaje jedną porcję surowych bajtów i zamyka połączenie. To najprostsza opcja dla klientów, którzy chcą pobrać materiał bez warstwy HTTP.

nc entropy.sparksome.pl 1420 > entropy.bin

SERVICE_STATUS

Stan usługi i źródeł

Endpointy healthz, sources i waterfalls pozwalają sprawdzić rozmiar puli, aktywne nody SDR i dostępne waterfall’e bez pobierania samej entropii.

curl https://entropy.sparksome.pl/healthz
curl https://entropy.sparksome.pl/sources
curl https://entropy.sparksome.pl/waterfalls

READY_TO_USE

Przykładowe komendy

Poniższe przykłady pokazują typowe użycie z publicznym adresem HTTPS oraz z publicznym dostępem TCP na porcie 1420.

curl \"https://entropy.sparksome.pl/raw/stream?bytes=1048576\" --output 1mb.bin
curl -OJ \"https://entropy.sparksome.pl/download/entropy?bytes=65536\"
nc entropy.sparksome.pl 1420 | hexdump -C | head

LIMITS_AND_BEHAVIOR

Limity użytkownika i zachowanie usługi

Ruch HTTP jest ograniczany przez Nginx. Endpointy diagnostyczne i generatory działają w limicie ogólnym, a endpointy pobierające surową entropię mają niższy limit żądań.

Dodatkowo serwis ogranicza liczbę równoległych połączeń i rozmiary pojedynczych odpowiedzi. Gdy pula nie ma jeszcze wystarczającej ilości danych, klient dostaje odpowiedź 503 Warming up....

Wbudowane generatory także mają ograniczenia parametrów: hasła mogą mieć do 1024 znaków, a liczniki żądań dla generatorów są ograniczone do 1000 wyników na wywołanie.

HTTP general: 10 req/s, burst 10
HTTP heavy (/raw, /raw/stream, /download/entropy): 2 req/s, burst 2-3
HTTP concurrent connections per IP: 20
TCP concurrent connections per IP: 3
/raw chunk: 65536 bytes
/raw/stream default: 1048576 bytes
TCP session default: 65536 bytes

> AUDIT_REPORTS

Raporty audytu

> /REPORTS/

PUBLIC_REPORTS

Jak czytać raporty

Kontener audit wykonuje cykliczny przegląd jakości generatora i zapisuje wyniki w udostępnionym katalogu /reports/. To publiczne miejsce, w którym można sprawdzić aktualny stan testów statystycznych oraz historię poprzednich przebiegów.

Każdy audyt publikuje raport HTML do szybkiego odczytu, pełny raport JSON do automatycznej analizy, sumy kontrolne SHA-256 oraz wpis w łańcuchu integralności chain.jsonl. Dodatkowo index.html zbiera wszystkie przebiegi, a latest.json wskazuje ostatni dostępny raport.

Dzięki temu można równocześnie ocenić wynik testów, porównać kolejne audyty i wykryć, czy historia raportów pozostaje spójna w czasie.

> PRZEZNACZENIE_I_ZASTOSOWANIA

Kto i dlaczego korzysta z Big Bang Entropy

{ }

Deweloperzy i inżynierowie

Aplikacje wymagające prawdziwej losowości: generowanie kluczy kryptograficznych, tokenów sesji, soli hashowania, nonces w protokołach kryptograficznych.

API · HTTP · JSON

Badacze i akademicy

Eksperymenty wymagające nieskorelowanych próbek losowych: symulacje Monte Carlo, testy statystyczne, badania kryptograficzne i analizy entropii fizycznej.

RESEARCH · ACADEMIC

Instytucje i organizacje

Systemy wymagające zewnętrznego, niezależnego źródła entropii do uzupełnienia lokalnej puli CSPRNG — bez konieczności wdrażania własnego sprzętu SDR.

ENTERPRISE · INFRA

Entuzjaści SDR i RF

Projekt jest w całości otwarty — od konfiguracji PlutoSDR, przez pipeline DSP, po warstwę kryptograficzną. Pełna dokumentacja metody i możliwość uruchomienia własnego noda.

SDR · DIY · SELF-HOST

> SEDNO_ALGORYTMU

Ekstraktor fizyczny + kryptograficzny mixer

Warstwa SDR działa jak ekstraktor entropii z fizycznego sygnału. Najpierw usuwa część korelacji między sąsiednimi próbkami przez decimację, potem wykorzystuje najbardziej szumowe bity przetwornika i stosuje ekstrakcję Von Neumanna eliminującą bias przy słabej korelacji.

Warstwa generatora nie „tworzy" entropii z niczego. Jej zadaniem jest bezpiecznie związać materiał z wielu nodów w jeden strumień, dodać odporność kryptograficzną i oddzielić publiczne wyjście od surowego stanu wewnętrznego systemu.

> OTWARTA_IMPLEMENTACJA

Pełny dostęp do kodu źródłowego

Cały pipeline — od sterownika SDR, przez ekstraktor DSP, po generator i serwer API — jest opublikowany na GitHub. Możesz uruchomić własny nod, podłączyć własną antenę i dołączyć do sieci zbierania entropii.

Projekt zawiera Dockerfile, docker-compose.yml i pełną dokumentację wdrożenia. Nowy nod można uruchomić na mini PC z PlutoSDR w ciągu kilku godzin.

> WYDAWCA_PROJEKTU

SparkSome Venture

Integrator IT specjalizujący się w inżynierii złożonych systemów, infrastrukturze krytycznej i zaawansowanych zagadnieniach technicznych. Kładziemy nacisk na edukację techniczną i dzielenie się wiedzą w modelu otwartym.

Inżynieria i systemy złożone
Edukacja techniczna i transfer wiedzy
Projekty społecznościowe open-source
Infrastruktura IT i kryptografia stosowana

> MODEL_SPOŁECZNOŚCIOWY

Kod publikowany społecznościowo

Cały kod źródłowy projektu jest publicznie dostępny i rozwijany w otwartym modelu. Publikujemy go na zasadach wolnego oprogramowania, zapraszając do współpracy badaczy, inżynierów i entuzjastów radiowych.

> EDUKACJA

Projekt edukacyjny i badawczy

Projekt dokumentuje metodologię od sygnału radiowego po kryptograficzny strumień bajtów. Kod, komentarze i architektura mają służyć również jako materiał dydaktyczny z zakresu SDR, ekstrakcji entropii i bezpieczeństwa losowości.

> OTWARTE_DANE

Brak bramek dostępu

Publiczny endpoint nie wymaga rejestracji ani klucza API. Każdy pobrany bajt jest unikalny i zużywalny — system celowo nie udostępnia ponownie tych samych danych.

> LICENCJA

Licencja MIT

Projekt udostępniamy na licencji MIT. Możesz go uruchomić lokalnie, rozwidlić, zmodyfikować i włączyć do własnych systemów — bez opłat i bez pytania o zgodę.

> FAQ

Najczęstsze pytania

Czy generator zawiera tylko promieniowanie kosmiczne?

Nie. W praktyce strumień wejściowy zawiera szum termiczny własnych elementów układu, szum wejściowej elektroniki, efekty kwantowe ADC oraz lokalne warunki radiowe. Projekt świadomie wykorzystuje cały fizyczny krajobraz szumowy — a nie wyłącznie idealnie odseparowany komponent kosmiczny.

Czy szum własny urządzeń to wada?

Nie. Z punktu widzenia generatora entropii jest to nadal wartościowy materiał fizyczny, o ile jest poprawnie ekstraktowany i wzmacniany kryptograficznie. Celem systemu jest pomiar nieprzewidywalności realnego toru RF — nie budowa laboratoryjnego detektora jednego zjawiska.

Po co dodatkowo używać SHA-512?

Warstwa fizyczna dostarcza materiał entropijny, ale publiczny serwis potrzebuje też odporności kryptograficznej. SHA-512 wiąże dane z wielu nodów, ukrywa stan wewnętrzny i utrudnia przewidzenie kolejnych bajtów — nawet jeśli część wejścia byłaby słabsza niż zakładano.

Czy każdy pobrany bajt jest unikalny?

Tak. Entropia trafia do puli FIFO i jest usuwana po pobraniu. Kolejni odbiorcy otrzymują następny fragment strumienia — nigdy kopię danych już wydanych innemu użytkownikowi.

Czy mogę uruchomić własny nod?

Tak — to jeden z głównych celów projektu. Repozytorium zawiera pełną instrukcję wdrożenia noda SDR z PlutoSDR, konfigurację Docker i opis protokołu komunikacji z serwerem centralnym. Nowe nody zwiększają niezależność i przepustowość całego systemu.

Czy można używać komercyjnie?

Tak. Licencja MIT nie nakłada ograniczeń na zastosowania komercyjne. Publiczny API jest bezpłatny. Jeśli projektujesz system produkcyjny wymagający dedykowanej przepustowości lub wsparcia, skontaktuj się ze SparkSome Venture.