Azterlanak / S5
Nork argitaratzen ditu egiaztapenak PyPI eta npm biltegietan —eta nork utzi dio?
Laburpena
PEP 740 egiaztapenei (attestations) esker, edonork egiazta dezake PyPI fitxategi bat biltegi eta lan-fluxu (workflow) jakin batek sortu duela. Egiaztapenik ez argitaratzea da ohikoa. Hau neurtu genuen 2026ko urriaren 2an:
- PyPI biltegian gehien deskargatutako 15.000 proiektuen igoera-historia osoa (hugovk-en zerrenda, 2026ko urriaren 1ekoa);
- egiaztapenak dituen proiektu bakoitzaren argitaratzailearen identitatea (PyPI Integrity API);
- npm-ko 1.500 paketeko lagin bat.
Aztertu ahal izan genituen 14.995 proiektuetatik, 11.336k (%75,6) ez dute inoiz egiaztapena duen fitxategirik igo.
Hedapena. 14.995 proiektuetatik 3.479k dute azken bertsioa egiaztatuta (%23,2), eta azken bertsioa 2024ko urriaren 1aren ondoren lehen aldiz igo zutenen %31,1ek. Sailkapen-tarteen arabera:
| sailkapeneko postua | azken bertsioa egiaztatuta |
|---|---|
| 1–100 | %59,0 |
| 10.001–15.000 | %20,3 |
Azken bertsioa egiaztatuta duten proiektuak %4,0tik (2024ko azaroaren amaiera) %23,2ra (2026ko irailaren amaiera) igo ziren. Trail of Bits-en Are we PEP 740 yet? tresnarekin bat gatoz haren 360 paketeetatik 359tan.
Utzi dioten proiektuak. 148 proiektuk egiaztapena zuen fitxategi bat igo zuten, eta geroago egiaztapenik gabeko bertsio bat argitaratu zuten. Horietatik 138tan, pip tresnak instalatzen duen bertsio-lerroak egiaztapenak zituen, eta haren azken bertsioak ez du bat ere: inoiz egiaztapenak argitaratu dituzten 3.659 proiektuen %3,8 dira. Kausaren arabera:
| kausa | proiektuak |
|---|---|
| tresna- edo lan-fluxu-aldaketa | 96 |
| argitalpen isolatu bakarra | 15 |
| azken argitalpenaren ondoren berrezarria | 1 |
| ezezaguna | 26 |
Tresna- edo lan-fluxu-aldaketetatik 53tan, argitaratze-lan-fluxuak uv publish exekutatzen du orain, egiaztapen-urratsik gabe. Adibideak, bakoitza paper.md §5.3 atalean jasotako commit batek babestua: fastapi, typer, fastmcp eta supabase. Uztea argitaratze-tresnen aldaketa bat da, ez segurtasun-urraketa baten seinale.
Argitaratzaile-aldaketak. Egiaztapenak dituzten gutxienez 307 proiektuk aldatu dute argitaratzailea. Biltegia edo argitaratzaile mota aldatu den 188 aldaketetatik:
- 160 datu publikoek berresten dituzte;
- 16 bat datoz proiektuaren beraren metadatuekin;
- 12, 5 proiektutan, ez daude berretsita.
npm. 1.000 pakete nagusien %30,8k jatorri-datuak (provenance) argitaratzen dituzte; inoiz hala egin zuten 459 paketeetatik 4k (%0,9) utzi diote.
Aurreko lanak. Dagoen neurketarik hurbilena Trail of Bits-en jarraipen-tresna da, PyPI biltegiko 360 pakete nagusiak haien azken argitalpenaren arabera aztertzen dituena. Azterlan honek honako hauek gehitzen ditu: 360 pakete horietatik haragoko banaketa, historia, uzteak eta haien kausak, eta argitaratzaileen auditoria (paper.md §2).
Automatizazioa eta berrikuspena. AA agenteek egin zuten azterlana eta idatzi zuten testua. AA berrikusle independente batek egiaztatu zuen (paper.md §4.1).
Aipatu azterlan hau
EasyxLab (2026). Who publishes attestations on PyPI and npm — and who stopped? Study S5. EasyByte Hub S. Coop. Mad. https://github.com/easybytehub/easyxlab/tree/main/studies/s5-pypi-attestations@techreport{easyxlab_s5,
title = {Who publishes attestations on PyPI and npm — and who stopped?},
author = {{EasyxLab}},
institution = {EasyByte Hub S. Coop. Mad.},
number = {S5},
year = {2026},
url = {https://github.com/easybytehub/easyxlab/tree/main/studies/s5-pypi-attestations}
}