PEP 815 – RECORD.jws 및 RECORD.p7s를 사용 중단으로 지정합니다
- Author:
- Konstantin Schütze <konstin at mailbox.org>, William Woodruff <william at yossarian.net>
- Sponsor:
- Emma Harper Smith <emma at python.org>
- PEP-Delegate:
- Paul Moore <p.f.moore at gmail.com>
- Discussions-To:
- Discourse thread
- Status:
- Final
- Type:
- Standards Track
- Topic:
- Packaging
- Created:
- 04-Dec-2025
- Post-History:
- 09-Jun-2025, 08-Dec-2025
- Resolution:
- 28-Jan-2026
번역·라이선스 안내
이 비공식 한국어 번역은 원문 Copyright 절의 Public Domain or CC0-1.0, whichever is more permissive 조건에 따라 제공합니다. 원저자와 공식 원문은 그대로 표시합니다. 수정되지 않은 기준 원문 · 공식 최신판
초록
이 PEP는 RECORD.jws 및 RECORD.p7s 휠 서명 파일을 사용 중단으로 지정합니다. 도구에서 지원되지 않으므로, 사실상 사용되지 않는 이러한 파일은 표방하는 보안을 제공하지 못합니다. 휠 서명을 찾는 사용자는 대신 index hosted attestations를 참조하십시오.
동기
주요 Python 패키징 도구 중 어느 것도 RECORD.jws 또는 RECORD.p7s의 생성이나 검사를 지원하지 않습니다. 특히 pip와 uv 어느 쪽도 서명 파일을 사용하기 위한 요구 사항인 RECORD의 해시를 검증하지 않습니다. 바이너리 배포 형식인 binary distribution format은 이를 보안 기능으로 제시하므로, 사용자에게 혼동을 일으킬 수 있습니다.
휠의 해시 계산 및 서명을 위한 최신 방식은 아카이브 내부 정보에서 색인에 제시되는 아카이브 외부 정보로 전환되었으며, 여기에는 simple repository API의 해시와 attestations가 포함됩니다. RECORD의 해시와 달리, pip 및 uv와 같은 도구는 색인에서 제공되는 해시를 검증합니다.
두 파일 모두 사실상 사용되지 않습니다. GitHub에서 path:**.dist-info/RECORD를 검색하면 635k개의 결과가 나오고, path:**.dist-info/RECORD.jws는 서로 다른 결과 8개가 나오며, path:**.dist-info/RECORD.p7s는 결과가 0개입니다.
사양
RECORD.jws 및 RECORD.p7s 파일은 사용 중단으로 지정되며, 이를 반영하도록 binary distribution format specification이 업데이트됩니다. 빌드 백엔드와 기타 도구는 이러한 파일을 휠에 추가해서는 안 됩니다. 설치 도구는 이러한 파일이 RECORD에서 계속 제외되는 동안 해당 파일을 검증하려고 시도해서는 안 됩니다.
하위 호환성
저자들이 알고 있는 빌드 백엔드와 설치 도구 중 변경이 필요한 것은 없습니다. 이러한 도구는 RECORD 파일을 처리할 때 해당 파일을 건너뛰는 것 외에는 이 파일들을 지원하지 않기 때문입니다. 현재 이러한 파일을 작성하는 빌드 백엔드가 있다면 이 기능을 사용 중단으로 지정하고 최종적으로 제거해야 합니다.
출처를 검증하려는 사용자는 index hosted attestations를 참조하십시오.
보안 영향
이 PEP는 사양에 제시된 보안 기능과 도구가 지원하는 보안 기능 간의 격차를 줄여 Python 패키징 생태계의 보안을 강화합니다.
Copyright
This document is placed in the public domain or under the CC0-1.0-Universal license, whichever is more permissive.