第九届年度软件供应链状态报告
1. 开源供应、需求与安全
-
开源供应的复苏:过去四年中,开源项目的年增长率稳定在15%,但相较于2019年的高点有所下降,这可能与COVID-19大流行期间的商业活动和业余时间变化有关。2023年,开源项目数量平均增长了29%,各生态系统均表现出强劲的增长态势。
-
开源消费减速:尽管开源供应增长,但下载量增长并未同步。2023年的下载增长率约为33%,与历史最高水平相比略有下降。大型生态系统如Maven和npm的下载量仍保持稳定增长,而其他生态系统如PyPI和NuGet则以较快的速度增长。
-
个体生态系统分析:
- Java (Maven):2023年前7个月,Maven Central Repository的请求量增长显著,达到5120亿个组件,同比增长25%。
- JavaScript (npm):npm作为最大的开源注册表,下载请求量超过2.6万亿个组件,年增长率18%。
- Python (PyPI):在AI和创新应用的推动下,PyPI的下载请求量增长至1780亿个,预计2023年将增长至2610亿个,同比增长31%。
- .NET (NuGet):NuGet继续为.NET用户提供服务,2022年下载量为1,130亿个,预计2023年将增长至1620亿个,同比增长43%。
2. 开源软件安全问题
结论
尽管开源软件供应持续增长,但开源消费的增长速度正在放缓,且软件供应链面临日益严峻的安全挑战。恶意软件包的激增和新型攻击策略凸显了加强开源安全措施的紧迫性。同时,AI和ML组件的采用显著增加,强调了在快速发展的技术领域提高安全性的必要性。未来,开源社区和企业需共同努力,提升软件供应链的成熟度和安全性,确保高效、成本效益和安全的软件开发。