Ledger SDK domyślnie wysyła metadane podpisu do serwerów firmy
Najważniejsze informacje
- •Moduł kontekstowy Ledgera w wersji 1.16.0, datowany na 14 kwietnia, dodał domyślnego reportera blind-signing, który przesyła metadane podpisu na serwery Ledgera, chyba że integrujący deweloper portfela dostarczy zamiennik.
- •Raporty mogą zawierać identyfikator zdarzenia podpisu, metodę podpisu, ID łańcucha, adres docelowy, status blind-signing, model urządzenia i wersje oprogramowania, ale nie zawierają kluczy prywatnych, fraz odzyskiwania ani podpisów kryptograficznych.
- •Ledger zmienił miejsce docelowe raportowania z testowego adresu ingestacyjnego na produkcyjny endpoint blind-signing, https://blind-signing.api.ledger.com/ingest, w wersji 2.1.0.
- •Deweloper Ambire powiedział, że żadna dotknięta wersja nie trafiła do produkcyjnej aplikacji portfela, która jest dystrybuowana z domyślnie wyłączonym raportowaniem i oferuje przełącznik opt-in w ustawieniach prywatności.
- •Ekspozycja użytkowników zależy od tego, jak ich portfel integruje SDK, ponieważ decyzja o zachowaniu lub zastąpieniu domyślnego reportera zapada w kodzie aplikacji, a nie w ustawieniach urządzenia.

Oprogramowanie integracyjne portfeli Ledger zawiera domyślną usługę raportowania, która przesyła metadane podpisu na serwery firmy — takie zachowanie wskazał 10 listopada deweloper Ambire @0xSuperKalo. Publiczny kod źródłowy Ledgera pokazuje, że raporty mogą zawierać sieć, adres docelowy, model urządzenia, wersje oprogramowania oraz informację, czy podpis był wykonywany w trybie blind.
Mechanizm znajduje się w oprogramowaniu, którego aplikacje portfeli używają do komunikacji ze sprzętem Ledger. Portfele sprzętowe przechowują klucze prywatne odizolowane na urządzeniu, a aplikacje portfeli komunikują się z nimi za pośrednictwem tych wielokrotnego użytku zestawów narzędzi programistycznych — co oznacza, że ustawienie domyślne w SDK obowiązuje wszędzie tam, gdzie jest ono używane. Implementacja w wersji 1.16.0 instaluje sieciowy reporter, chyba że integrujący deweloper dostarczy własny zamiennik. Ekspozycja użytkowników zależy więc od tego, jak ich portfel integruje SDK, a nie wyłącznie od aktualizacji firmware'u.
Deweloper Ambire powiedział, że żadna dotknięta wersja nie trafiła do produkcyjnej aplikacji Ambire oraz że portfel jest dystrybuowany z domyślnie wyłączonym raportowaniem, oferując przełącznik opt-in w ustawieniach prywatności. „Uważałbym, że prywatność powinna być domyślna” — napisał deweloper.
Co zawierają raporty
Rekord wydania Ledgera datuje moduł kontekstowy 1.16.0 na 14 kwietnia i opisuje dodanie do modułu reportera blind-signing. Towarzyszący kod podpisywania Ethereum tworzy raporty dla transakcji i podpisywania danych strukturyzowanych (typed-data), w tym gdy operacja jest klasyfikowana jako niebędąca blind signing.
Kod tworzący raport dostarcza wygenerowany identyfikator zdarzenia podpisu, metodę podpisu, ID łańcucha, adres docelowy, status blind-signing wraz z przyczyną, model urządzenia oraz — jeśli są dostępne — wersje aplikacji podpisującej i firmware'u. Zawiera również typ clear-signing oraz liczbę błędów kontekstu, gdy te informacje są dostępne. Clear signing oznacza prezentowanie szczegółów transakcji w czytelnej formie przed zatwierdzeniem; blind signing jest jego przeciwieństwem — zatwierdzeniem danych, których urządzenie nie może wyświetlić w czytelnej formie. Adresy docelowe są pseudonimowe na publicznych blockchainach, ale każdy raport łączy adres docelowy z metodą podpisu, modelem urządzenia i wersjami oprogramowania w jednym ładunku przesyłanym na serwery Ledgera.
Implementacja HTTP dodaje etykietę źródła aplikacji i wysyła raport z nagłówkami identyfikującymi wersję modułu kontekstowego oraz token pochodzenia integracji. Kreator raportów nie zawiera kluczy prywatnych, frazy odzyskiwania ani samego podpisu kryptograficznego — co klasyfikuje opisane zachowanie jako zbieranie metadanych, a nie przechowywanie kluczy.
Miejsce docelowe raportowania zmieniało się w czasie. Wersja 1.16.0 konfigurowała testowy adres ingestacyjny, a późniejszy changelog Ledgera odnotowuje przełączenie na produkcyjny endpoint blind-signing w wersji 2.1.0. Obecny kreator kieruje reportera do
Dla deweloperów portfeli kreator udostępnia sposób zastąpienia domyślnego reportera. Deweloper Ambire mówi, że jego implementacja zapewni użytkownikom przełącznik w ustawieniach prywatności, z domyślnie wyłączonym wysyłaniem raportów. Dla użytkowników czynnikiem decydującym jest portfel, z którego korzystają: czy jego deweloperzy zachowali domyślnego reportera, czy go zastąpili — wybór dokonany w kodzie aplikacji, a nie w ustawieniach urządzenia. Skoro domyślny reporter od wersji 2.1.0 kieruje do produkcyjnego endpointu ingestacyjnego Ledgera, to konfiguracja modułu przez twórców portfeli będzie tym, na co warto zwracać uwagę.