Sprawdź podpisany raport

Ktoś przekazał Ci podpisany raport z naszego sprawdzenia obrazu. Oto co z niego wynika i jak zestawić go z plikiem.

Wklej raport albo otwórz jego plik. Podpis sprawdzamy tutaj, w Twojej przeglądarce, wobec kluczy publikowanych przez tę stronę. Możesz też dołożyć obraz, którego raport dotyczy — porównamy odcisk i przeprowadzimy całe sprawdzenie od nowa, więc obok zapisanego wyniku dostaniesz własny.

Raport zapisuje to, co nasza sprawdzarka zgłosiła w czyjejś przeglądarce. Qamera nigdy nie otrzymała pliku i nie potwierdziła wyniku — właśnie dlatego powtórzenie sprawdzenia ma znaczenie.

Plik z rozszerzeniem .jws albo jego treść wklejona powyżej.

Co podpisany raport ustala, a czego nie

Przypina jedną odpowiedź do jednego pliku, w jednym momencie, przy nazwanej wersji sprawdzarki i liście zaufania, w postaci, której nikt nie zmieni po fakcie. Nie ustala, że obejrzeliśmy plik: nigdy go nie otrzymaliśmy, a ustalenia to zgłoszenie z przeglądarki.

Klucze z czasem się rotuje, a każdy klucz, którego kiedykolwiek użyliśmy, pozostaje opublikowany. Raport podpisany wycofanym kluczem nadal się zgadza — raport, który traci ważność, nie byłby żadnym raportem.

Nie musisz korzystać z tej strony. Raport to standardowy JWS: każda biblioteka JOSE sprawdzi go bez połączenia z nami, wobec kluczy publikowanych pod: /.well-known/jwks.json

Nasze klucze podpisujące, wypisane tu celowo

To publiczne połówki wszystkich kluczy, którymi kiedykolwiek podpisywaliśmy raporty. Są też serwowane pod powyższym adresem, ale raport ma dać się sprawdzić po latach — a adres działa tylko dopóty, dopóki działa ta strona. Wypisane tutaj, jadą razem z tym, co zapiszesz albo zarchiwizujesz.

{
  "keys": [
    {
      "kty": "EC",
      "crv": "P-256",
      "x": "KePO_zGTvDsyern7fHCvCRr3XiLVdwTXMQpE140RCCw",
      "y": "m3UTes6FfCYXcimE7oDvcIz4rS4ebi2NslXt4qTTWO8",
      "kid": "ZCNbFBy3RRPmNjjYmGuy3tVMh2d-ec9We0vycTykDDI",
      "use": "sig",
      "alg": "ES256"
    }
  ]
}

Żeby sprawdzić raport samodzielnie: zdekoduj jego nagłówek, weź kid, znajdź pasujący klucz poniżej i zweryfikuj podpis ES256 nad dwoma pierwszymi segmentami. Odcisk w ładunku to zwykły SHA-256 pliku, więc odtworzysz go poleceniem sha256sum, certutil -hashfile albo Get-FileHash.