NoctisNode
← BlogBezpieczeństwo2026-10-237 min

Czym jest warrant canary i jak go zweryfikować przez GPG

Warrant canary to podpisane, regularnie odnawiane oświadczenie, że nie otrzymano tajnych żądań prawnych. Poznaj jego ograniczenia i dowiedz się, jak zweryfikować canary.txt przez GPG.

Krótko: warrant canary to regularnie odnawiane, podpisane oświadczenie, w którym usługa stwierdza, że nie otrzymała określonych tajnych żądań prawnych, takich jak wezwania objęte zakazem ujawniania (gag order) czy national security letters. Jeśli oświadczenie przestaje być odnawiane albo zmienia się jego treść, czytelnicy traktują to milczenie jako ostrzeżenie. Weryfikujesz je, sprawdzając podpis PGP z odciskiem klucza wydawcy i potwierdzając, że data podpisu jest niedawna.

Ten artykuł omawia prawną ideę stojącą za canary, ich realne ograniczenia, to, co powinien zawierać dobry canary, oraz weryfikację krok po kroku przez GPG na przykładzie canary NoctisNode.

Jak działa warrant canary

Nazwa pochodzi od kanarków, które górnicy zabierali niegdyś pod ziemię: dopóki ptak żył, powietrze było bezpieczne. Warrant canary działa tak samo. Usługa publikuje datowane oświadczenie, np. „nie otrzymaliśmy żadnych tajnych nakazów sądowych ani zakazów ujawniania”, i odnawia je według stałego harmonogramu.

Idea prawna, która narodziła się głównie w Stanach Zjednoczonych, opiera się na rozróżnieniu: władze mogą zakazać firmie ujawnienia, że otrzymała tajny nakaz, ale zmuszenie firmy do opublikowania fałszywego oświadczenia to inne i trudniejsze żądanie. Jeśli firma po prostu przestanie odnawiać canary, niczego nie ujawniła, a mimo to czytelnicy mogą wyciągnąć własne wnioski z jego braku.

Ograniczenia warrant canary

Canary to użyteczny sygnał, a nie gwarancja. Pamiętaj o tych ograniczeniach, zanim zaczniesz na nim polegać.

  • ▹Teoria prawna jest w dużej mierze niesprawdzona w sądach, a odpowiedź może różnić się między krajami.
  • ▹Obejmuje tylko to, co wprost wymienia. Canary dotyczący tajnych nakazów nic nie mówi o zwykłych, jawnych żądaniach prawnych.
  • ▹Przerwa jest niejednoznaczna: może oznaczać żądanie prawne albo po prostu to, że osoba odpowiedzialna była nieobecna lub popełniła błąd.
  • ▹Nie powie Ci, czego żądano, kiedy ani których klientów to dotyczyło.
  • ▹Nic nie mówi o tym, jakie dane istnieją. Łącz go z jasną polityką logowania; zobacz [VPS bez logów — wyjaśnienie](/blog/no-logs-vps-explained).
  • ▹Jest tak wiarygodny jak klucz podpisujący i ludzie, którzy go przechowują.

Co zawiera dobry warrant canary

ElementDlaczego to ważne
Data wydaniaPozwala jednym spojrzeniem ocenić aktualność
Harmonogram odnawianiaOkreśla, kiedy brak aktualizacji zaczyna coś znaczyć
Jawna lista oświadczeńCzytelnicy widzą dokładnie, jakie żądania są objęte
Zasada, co oznacza przerwaEliminuje zgadywanie, np. „traktuj to jako sygnał po N dniach”
Podpis PGP z opublikowanego kluczaDowodzi, że tekst pochodzi od operatora i nie został zmieniony
Pełny odcisk klucza opublikowany osobnoPozwala sprawdzić, że zaimportowałeś właściwy klucz
Stały URLUłatwia monitorowanie i archiwizację canary

Warrant canary NoctisNode

NoctisNode publikuje podpisany PGP tekstowy canary pod `/canary.txt`, z publicznym kluczem podpisującym pod `/canary-pubkey.asc` i wyjaśnieniem na stronie warrant canary. Canary jest odnawiany ręcznie co miesiąc. Jeśli nie został odnowiony przez ponad 35 dni, traktuj to jako sygnał.

Odcisk klucza podpisującego to `3804 DA83 956F B4C1 1D87 36C3 129C E677 8F20 92E9`. Zawsze porównuj pełny odcisk, nigdy tylko ostatnie 8 lub 16 znaków.

Jak krok po kroku zweryfikować warrant canary

Te polecenia działają w Debianie 12/13 i Ubuntu 24.04. Jeśli brakuje narzędzi, najpierw zainstaluj je przez `sudo apt install gnupg curl`. Dla większej prywatności możesz pobrać pliki przez Tor poleceniem `torsocks curl` po zainstalowaniu pakietów `tor` i `torsocks`.

  1. 01.Porównaj odcisk wypisany w krokach 2 i 4 z tym opublikowanym na stronie canary i w tym artykule. Jeśli różni się choć jeden znak, przerwij: masz zły klucz.
  2. 02.W wyniku `gpg --verify` szukaj `Good signature from`. Linia `BAD signature` oznacza, że tekst został zmieniony lub plik jest uszkodzony, więc mu nie ufaj.
  3. 03.Linia `WARNING: This key is not certified with a trusted signature!` jest normalna, jeśli sam nie podpisałeś klucza. Zaufanie ustanawia sprawdzenie odcisku z kroku 1.
  4. 04.Sprawdź datę `Signature made` i datę zapisaną w treści canary. Obie powinny być niedawne.
  5. 05.Jeśli podpis ma więcej niż 35 dni, traktuj to jako sygnał i przeczytaj stronę canary pod kątem ewentualnych komunikatów.
# 1. Download the canary and the public key
curl -fsSLO https://noctisnode.com/canary.txt
curl -fsSLO https://noctisnode.com/canary-pubkey.asc

# 2. Inspect the key without importing it
gpg --show-keys --with-fingerprint canary-pubkey.asc

# 3. Import the key
gpg --import canary-pubkey.asc

# 4. Confirm the fingerprint of the imported key
gpg --fingerprint 3804DA83956FB4C11D8736C3129CE6778F2092E9

# 5. Verify the signature on the canary
gpg --verify canary.txt

Automatyzacja sprawdzania 35 dni

Jeśli monitorujesz canary z serwera lub przez zadanie cron, używaj maszynowo czytelnego wyjścia statusu GPG zamiast parsować tekst dla ludzi. Poniższy skrypt kończy się błędem, jeśli podpisu brakuje, pochodzi z innego klucza lub jest starszy niż 35 dni. Uruchom go w katalogu zawierającym świeżo pobrany `canary.txt`.

#!/bin/sh
FPR=3804DA83956FB4C11D8736C3129CE6778F2092E9
line=$(gpg --status-fd 1 --verify canary.txt 2>/dev/null | grep ' VALIDSIG ')
case "$line" in
  *"$FPR"*) ;;
  *) echo "FAIL: no valid signature from $FPR"; exit 1 ;;
esac
ts=$(echo "$line" | awk '{print $5}')
age=$(( ( $(date +%s) - ts ) / 86400 ))
echo "Canary signature is $age days old"
[ "$age" -le 35 ] || { echo "WARNING: older than 35 days"; exit 2; }

Note · Przerwa to sygnał do zbadania sprawy, a nie dowód żądania prawnego. Sprawdź stronę canary i komunikaty operatora, a do porównań trzymaj własne zarchiwizowane kopie poprzednich canary.

FAQ

QCzym jest warrant canary?

AWarrant canary to regularnie odnawiane, podpisane oświadczenie, że usługa nie otrzymała określonych tajnych żądań prawnych. Jeśli przestaje być odnawiane, czytelnicy traktują to milczenie jako sygnał ostrzegawczy.

QCzym jest canary.txt?

A`canary.txt` to popularna nazwa pliku dla tekstowego warrant canary, zwykle podpisanego PGP, aby każdy mógł sprawdzić, kto go wydał. NoctisNode publikuje swój canary pod `/canary.txt`, a klucz pod `/canary-pubkey.asc`.

QJak zweryfikować warrant canary?

AZaimportuj klucz publiczny wydawcy przez `gpg --import`, potwierdź, że pełny odcisk zgadza się z opublikowanym, a następnie uruchom `gpg --verify canary.txt` i sprawdź, czy podpis jest poprawny i ma niedawną datę.

QCzy warrant canary jest prawnie wiążący lub gwarantuje skuteczność?

ANie. Teoria prawna jest w dużej mierze niesprawdzona w sądach i różni się w zależności od kraju, a przerwę może też spowodować zwykły błąd operacyjny. Traktuj canary jako jeden z kilku sygnałów.

QCo zrobić, jeśli warrant canary nie został zaktualizowany?

ASprawdź stronę canary wydawcy i jego komunikaty, porównaj z zarchiwizowanymi kopiami i zdecyduj, czy przenieść wrażliwe dane. W przypadku NoctisNode canary nieodnowiony przez ponad 35 dni należy traktować jako sygnał.

Czym jest warrant canary i jak go zweryfikować przez GPG · NoctisNode