Michał Górny on Nostr: Jakiś czas temu zaimplementowałem w #Gentoo wsparcie #SigStore, by móc ...
Jakiś czas temu zaimplementowałem w #Gentoo wsparcie #SigStore, by móc weryfikować nowe wydania CPythona. Dziś dowiedziałem się, że #PyPI również obsługuje takie "poświadczenia". Tylko jak je weryfikować?
https://blog.sigstore.dev/pypi-attestations-ga/
Ten post sugeruje, że na blogu PyPI znajdę "detale istotne dla użytkowników". No więc zajrzyjmy tam.
https://blog.pypi.org/posts/2024-11-14-pypi-now-supports-digital-attestations/
Tylko informacje o publikowaniu i przeglądaniu ich (a sposób wymieniony tam nie jest właściwą odpowiedzią na https://pol.social/@mgorny/114053976252968950), a nie weryfikacji. Szukamy dalej.
https://docs.pypi.org/attestations/
Tylko linki do kilku technicznych specyfikacji, nic przydatnego.
https://docs.pypi.org/attestations/consuming-attestations/
O, tu w końcu jest jakiś przykład. Sprawdźmy podlinkowany projekt.
https://pypi.org/project/pypi-attestations/
> [!WAŻNE] Ta biblioteka stanowi szczegół implementacji wewnątrz referencyjnej implementacji PEP 740. Większość użytkowników nie musi korzystać z niej bezpośrednio; więcej szczegółów w dokumentacji PyPI. [tłum. własne]
Tyle że ten link prowadzi do strony ze specyfikacjami! Jak jeszcze trochę pokopiemy, to możemy znaleźć API, które dostarcza nasze "poświadczenie":
https://docs.pypi.org/api/integrity/
No fajno, tylko co z nim zrobić? Przeskoczmy pół godziny wprzód, które zmarnowałem, próbując go użyć. Pokrótce rzecz biorąc, jedyne co pypi-attestations może zrobić jest pobranie interesującego nas pliku i danych "poświadczenia" *wprost z serwera*, i zweryfikowanie go. Więc trzeba używać dodatkowego narzędzia, które dodatkowo zawsze korzysta z Internetu.
A przynajmniej tak sądzę, bo nie brak wszędzie słów "eksperymentalne", a dokumentacja chyba już gorsza być nie może. No cóż, zgłosiłem prośbę o weryfikację w trybie offline, zobaczymy:
https://github.com/trailofbits/pypi-attestations/issues/95
#Python #bezpieczeństwo
https://blog.sigstore.dev/pypi-attestations-ga/
Ten post sugeruje, że na blogu PyPI znajdę "detale istotne dla użytkowników". No więc zajrzyjmy tam.
https://blog.pypi.org/posts/2024-11-14-pypi-now-supports-digital-attestations/
Tylko informacje o publikowaniu i przeglądaniu ich (a sposób wymieniony tam nie jest właściwą odpowiedzią na https://pol.social/@mgorny/114053976252968950), a nie weryfikacji. Szukamy dalej.
https://docs.pypi.org/attestations/
Tylko linki do kilku technicznych specyfikacji, nic przydatnego.
https://docs.pypi.org/attestations/consuming-attestations/
O, tu w końcu jest jakiś przykład. Sprawdźmy podlinkowany projekt.
https://pypi.org/project/pypi-attestations/
> [!WAŻNE] Ta biblioteka stanowi szczegół implementacji wewnątrz referencyjnej implementacji PEP 740. Większość użytkowników nie musi korzystać z niej bezpośrednio; więcej szczegółów w dokumentacji PyPI. [tłum. własne]
Tyle że ten link prowadzi do strony ze specyfikacjami! Jak jeszcze trochę pokopiemy, to możemy znaleźć API, które dostarcza nasze "poświadczenie":
https://docs.pypi.org/api/integrity/
No fajno, tylko co z nim zrobić? Przeskoczmy pół godziny wprzód, które zmarnowałem, próbując go użyć. Pokrótce rzecz biorąc, jedyne co pypi-attestations może zrobić jest pobranie interesującego nas pliku i danych "poświadczenia" *wprost z serwera*, i zweryfikowanie go. Więc trzeba używać dodatkowego narzędzia, które dodatkowo zawsze korzysta z Internetu.
A przynajmniej tak sądzę, bo nie brak wszędzie słów "eksperymentalne", a dokumentacja chyba już gorsza być nie może. No cóż, zgłosiłem prośbę o weryfikację w trybie offline, zobaczymy:
https://github.com/trailofbits/pypi-attestations/issues/95
#Python #bezpieczeństwo