Prywatność i ciasteczka
Ta informacja dotyczy dwóch odrębnych rzeczy: aplikacji FoxSDR, którą instalujesz, oraz tej strony internetowej. Zbierają one różne dane, z różnych powodów, i są opisane poniżej osobno – najpierw aplikacja, bo to ta część działa na Twoim własnym komputerze. Informacja ma być kompletna, a nie krótka: wymienione jest każde pole, które którakolwiek z nich przechowuje, łącznie z tymi, które większość takich informacji pomija.
Aplikacja: co wysyła
Nie ma konta, klucza licencyjnego ani aktywacji, a FoxSDR nigdy nie przekazuje żadnych informacji o tym, czego słuchasz. Z własnej inicjatywy wykonuje dokładnie cztery rodzaje żądań sieciowych: sprawdzenie aktualizacji; anonimowy raport użycia, z niewielkim sygnałem „nadal działa”, gdy aplikacja jest otwarta; raport o awarii lub zawieszeniu po wystąpieniu błędu; oraz – tylko gdy Ty otworzysz sklep wtyczek lub naciśniesz w nim SPRAWDŹ TERAZ – żądanie do katalogu wtyczek. Każde z nich jest opisane poniżej pole po polu i każde można wyłączyć. Sterują nimi trzy przełączniki: SYSTEM → Aktualizacje, SYSTEM → Raporty użycia i SYSTEM → Diagnostyka. Żadna funkcja nie zależy od tego, czy któryś z nich jest włączony, i nic nie nagabuje Cię za wyłączenie któregoś.
Co zostaje na Twoim komputerze
Twoje nagrania, zarówno dźwięku, jak i surowego I/Q, obrazy tworzone przez dekodery SSTV i satelitów meteorologicznych, wszystko, co dekodują dekodery, Twoje zakładki, plany pasm, ustawienia, pozycja odbiornika i zainstalowane wtyczki to pliki na Twoim własnym dysku. Nic ich nie wysyła, a żadna częstotliwość, na którą się dostroisz, nie opuszcza Twojego komputera.
Sprawdzanie aktualizacji
Raz przy każdym uruchomieniu aplikacja pyta tę stronę, czy istnieje nowsza wersja. Całe żądanie to GET /api/update?v=, a po nim wersja, której używasz – bez identyfikatora, bez identyfikatora instalacji, bez ciasteczka i bez niczego, co można by powiązać z późniejszym żądaniem. Ten serwer nie zapisuje dla niego żadnego rekordu analitycznego: rejestrowane są tylko odsłony stron i pobrania plików, a punkt końcowy aktualizacji nie jest ani jednym, ani drugim. Wyłącz je w SYSTEM → Aktualizacje, a aplikacja nigdy więcej nie połączy się z tą usługą.
Nic nie jest pobierane ani instalowane, dopóki nie naciśniesz przycisku. Jeśli to zrobisz, instalator jest pobierany z tej strony przez HTTPS, a jego suma SHA-256 jest porównywana ze skrótem opublikowanym przez serwer, zanim plik otrzyma nazwę, pod którą cokolwiek mogłoby go uruchomić – a to pobranie jest zwykłym pobraniem z tej strony, więc jest rejestrowane jak każde inne, z adresem IP, przybliżoną lokalizacją, przeglądarką i systemem operacyjnym opisanymi w części tej informacji dotyczącej strony internetowej.
Raporty użycia
Od wersji 0.53.0 istnieje anonimowy raport użycia, w SYSTEM → Raporty użycia. Jest domyślnie włączony i można go wyłączyć – odznacz to pole, a raportowanie natychmiast ustanie. Przy każdym uruchomieniu wysyłany jest jeden raport, opisujący sesję, która właśnie się zakończyła, i oto cała jego zawartość:
| Wysyłane | Przykład | Po co |
|---|---|---|
| Identyfikator instalacji | 32 losowe znaki szesnastkowe | Pozwala odróżnić 100 użytkowników od jednego użytkownika, który uruchomił program 100 razy. Generowany losowo na Twoim komputerze przy pierwszym uruchomieniu, usuwany, gdy wyłączysz raportowanie, i nigdy nie jest wyprowadzany z Twojego sprzętu, sieci ani nazwiska. |
| Wersja aplikacji | 0.99.39 | Czy ludzie aktualizują. Alfa dla Androida zgłasza swoją kompilację jako 0.98.1-android.4 – przyrostek -android.N dodany do numeru wydania, z którego została zbudowana, dzięki czemu jej raporty nigdy nie mylą się z raportami instalatora dla Windows. |
| System operacyjny | Windows 10.0.22631, Linux 6.8.0 lub Android 14 | Które platformy są faktycznie używane. System operacyjny i numer jego kompilacji, jądra lub wydania, nigdy nazwa Twojego komputera ani konto użytkownika. Kompilacja dla Linux (0.99.39) i alfa dla Androida (0.98.1-android.4) wysyłają te same pola pod tym samym przełącznikiem. |
| Architektura | x64 lub arm64 | Jak wyżej. |
| Liczba uruchomień | 12 | Czy oprogramowanie jest używane więcej niż raz. |
| Liczba awarii | 1 | Jak często zawodzi. |
| Długość sesji | 3600 sekund | Czy sesje trwają minuty, czy godziny. |
| Model SDR | uhd b200 | Którym radiom dać pierwszeństwo. Numery seryjne są usuwane przed wysłaniem. |
| Używane demodulatory i jak długo | WFM: 3000s | Które emisje uzasadniają dalszą pracę. |
| Otwierane panele | map, decoded | Które funkcje są używane. |
| Zainstalowane wtyczki | ADS-B 1.0.0 | Które dekodery uzasadniają dalszą pracę. |
To pełna lista. Jest dostarczana z aplikacją jako PRIVACY.md, a automatyczny test sprawdza zawartość raportu pole po polu, więc nie można dodać nowego pola, by test nie zawiódł i by oba dokumenty nie zostały zaktualizowane. Wyłączenie raportowania usuwa identyfikator instalacji, więc jeśli kiedyś włączysz je z powrotem, dostaniesz nowy, którego nie da się powiązać ze starym.
Raport jest wysyłany przy uruchomieniu, opisując sesję, która już się zakończyła, i nigdy przy zamykaniu – połączenie sieciowe przy wyjściu może zawiesić aplikację, którą ktoś próbuje zamknąć, a raport zapisywany przy wyjściu przepadłby właśnie przy tym zdarzeniu, które najbardziej warto policzyć. Nic z odpowiedzi nie jest odczytywane ani wykorzystywane.
Sygnał „nadal działa”
Raport, który przychodzi, gdy aplikacja się uruchamia, może powiedzieć, kto ją uruchomił, ale nigdy, kto nadal ma ją otwartą. Dlatego, gdy FoxSDR działa – i tylko wtedy, gdy raporty użycia są włączone – wysyła też co pięć minut jedną bardzo małą wiadomość, zawierającą trzy pola i nic więcej:
| Wysyłane | Przykład | Po co |
|---|---|---|
| Identyfikator instalacji | te same 32 znaki szesnastkowe co wyżej | Dzięki temu dwanaście sygnałów z jednej kopii liczy się jako jedna działająca kopia, a nie dwanaście. |
| Wersja aplikacji | 0.99.39 | Dzięki temu „działające teraz” można podzielić według wersji. |
| Znacznik sygnału | 1 | Informuje stronę odbierającą, że to sygnał, a nie raport z sesji. |
Nic z sesji nie jest do niego dołączane: żadnych emisji, paneli, modelu radia, czasów trwania ani liczników. Sygnały są zapisywane we własnym zbiorze danych, oddzielonym od raportów z sesji, więc żadna wartość statystyk użycia nie zmienia znaczenia. Ten sam przełącznik zatrzymuje oba: nadawca nie uruchomi się bez ważnego identyfikatora instalacji, a wyłączenie raportów użycia go usuwa, więc „wyłączone” oznacza brak jakichkolwiek sygnałów. Sygnał, który jest jeszcze w drodze, gdy przypada następny, jest pomijany, a nie kolejkowany.
Dokąd trafiają raporty użycia
Do Cloudflare Worker obsługiwanego przez ten projekt pod adresem https://telemetry.foxsdr.com, który zapisuje powyższe liczniki w zbiorze danych Cloudflare Workers Analytics Engine. Cloudflare przetwarza je w naszym imieniu i przechowuje przez trzy miesiące, po czym znikają. Nikt inny ich nie otrzymuje, nie są sprzedawane, wynajmowane ani udostępniane, a jedyne, co się z nich odczytuje, to zbiorcze liczby, przez ten sam chroniony hasłem panel opisany dalej. Kod źródłowy Workera jest publikowany razem z aplikacją, więc możesz przeczytać, co robi strona odbierająca. Raporty o awariach nie trafiają tutaj – trafiają na własny serwer tej strony, opisany poniżej.
Raporty o awariach i zawieszeniach
Jeśli FoxSDR ulegnie awarii lub przestanie odpowiadać, zapisuje raport opisujący błąd w %LOCALAPPDATA%\FoxSDR\crashes\ na Twoim komputerze i wysyła treść raportu przy następnym uruchomieniu – nigdy z wnętrza samej awarii, bo program, który właśnie uległ błędowi, nie może bezpiecznie otworzyć połączenia sieciowego. Raport trafia do POST /api/crash na tej stronie – nie do Cloudflare i nie do żadnej strony trzeciej – i jest anonimowy: nie ma konta, klucza licencyjnego ani niczego, czym trzeba by się zalogować.
Przełącznikiem jest SYSTEM → Diagnostyka i steruje on w równym stopniu zapisywaniem i wysyłaniem: gdy jest wyłączony, żaden raport nie jest zapisywany, żaden katalog nie jest tworzony i żadne połączenie nie jest nawiązywane. To inny przełącznik niż raporty użycia. Wyłączenie raportów użycia nie zatrzymuje raportu o awarii – opróżnia w nim pole identyfikatora instalacji, bo wtedy żaden identyfikator nie istnieje, a raport o awarii nigdy go nie tworzy (zob. ostatni wiersz tabeli poniżej). Do tego wydania powyższa informacja podawała niewłaściwy przełącznik; oprogramowanie zawsze używało Diagnostyki, a teraz oba mówią to samo.
Oto cała zawartość raportu:
| Wysyłane | Przykład | Po co |
|---|---|---|
| Co się stało | crash lub hang | Zawieszenie i awaria to różne błędy. |
| Sygnatura błędu | cascade.exe+0x1a2b/adsb.dll | Grupuje ten sam błąd zgłoszony przez wiele osób w jeden wpis, dzięki czemu sto raportów o jednym błędzie to jedna rzecz do naprawienia, a nie sto. |
| Wersja aplikacji, commit i identyfikator kompilacji | 0.61.0, 28fa1c2 | W której kompilacji to się stało i które symbole do niej pasują. |
| Moduł, w którym wystąpił błąd, i przesunięcie | cascade.exe, 0x1a2b | Gdzie w programie coś poszło nie tak. |
| System operacyjny i architektura | Windows 11, Linux lub Android 14, x64 lub arm64 | Błędy często są specyficzne dla jednej platformy. Raport z Linux lub Androida zawiera te same pola; ramki stosu podają identyfikator kompilacji GNU biblioteki, w której wystąpił błąd, zamiast identyfikatora PDB, bo żadna z tych platform nie jest kompilowana MSVC. |
| Jakiego rodzaju był to błąd | access violation, 0xC0000005 | Własny wiersz przyczyny z raportu i kod wyjątku Windows. W szczególności to on mówi, że błąd został wchłonięty – aplikacja go przetrwała – a nie był awarią; bez niego oba przypadki wyglądają identycznie. Kod i stałe zdanie, nigdy treść. |
| Załadowane wtyczki i ich wersje | ADS-B 1.1.0 | „Awaria tylko przy załadowanej wtyczce ADS-B” to opis błędu; „czasem się wysypuje” – nie. |
| Stosy wątków | cascade.exe+0x1a2b na ramkę | Stos to sam błąd. Zawiera wyłącznie nazwy modułów, identyfikatory kompilacji i liczbowe przesunięcia – bez ścieżek do kodu źródłowego, bez zmiennych, bez zawartości pamięci. |
| Końcówka logu sesji | opened rtlsdr | The last lines the application logged, which is usually what it was doing when it failed. It is the application's own log: it records state changes — source opened, rate set, plugin started — never signal content, and never the name or path of a file you opened. It also carries what the radio driver said and what its libraries printed to the standard error stream. Before any line of it leaves your computer, the application's own lines as well as the driver's, it is scrubbed: serial numbers and the device-specific part of USB device identifiers are replaced by <stripped>, the account name in a file path by <user>, and anything in single quotes, such as the names you give patch nodes and speakers, by '<name>'; on any line that mentions hertz, a frequency, tuning, a centre, a range, an offset, a carrier, a preset or transmitting, every number is replaced by # unless it is marked as a sample rate, a time, a level, a size or a count, is a version, an identifier or an error code, or is part of a name such as R820T; and lines in which the USB driver lists the devices plugged into your computer are left out, with one line saying how many. |
| Notatki kontekstowe | mode: WFM, sampleRate: 2400000 | Kilka notatek klucz/wartość dołączanych przez aplikację: emisja, źródło (generator, plik I/Q lub prawdziwe radio), częstotliwość próbkowania, czy urządzenie było otwarte, model SDR z usuniętymi numerami seryjnymi, ile sekund aplikacja działała oraz czy wątek, w którym wystąpił błąd, wykonywał własny kod FoxSDR, czy kod sterownika radia. sampleRate to częstotliwość próbkowania, a nie częstotliwość dostrojenia. |
| Identyfikator instalacji | 32 losowe znaki szesnastkowe lub puste | Używany do ograniczania liczby żądań, a potem odrzucany: identyfikator instalacji nie jest przechowywany. Komputer uwięziony w pętli awarii nie może zalewać serwera, a odróżnienie jednego komputera od stu to jedyny cel, w jakim ta wartość jest kiedykolwiek odczytywana. Nigdy nie jest tu zapisywany na dysku. Jeśli raporty użycia są wyłączone, wysyłany jest pusty – wtedy nie ma identyfikatora, a raport o awarii nigdy go nie tworzy. |
Corrected in FoxSDR 0.99.33. Before 0.99.33 the scrubbing described above was applied only to the radio driver's lines, not to the application's own, and a few of the application's own lines could therefore reach a crash or freeze report carrying the frequency you had asked for or were transmitting on, a patch radio's label (which can include its serial number), the names you gave patch parts, the first line of text a decoder on the patch page had produced, and the list of USB devices the USB driver printed, including their serial numbers. That contradicted this notice. From 0.99.33 every line is scrubbed before it leaves your computer, and those log lines no longer contain those values in the first place.
Raport o awarii nie zawiera żadnej częstotliwości, niczego zdekodowanego, żadnej ścieżki pliku, nazwy użytkownika, nazwy komputera ani lokalizacji. Raporty są przechowywane na własnym serwerze tej strony, za tym samym chronionym hasłem panelem co wszystko inne, i są przechowywane przez 90 dni od ostatniego wystąpienia błędu, a następnie usuwane – te same trzy miesiące, przez które przechowywane są raporty użycia. Pierwszy raport o danym błędzie jest przechowywany w całości, wraz z jednym kolejnym raportem na każdą kompilację, do której błąd przetrwa, maksymalnie trzema; każdy inny raport o tym samym błędzie jest liczony, a nie przechowywany. Automatyczny test pilnuje, by zarówno to, co punkt końcowy przyjmuje, jak i to, co zapisuje na dysku, odpowiadało powyższej tabeli, w obu kierunkach, więc do żadnego z nich nie można dodać pola bez zmiany tej tabeli.
Pełny zrzut pamięci nigdy nie jest wysyłany, przy żadnym ustawieniu. Zrzut pamięci to kopia pamięci programu i może zawierać nazwy plików, tytuły okien i dane odebranego sygnału. Domyślnie jest wyłączony; jeśli włączysz go w SYSTEM → Diagnostyka, plik .dmp jest zapisywany obok raportu tekstowego, wyłącznie lokalnie, a program wysyłający otwiera pliki o nazwach crash-*.txt i hang-*.txt i nic poza nimi.
Jak często. Najwyżej pięć raportów dziennie z jednego komputera, a ten sam błąd tylko raz dziennie, niezależnie od tego, ile razy wystąpi – oba limity są przechowywane w Twoim własnym pliku ustawień, więc komputer w pętli awarii sam przestaje wysyłać, zamiast czekać, aż ktoś mu to nakaże, a raport, którego nie udało się wysłać, jest ponawiany przy kolejnych uruchomieniach najwyżej trzy razy, a potem zostawiany w spokoju. Zamiana przesunięcia z raportu z powrotem na nazwę funkcji wymaga bazy danych debugowania z dokładnie tej kompilacji, która pozostaje na naszych własnych komputerach i nigdy nie jest nigdzie wysyłana: rozwiązywanie odbywa się lokalnie, a nie na serwerze.
Czego aplikacja nigdy nie wysyła
- Częstotliwości, na które się dostrajasz. To, czego ktoś słucha, jest najbardziej wrażliwą informacją, jaką zna to oprogramowanie, i nigdy nie jest zbierane. W Wielkiej Brytanii przechwycenie wiadomości, do której odbioru nie masz uprawnień, lub ujawnienie jej treści jest przestępstwem na mocy sekcji 48 ustawy Wireless Telegraphy Act 2006.
- Nazwy i ścieżki otwieranych plików. Nazwa pliku nagrania to Twoje dane – może wskazywać usługę, miejsce lub częstotliwość. Gdy pliku I/Q nie da się ponownie otworzyć, log zapisuje, że nie udało się go otworzyć; nazwa zostaje na ekranie, gdzie i tak ją znasz.
- Nic zdekodowanego – wiadomości z pagerów, samoloty, statki, obrazy, ruch satelitarny.
- Twoja pozycja ani pozycja czegokolwiek, co odbierasz – w tym ustawiona przez Ciebie pozycja odbiornika, która nigdy nie jest przesyłana w żadnym raporcie. Zob. poniżej.
- Twój adres IP ani żadna wyprowadzona z niego lokalizacja. Żądanie z natury dociera do serwera z jakiegoś adresu, bo tak działa internet; punkt końcowy raportów użycia nie odczytuje żadnych informacji o połączeniu i nie zapisuje logów żądań.
- Numery seryjne sprzętu. Model radia jest przydatny; numer seryjny identyfikuje Twój konkretny egzemplarz i jest usuwany przed wysłaniem.
- Twoje imię i nazwisko, nazwa komputera, konto użytkownika ani jakakolwiek ścieżka pliku.
- Pełny zrzut pamięci.
Pozycja odbiornika i GPS
FoxSDR musi wiedzieć, gdzie jest odbiornik, bo każda odległość i każdy namiar na mapie i ekranie radaru są mierzone od niego. Możesz ją wpisać, kliknąć na mapie albo odczytać z odbiornika GPS na porcie szeregowym.
Pozycja zostaje na Twoim komputerze. Jest przechowywana w Twoim własnym pliku ustawień i nigdy nie jest przesyłana – ani w raporcie użycia, ani w sygnale „nadal działa”, ani w raporcie o awarii, ani nigdzie indziej. Odczyt z GPS to coś, co uruchamiasz Ty: podajesz port i naciskasz „Odczytaj pozycję z GPS”. Port jest zajmowany tylko do nadejścia pierwszego ustalenia pozycji i najwyżej przez 60 sekund. Log diagnostyczny zapisuje nazwę portu, prędkość transmisji, liczbę zdań i satelitów oraz ewentualne błędy – nigdy pozycji i nigdy treści zdania NMEA. Zawartość pola portu, która nie wygląda jak port, jest zapisywana w logu jako jej rodzaj i długość („wpisana ścieżka urządzenia, 27 znaków”), więc ścieżka pliku zawierająca Twoją nazwę użytkownika nie może przedostać się do raportu. Pilnują tego dwa automatyczne testy: jeden na buforze logu, drugi na pliku logu zapisanym przez prawdziwą aplikację.
Katalog wtyczek
Z katalogiem łączy się aplikacja, gdy otwierasz okno sklepu wtyczek (od FoxSDR 0.99.16 – za pierwszym razem w sesji), za każdym razem, gdy naciśniesz w nim SPRAWDŹ TERAZ, oraz gdy zdecydujesz się coś zainstalować. Nic nie jest pobierane przy starcie, okno nie otwiera się ponownie samo, a żadna wtyczka nigdy nie aktualizuje się sama. Katalog to plik opublikowany na GitHub (raw.githubusercontent.com), więc to żądanie trafia na serwery GitHub, które – jak przy każdym żądaniu internetowym – widzą adres, z którego przyszło. Nie jest do niego dołączany żaden Twój identyfikator: ani identyfikator instalacji, ani ciasteczko, ani nic, co można by powiązać z raportem użycia. Każde pobieranie odbywa się przez HTTPS, ma limit rozmiaru, jest odrzucane przy przekierowaniu na inny host i sprawdzane względem sumy sha256 opublikowanej w katalogu, zanim wolno mu stać się plikiem. Źródło jest ustawieniem: możesz wskazać inny katalog albo index.json na własnym dysku – wtedy żadne żądanie sieciowe nie jest wykonywane.
Zestawy elementów orbitalnych satelitów
Wtyczka satelitarna utrzymuje aktualność swoich zestawów elementów orbitalnych, pobierając je ze źródeł wymienionych w jej pliku satellite.cfg, co dwanaście godzin, dopóki jest załadowana. Ta strona przechowuje kopię tych zestawów elementów pod adresem GET /tle/all.tle – grupy stacji, satelitów amatorskich i meteorologicznych z CelesTrak oraz NOAA 15, 18 i 19, odświeżane tutaj co dwanaście godzin – a wtyczka Satelity 1.0.4 i nowsze same przełączają się na ten plik, gdy zawiodą wszystkie źródła z satellite.cfg, dzięki czemu komputer, któremu CelesTrak odmawia, nadal może je śledzić. Plik nie musi wymieniać tej strony, aby tak się stało; wiersz fallback-url none w nim wyłącza tę awaryjną ścieżkę, a refresh-hours 0 wyłącza całe pobieranie. Żądanie nie zawiera identyfikatora, identyfikatora instalacji ani ciasteczka, a ten serwer nie zapisuje dla niego rekordu analitycznego – podobnie jak przy sprawdzaniu aktualizacji rejestrowane są tylko odsłony stron i pobrania plików, a kopia lustrzana nie jest ani jednym, ani drugim. Same zestawy elementów należą do CelesTrak (celestrak.org) i każda odpowiedź to podaje.
Wyszukiwanie samolotów w rejestrze
Opcjonalna wtyczka Aircraft Info pokazuje, kim jest każdy samolot na mapie – jego znaki rejestracyjne, typ i operatora. Aplikacja nigdy sama nie wykonuje tego żądania; umożliwia je dopiero instalacja tej wtyczki. Od wersji 1.1.0 wtyczka najpierw pyta tę stronę, pod adresem GET /api/aircraft/<address>, i wysyła wyłącznie sześciocyfrowy szesnastkowy adres ICAO samolotu – liczbę, którą nadaje sam samolot – bez identyfikatora, identyfikatora instalacji ani ciasteczka. O każdy płatowiec pyta się raz, a odpowiedź jest przechowywana na Twoim komputerze, więc nie pyta się o niego ponownie. Dopiero gdy ta strona nie zna samolotu albo jest nieosiągalna, wtyczka pyta api.adsbdb.com, bezpłatną usługę strony trzeciej, jak zawsze robiły wcześniejsze wersje. Zbiór samolotów słyszanych przez odbiornik z grubsza wskazuje, gdzie się on znajduje, dlatego wtyczka jest opcjonalna i mówi o tym przed instalacją.
Co ten serwer przechowuje o wyszukiwaniu: nic w odniesieniu do pojedynczego żądania. Nie jest zapisywany żaden rekord analityczny, a do logów nie trafia ani adres samolotu, ani adres, z którego przyszło żądanie. Jedynym zapisem jest pięć bieżących sum od ostatniego uruchomienia serwera – wyszukiwania, znalezione, nieznalezione, błędnie sformułowane i ograniczone limitem – pokazywanych w panelu. Aby nikt nie skopiował całej tabeli, każdy łączący się adres ma limit wyszukiwań przechowywany w pamięci, dokładnie tak jak w innych punktach końcowych tutaj, i nigdy nie zapisywany na dysku; jest zapominany przy ponownym uruchomieniu serwera albo gdy śledzonych jest ponad dziesięć tysięcy adresów, zależnie od tego, co nastąpi wcześniej.
Odpowiedzi pochodzą z bazy statków powietrznych OpenSky Network (opensky-network.org): dla każdego płatowca jego znaki rejestracyjne, oznaczenie typu, producent, model i – jeśli jest zapisany – operator. OpenSky udostępnia tę bazę w stanie, w jakim jest, i prosi użytkowników o cytowanie: Matthias Schäfer, Martin Strohmeier, Vincent Lenders, Ivan Martinovic i Matthias Wilhelm, „Bringing Up OpenSky: A Large-scale ADS-B Sensor Network for Research”, w: Proceedings of the 13th IEEE/ACM International Symposium on Information Processing in Sensor Networks (IPSN), kwiecień 2014. Zapisany tam zarejestrowany właściciel nie jest kopiowany na tę stronę ani przez nią udostępniany, bo w przypadku prywatnego statku powietrznego jest to imię i nazwisko osoby; kopiowany jest tylko operator, czyli linia lotnicza, siły powietrzne lub firma.
Interfejs w przeglądarce
FoxSDR może udostępniać swój interfejs przez HTTP innym komputerom w Twojej sieci. Jest to domyślnie wyłączone i powiązane tylko z Twoim komputerem, dopóki tego nie zmienisz; każde szersze powiązanie wymaga hasła, a bez niego jest odrzucane, a nie otwierane. Hasła są przechowywane jako skróty (PBKDF2-HMAC-SHA256), a sesje są unieważniane przy każdej zmianie ustawień. Celowo nie ma TLS, bo aplikacja nie linkuje żadnej biblioteki kryptograficznej i nie będzie deklarować bezpieczeństwa transportu, którego nie może zapewnić – postaw przed nią odwrotne proxy lub prywatny tunel i nigdy nie przekierowuj do niej portu bezpośrednio. Każdy, komu dasz dostęp, może widzieć, co robi odbiornik, i nim sterować.
Propozycje funkcji wysyłane z aplikacji
Aplikacja ma na swojej stronie głównej okienko „Zaproponuj funkcję”, w którym możesz wpisać, co chciałbyś, żeby robiła, i nacisnąć Wyślij. Nic nie jest wysyłane, dopóki nie naciśniesz tego przycisku, nigdy nie dzieje się to automatycznie, a propozycja, która do nas nie dotrze, nie jest kolejkowana ani ponawiana w tle – to, co wpisałeś, zostaje w okienku, tylko w pamięci, abyś mógł ponownie nacisnąć Wyślij, i nigdy nie jest zapisywane w pliku konfiguracji ani w logu. Oto cała zawartość jednej propozycji:
| Wysyłane | Przykład | Po co |
|---|---|---|
| Co wpisałeś | Please add a squelch control to the FLEX decoder | Sama propozycja: od 10 do 100000 znaków. Znaki sterujące są usuwane przed zapisaniem; podziały wierszy są zachowywane. |
| Kontakt, jeśli go podałeś | [email protected] lub znak wywoławczy | Opcjonalny, do 120 znaków, abyśmy mogli zadać pytanie uzupełniające. Zostaw puste, a propozycja nie będzie zawierać niczego, co mogłoby Cię zidentyfikować. |
| Wersja aplikacji | 0.99.39 | Z której kompilacji przyszła propozycja. |
| System operacyjny | windows, linux lub android | Która platforma ją wysłała. |
| Architektura | x64 lub arm64 | Jak wyżej. |
| Numer schematu | 1 | Wersja kontraktu formatu przesyłania, aby przyszła zmiana formatu nie mogła zostać pomylona z którymkolwiek z powyższych pól. |
Trafia do POST /api/feature-request na tej stronie. Twój adres IP służy wyłącznie do utrzymania rozsądnego tempa wysyłania i nigdy nie jest zapisywany na dysku – faktycznie przechowywany zapis to Twoja wiadomość, Twój adres kontaktowy, jeśli go podałeś, wersja aplikacji, platforma, architektura oraz Twój przybliżony kraj, jeśli nasze wyszukiwanie potrafi go ustalić na podstawie połączenia, i nic więcej. Czyta ją opiekun projektu w panelu administracyjnym, za tym samym hasłem co wszystko inne tutaj, i jest ona przechowywana do czasu usunięcia jej z tego panelu albo do Twojej prośby. Propozycja, która została załatwiona – dodana do FoxSDR lub rozstrzygnięta w inny sposób – może zostać tam zarchiwizowana zamiast usunięta, aby projekt mógł śledzić, o co proszono i co zbudowano; zarchiwizowana propozycja jest nadal przechowywana, ze wszystkim, co wymieniono powyżej. Jeśli podałeś adres kontaktowy i chcesz, aby propozycja została usunięta, napisz na adres poniżej i zacytuj tyle z tego, co wysłałeś, aby dało się ją odnaleźć.
Zgłoszenia błędów i uwag wysyłane z aplikacji
Bezpośrednio pod „Zaproponuj funkcję” aplikacja ma okienko „Zgłoś błąd / uwagę”, w którym piszesz, że coś nie działa albo że jest coś, co Ci się nie podoba, i naciskasz Wyślij. Działa dokładnie tak jak okienko propozycji funkcji: nic nie jest wysyłane, dopóki nie naciśniesz tego przycisku, nic nie jest kolejkowane ani ponawiane w tle, a to, co wpisałeś, zostaje tylko w pamięci – nigdy w pliku konfiguracji, nigdy w logu. Nie jest to raport o awarii i nie zawiera niczego z tego, co zawiera raport o awarii. Oto cała zawartość jednego zgłoszenia:
| Wysyłane | Przykład | Po co |
|---|---|---|
| Czy to błąd, czy uwaga | bug lub dislike | Wybór dokonany u góry okienka: coś, co nie działa, albo coś, co działa zgodnie z projektem, a Ty wolałbyś, żeby tak nie było. |
| Co wpisałeś | The waterfall freezes when I change the sample rate | Samo zgłoszenie: od 10 do 100000 znaków. Znaki sterujące są usuwane przed zapisaniem; podziały wierszy są zachowywane. |
| Kontakt, jeśli go podałeś | [email protected] lub znak wywoławczy | Opcjonalny, do 120 znaków, abyśmy mogli zadać pytanie uzupełniające. Zostaw puste, a zgłoszenie nie będzie zawierać niczego, co mogłoby Cię zidentyfikować. |
| Wersja aplikacji | 0.99.39 | Z której kompilacji przyszło zgłoszenie, aby nie szukać ponownie błędu, który już poprawiono. |
| System operacyjny | windows, linux lub android | Która platforma ją wysłała. |
| Architektura | x64 lub arm64 | Jak wyżej. |
| Numer schematu | 1 | Wersja kontraktu formatu przesyłania, aby przyszła zmiana formatu nie mogła zostać pomylona z którymkolwiek z powyższych pól. |
Trafia do POST /api/problem-report na tej stronie. Twój adres IP służy wyłącznie do utrzymania rozsądnego tempa wysyłania i nigdy nie jest zapisywany na dysku – faktycznie przechowywany zapis to informacja, czy był to błąd, czy uwaga, Twoja wiadomość, Twój adres kontaktowy, jeśli go podałeś, wersja aplikacji, platforma, architektura oraz Twój przybliżony kraj, jeśli nasze wyszukiwanie potrafi go ustalić na podstawie połączenia, i nic więcej. Czyta je opiekun projektu w panelu administracyjnym, za tym samym hasłem co wszystko inne tutaj, a zgłoszenie jest przechowywane do czasu usunięcia go z tego panelu albo do Twojej prośby. Zgłoszenie, które zostało załatwione – poprawione w FoxSDR lub rozstrzygnięte w inny sposób – może zostać tam zarchiwizowane zamiast usunięte; zarchiwizowane zgłoszenie jest nadal przechowywane, ze wszystkim, co wymieniono powyżej. Jeśli podałeś adres kontaktowy i chcesz, aby zgłoszenie zostało usunięte, napisz na adres poniżej i zacytuj tyle z tego, co wysłałeś, aby dało się je odnaleźć.
Strona internetowa: co jest rejestrowane podczas wizyty
Dla każdej odsłony strony i każdego pobrania zapisywany jest rekord, niezależnie od tego, czy akceptujesz ciasteczka. To analityka własna: dane pozostają na serwerze, który obsługuje tę stronę, nie są udostępniane żadnej sieci reklamowej, a na stronie nie ma żadnego skryptu strony trzeciej.
| Rejestrowane | Skąd pochodzi | Wymaga zgody |
|---|---|---|
| Data i godzina, żądana strona, metoda i protokół HTTP | Żądanie | Nie |
| Twój adres IP i jego solony skrót | Połączenie | Nie |
| Przybliżona lokalizacja: kraj, region, miasto, obszar kodu pocztowego, strefa czasowa i współrzędne tego miasta – nie Twoje | Adres IP, sprawdzany przez ip-api.com | Nie |
| Twoja sieć: dostawca internetu, organizacja, numer AS oraz to, czy adres należy do znanej sieci VPN, centrum danych lub sieci komórkowej | To samo sprawdzenie | Nie |
| Przeglądarka i jej wersja, system operacyjny i jego wersja, typ urządzenia oraz to, czy żądanie wygląda na pochodzące od bota | Nagłówek User-Agent | Nie |
Która strona Cię tu skierowała i ewentualne tagi kampanii w linku (utm_source i podobne) | Nagłówek Referer i adres URL | Nie |
| Preferowane języki | Nagłówek Accept-Language | Nie |
| Który plik pobrałeś, jego wersja, ile bajtów wysłano i czy transfer się zakończył | Samo pobranie | Nie |
| Rozmiar ekranu i okna, współczynnik pikseli, głębia kolorów | Twoja przeglądarka, przez skrypt tej strony | Tak |
| Liczba rdzeni procesora i przybliżona pamięć urządzenia | Ten sam skrypt | Tak |
| Strefa czasowa, lista języków, preferencja trybu ciemnego, obsługa dotyku, platforma | Ten sam skrypt | Tak |
| Typ połączenia, szacowana prędkość pobierania i czas podróży w obie strony | Ten sam skrypt | Tak |
| Jak długo strona była widoczna, jak daleko ją przewinięto, ile było kliknięć i które przyciski naciśnięto | Ten sam skrypt | Tak |
Czego celowo się nie robi
- Żadnego fingerprintingu przeglądarki: żadnego sondowania canvas, audio, czcionek ani WebGL i niczego, co próbuje ponownie Cię zidentyfikować po odmowie.
- Żadnych trackerów stron trzecich, pikseli reklamowych, widżetów społecznościowych ani usług analitycznych. Nic na tej stronie nie jest ładowane z innej domeny.
- Żadnych prób odczytania Twojego schowka, baterii, kamery, mikrofonu, zapisanych haseł ani historii przeglądania – strona do pobierania nie ma z nimi nic wspólnego.
- Twoje dane nie są sprzedawane, wynajmowane ani udostępniane nikomu. Jedyne wychodzące żądanie, jakie serwer wykonuje w związku z Tobą, to opisane wyżej sprawdzenie lokalizacji na podstawie IP.
Projekty interfejsu, które publikujesz
Ta strona może przechowywać projekt interfejsu FoxSDR — pakiet .foxui — który zdecydujesz się opublikować. Nic nie jest wysyłane, dopóki nie naciśniesz Publish, a trafia to do POST /api/gui/publish. Przechowywane jest to, co zawiera pakiet: sam projekt, wpisane przez Ciebie nazwa, wersja i opis, nazwisko autora, jeśli je wpisałeś, czas publikacji i losowy identyfikator. Twój adres IP służy wyłącznie do utrzymania rozsądnego tempa publikowania i nigdy nie jest zapisywany na dysku. Opublikowany pakiet nie jest nigdzie wymieniony; każdy, kto ma jego link, może go pobrać. Jest przechowywany, dopóki nie zostanie usunięty z panelu administracyjnego lub dopóki o to nie poprosisz — napisz na adres poniżej i podaj jego link.
Jeśli zapiszesz się jako betatester
Formularz beta i zapis na wiadomości to jedyne miejsca, w których ta strona o cokolwiek Cię prosi, poza publikowaniem projektu interfejsu (zob. wyżej). Wysłanie go zapisuje Twój adres e-mail oraz to, co zdecydowałeś się podać z poniższych: imię lub znak wywoławczy, platformę, radio, którego zamierzasz używać, Twoje uwagi i listę funkcji, które zgłosiłeś się przetestować. Razem z nimi przechowujemy ten sam kontekst wizyty co opisany wyżej – przybliżoną lokalizację, sieć, przeglądarkę i system operacyjny – bo zgłoszenie błędu czyta się zupełnie inaczej w zależności od konfiguracji, z której przyszło.
- Adres służy do jednej rzeczy: kontaktu z Tobą w sprawie kompilacji beta i tego, co przetestować. Żadnego newslettera, żadnego marketingu i nigdy nie jest przekazywany nikomu innemu.
- Nic się nie dzieje, dopóki nie potwierdzisz. Zapis powoduje wysłanie jednego e-maila z sześciocyfrowym kodem, który wpisujesz na stronie, aby potwierdzić, że adres należy do Ciebie. Kod działa przez 30 minut i jest odrzucany po pięciu błędnych próbach. Dopóki nie zostanie wpisany, wpis jest nieaktywny: nie jesteś na liście testerów, nie jesteś liczony i nic więcej nigdy nie zostanie wysłane. Jeśli ktoś inny wpisał Twój adres, zignoruj ten e-mail, a wpis nigdy nie stanie się rzeczywisty – nie ma się z czego wypisywać i nie musisz nic robić. Ta jedna wiadomość to jedyna automatyczna poczta, jaką może wygenerować zapis.
- Jeśli do nas napisałeś, możemy Cię zaprosić. Ktoś, kto do nas napisał i zostawił adres – na przykład przez okienko propozycji w aplikacji – może otrzymać od nas jedno osobiste zaproszenie z jednorazowym linkiem, który otwiera klawisz Potwierdź na tej stronie. Takie zaproszenie jest przechowywane jako oczekujący wpis, dokładnie tak jak niepotwierdzony zapis: nie jesteś testerem i nie jesteś liczony, dopóki nie naciśniesz Potwierdź, a jeśli je zignorujesz, nie napiszemy do Ciebie ponownie. Oczekujący wpis nie wygasa sam; jest usuwany, gdy usuniemy go z listy albo gdy o to poprosisz, jednym e-mailem na adres poniżej.
- Po potwierdzeniu dostajesz swój prywatny link do zarządzania, a my piszemy, gdy pojawi się kompilacja, która potrzebuje tego, co zaoferowałeś przetestować. To pisze do Ciebie człowiek, a nie lista mailingowa. Jeśli zgubisz link, możemy wystawić nowy: stary od razu przestaje działać, nowy wysyłamy Ci e-mailem, a zapisujemy, kiedy to zrobiono i czy e-mail został wysłany.
- Ten e-mail przechodzi przez Apple. Pocztę dla
foxsdr.comobsługuje usługa iCloud Mail firmy Apple, więc Twój adres i wiadomość przechodzą przez jej serwery w drodze do Ciebie, na warunkach Apple jako naszego dostawcy poczty. Nic więcej o Tobie nie jest im przekazywane. - Jest przechowywany oddzielnie od analityki. Zapisy znajdują się we własnym pliku, do odczytu wyłącznie przez konto, na którym działa serwer; log analityczny zapisuje, że nastąpił jakiś zapis i ile funkcji wybrano, nigdy kto. Automatyczny test przerywa kompilację, jeśli adres kiedykolwiek trafi do logu analitycznego.
- Ponowny zapis z adresem, który już jest na liście, nie zmienia tego wpisu. Zmian dokonuje się na Twojej własnej stronie testera. Zamiast tego na adres wysyłany jest jeden e-mail: jego prywatny link, jeśli adres jest potwierdzony, albo nowy kod, jeśli nie jest, i nigdy częściej niż raz na 15 minut.
- Przechowujemy kopię tego, co Ci wysłaliśmy. Każda wiadomość, którą ta strona wysyła testerowi – potwierdzenie i każda wiadomość o kompilacji – jest przechowywana wraz z treścią, abyśmy mogli sprawdzić, co zostało powiedziane i czy dotarło. Kopia jest przypisana do Twojego wewnętrznego identyfikatora, a nie do adresu, a jej części osobiste (kod lub link potwierdzający oraz Twój własny link do zarządzania) są usuwane przed zapisaniem, więc przechowywanej wiadomości nigdy nie można użyć, by działać w Twoim imieniu. Kopie te są usuwane razem z resztą Twojego wpisu, gdy odchodzisz.
- Wiadomości między Tobą a nami są przechowywane. Pole Wiadomości w Twoim portalu testera to rozmowa z osobą, która tworzy FoxSDR: to, co do Ciebie piszemy, i to, co odpisujesz, każda wiadomość z godziną jej napisania oraz – jeśli go wybrano – raportem, którego dotyczy. Jest zapisana pod Twoim wewnętrznym identyfikatorem, nie pod adresem, a czytać ją możesz tylko Ty (dzięki swojemu prywatnemu linkowi) i my. Zapisujemy też, kiedy nasze wiadomości były na Twoim ekranie, żeby wiedzieć, że do Ciebie dotarły. Dopóki Twoja strona jest otwarta, co kilka sekund pyta o nowe wiadomości, więc pojawiają się one od razu po napisaniu, i podaje, ile czasu minęło od jej ostatniego użycia; dopóki pyta, i jeszcze przez pół minuty potem, i tylko jeśli była używana w ciągu ostatnich pięciu minut, serwer wie, że jesteś na stronie. Jest to trzymane tylko w jego pamięci i nigdy nigdzie nie zapisywane. Nie wysyłamy e-maila przy każdej wiadomości: gdy piszemy, kiedy Cię nie ma, dostajesz jeden krótki e-mail, że czeka na Ciebie wiadomość, z Twoim linkiem i bez samej wiadomości. Dopóki ta wiadomość jest nieprzeczytana, przez maksymalnie 12 godzin nie przychodzi kolejny taki e-mail ani w ciągu pół godziny od poprzedniego; a jeśli strona była u Ciebie otwarta, gdy pisaliśmy, ale dziesięć minut później wiadomość wciąż nie została przez Ciebie zobaczona, e-mail wychodzi wtedy. Kopia tego e-maila jest przechowywana tak, jak opisano wyżej; gdy piszesz Ty, żaden e-mail nie jest wysyłany. Rozmowa jest przechowywana, dopóki nie odejdziesz albo nie poprosisz nas o jej usunięcie, a odejście usuwa ją w całości.
- Przechowywane do końca programu beta albo do Twojej prośby. Jeden e-mail na adres poniżej usuwa Cię z listy i kasuje wpis – nie musisz podawać powodu.
- Podstawą prawną jest tutaj Twoja zgoda, wyrażona przez zaznaczenie pola; formularza nie da się wysłać bez niej.
Jeśli zapiszesz się na wiadomości e-mailem
Strona wiadomości prosi o jedno: Twój adres e-mail. Jest przechowywany, abyśmy mogli napisać do Ciebie, gdy pojawi się nowa wersja FoxSDR, a od czasu do czasu o tym, co powstaje. Nie jest używany do niczego innego i nigdy nie jest nikomu przekazywany.
- Nic się nie dzieje, dopóki nie potwierdzisz. Zapis powoduje wysłanie jednego e-maila z sześciocyfrowym kodem do wpisania na stronie. Dopóki nie zostanie wpisany, nic więcej nie jest wysyłane, a adres, który nie zostanie potwierdzony w ciągu tygodnia, jest usuwany – przez kod uruchamiany na serwerze codziennie. Jeśli ktoś inny wpisał Twój adres, zignoruj ten e-mail.
- Każdy e-mail zawiera link, który usuwa Cię z listy jednym kliknięciem. Wypisanie się usuwa adres z pliku na serwerze, razem z przechowywanymi przez nas kopiami tego, co na niego wysłano; nic o nim nie zostaje.
- To osobna lista. Subskrybent wiadomości nie jest betatesterem: adres jest przechowywany w osobnym pliku, do odczytu wyłącznie przez konto, na którym działa serwer, i nie jest liczony ani pokazywany jako tester. Jeśli jesteś również testerem, każdą wiadomość dostajesz raz.
- Przechowujemy kopię tego, co Ci wysłaliśmy, przypisaną do wewnętrznego identyfikatora, a nie do Twojego adresu, z usuniętym kodem potwierdzającym i linkiem do wypisania się, dokładnie tak jak w przypadku testerów.
- Ten e-mail przechodzi przez Apple, jak opisano powyżej w części o testerach.
- Log analityczny zapisuje, że nastąpił jakiś zapis, nigdy kto się zapisał.
- Podstawą prawną jest Twoja zgoda, wyrażona przez zaznaczenie pola; formularza nie da się wysłać bez niej.
Ciasteczka
| Ciasteczko | Cel | Ważność |
|---|---|---|
fox_consent | Zapamiętuje, czy zaakceptowałeś, czy odmówiłeś, abyś był pytany tylko raz | 1 rok (akceptacja) / 6 mies. (odmowa) |
fox_vid | Losowy identyfikator, dzięki któremu powrót na stronę jest rozpoznawany jako ta sama przeglądarka. Ustawiane tylko po akceptacji. | 400 dni |
fox_sid | Grupuje jedną wizytę w sesję. Ustawiane tylko po akceptacji. | 30 min bezczynności |
fox_beta | Przechowuje Twój link betatestera, abyś mógł wrócić do swojego wpisu. Ustawiane tylko wtedy, gdy zapiszesz się jako tester, i tylko dlatego, że o to właśnie prosiłeś – niczego nie mierzy, więc nie jest częścią powyższego wyboru dotyczącego analityki. Usunięcie się z listy je kasuje. | 400 dni |
foxsdr_lang | Zapamiętuje język wybrany dla tej strony, aby następna strona też była w nim wyświetlana. Ustawiane tylko wtedy, gdy sam wybierzesz język – selektorem języka albo linkiem zawierającym ?lang= – i przechowuje wyłącznie kod tego języka, na przykład es. Niczego nie mierzy, więc nie jest częścią powyższego wyboru dotyczącego analityki. | 1 rok |
fox_news_joined | To nie ciasteczko: znacznik we własnej pamięci Twojej przeglądarki, nigdy do nas niewysyłany. Po pobraniu strona pyta, czy chcesz otrzymywać wiadomości e-mailem; gdy już się zapiszesz i potwierdzisz z tej przeglądarki, przestaje pytać. Przechowuje wyłącznie 1 i tylko wtedy, gdy się zapisałeś. | Do czasu wyczyszczenia danych tej strony |
Jeśli odmówisz, żadne identyfikujące ciasteczko nie jest ustawiane. Wizyty są wtedy grupowane według codziennie zmienianego skrótu Twojego adresu i przeglądarki, który odróżnia odwiedzających na potrzeby liczenia i nie nadaje się do śledzenia Cię między dniami ani między stronami. Możesz zmienić zdanie, usuwając ciasteczka tej strony i odświeżając ją.
Jaki język widzisz
Strony mogą być wyświetlane w językach innych niż angielski. O tym, który dostaniesz, serwer decyduje dla każdej żądanej strony, w tej kolejności: język, który sam wybrałeś (ciasteczko foxsdr_lang powyżej lub ?lang= w linku); w przeciwnym razie języki, które Twoja przeglądarka podaje jako preferowane, z jej nagłówka Accept-Language; w przeciwnym razie główny język kraju, z którego pochodzi Twoje połączenie, który Cloudflare – sieć stojąca przed tą stroną – przekazuje wraz z żądaniem jako dwuliterowy kod kraju (CF-IPCountry); w przeciwnym razie angielski. Nic nie jest zapisywane w celu dokonania tego wyboru: nagłówek i kod kraju są odczytywane na potrzeby tej jednej odpowiedzi i nie są w tym celu przechowywane. To te same dwie rzeczy, które powyższa tabela już wymienia jako rejestrowane przy każdej odsłonie strony, gdzie kod kraju jest używany, gdy nasze własne sprawdzenie adresu nie daje odpowiedzi. Tłumaczenia są wykonywane maszynowo, a w przypadku tej informacji i licencji wiążący jest tekst angielski.
Dlaczego i na jakiej podstawie
Cel jest wąski: wiedzieć, ile osób znajduje ten projekt, mniej więcej gdzie są, na czym go uruchamiają i ile z nich go pobiera. To decyduje o tym, czy praca będzie kontynuowana i co powstanie w następnej kolejności.
Rekordy po stronie serwera są przechowywane na podstawie prawnie uzasadnionego interesu polegającego na zrozumieniu i zabezpieczeniu strony. Szczegóły przekazywane przez przeglądarkę i identyfikujące ciasteczka są przechowywane na podstawie Twojej zgody, dlatego znajdują się za banerem i dlatego odmowa nic Cię na tej stronie nie kosztuje.
Jak długo są przechowywane i kto je widzi
Rekordy są przechowywane przez 24 miesięcy, a następnie usuwane. Znajdują się w pliku na serwerze, za chronionym hasłem panelem, który może otworzyć wyłącznie opiekun projektu. Nie ma innych odbiorców ani przekazywania do państwa trzeciego poza opisanym już sprawdzeniem IP.
Dwie rzeczy są przechowywane krócej. Raporty o awariach i zawieszeniach są usuwane 90 dni po ostatnim wystąpieniu opisywanego błędu, a raporty użycia przetwarzane przez Cloudflare są usuwane po trzech miesiącach. Każdego z tych okresów pilnuje kod uruchamiany na serwerze codziennie, a nie czyjaś pamięć.
Twoje prawa
Jeśli jesteś w Wielkiej Brytanii lub UE, możesz poprosić o kopię przechowywanych o Tobie danych, o ich sprostowanie lub usunięcie albo sprzeciwić się ich zbieraniu w ogóle – w tym rekordów po stronie serwera, które nie zależą od zgody. Praktycznym identyfikatorem pozwalającym odnaleźć Twoje rekordy jest Twój adres IP w chwili wizyty, więc podaj go, proszę, wraz z przybliżonym czasem wizyty.
W przypadku aplikacji ustawienia są w samym oprogramowaniu, a są trzy:
- SYSTEM → Raporty użycia zatrzymuje raport użycia i sygnał wysyłany co pięć minut oraz usuwa identyfikator instalacji. Włącz to później ponownie, a dostaniesz nowy identyfikator, którego nie da się powiązać ze starym.
- SYSTEM → Diagnostyka zatrzymuje zapisywanie i wysyłanie raportów o awariach i zawieszeniach.
- SYSTEM → Aktualizacje zatrzymuje sprawdzanie aktualizacji.
Raporty nie zawierają niczego, co można z Tobą powiązać, więc nie ma czego udostępniać na żądanie; jeśli chcesz, aby identyfikator instalacji został usunięty z już wysłanych raportów, napisz na adres poniżej i podaj go, a zostanie usunięty.
Dzieci. FoxSDR to techniczny instrument dla radiowych hobbystów. Nie jest skierowany do dzieci, nie zbiera od nikogo danych osobowych, a zatem nie zbiera ich także od dzieci.
Napisz na [email protected]. Możesz też złożyć skargę do brytyjskiego Information Commissioner's Office (ico.org.uk), jeśli uważasz, że sprawa została źle załatwiona.
Ostatnia aktualizacja: 24 września 2026, dla FoxSDR 0.99.39 – kompilacji, którą ta strona obecnie oferuje i z której kodem źródłowym porównano każde powyższe stwierdzenie. FoxSDR publikuje Steven Fox; pisz na powyższy adres z każdym pytaniem dotyczącym tej informacji albo w celu usunięcia identyfikatora instalacji z już wysłanych raportów. Jeśli ta informacja kiedykolwiek przestanie odpowiadać temu, co robi oprogramowanie, to oprogramowanie jest w błędzie – zbieranie danych przez stronę jest zaimplementowane w store.go i app.js, oba czytelne we własnym kodzie źródłowym strony, a własna lista aplikacji jest z nią dostarczana jako PRIVACY.md, z testem pilnującym zgodności zawartości raportu.