0

SRI 해시 생성기

JS 또는 CSS 파일에 대한 하위 리소스 무결성 해시를 생성하고 바로 붙여넣을 수 있는 스크립트 또는 링크 태그를 가져옵니다.

🔗

이미지 드래그 앤 드롭

모든 JS 또는 CSS 파일에서 작동합니다. 아무 것도 업로드되지 않으며 해시는 로컬에서 계산됩니다.

하위 리소스 무결성은 base64로 인코딩된 sha256, sha384 또는 sha512 다이제스트만 허용합니다. 이 도구는 그에 따라 선택 사항을 제한하므로 출력은 항상 사양이 정확합니다.

Buy Me a Coffee at ko-fi.com
처리 중... 0%
파일 읽기
컴퓨팅 다이제스트
base64로 인코딩
완료

결과

SRI(하위 리소스 무결성)를 사용하면 CDN 또는 타사 호스트에서 가져온 스크립트나 스타일시트가 실행되기 전에 변경되지 않았는지 브라우저에서 확인할 수 있습니다. 브라우저는 다운로드한 바이트를 해시하고 다이제스트가 게시한 무결성 속성과 일치하지 않으면 파일 실행을 거부합니다. 이 도구는 브라우저 탭 내부에 있는 모든 JS 또는 CSS 파일에 대한 다이제스트를 계산하므로 파일 자체가 해싱되기 위해 컴퓨터를 떠날 필요가 없습니다.

일반 해시 도구는 사용 가능한 SRI 값을 생성하지 않습니다. 사양에는 대부분의 체크섬 도구가 인쇄하는 16진수 문자열이 아닌 base64로 인코딩된 다이제스트가 필요하며 sha256, sha384 및 sha512의 세 가지 알고리즘만 인식합니다. 이 생성기는 알고리즘 선택을 정확히 세 가지로 제한하고 결과를 올바른 방식으로 인코딩한 다음 복사하기 전에 편집할 수 있는 자리 표시자 src 또는 href 필드를 사용하여 주위에 전체 HTML 태그를 구성하여 한 단계 더 나아갑니다.

내부적으로는 파일 API를 사용하여 파일을 읽고 기본 crypto.subtle.digest() 구현으로 해시한 다음 결과 바이트를 단일 대규모 확산 작업이 아닌 작은 청크로 base64로 변환합니다. 이는 번들 JS 파일이 대략 십만 바이트를 초과하면 중요한 세부 사항입니다. 순진한 변환 접근 방식은 브라우저의 호출 스택 제한에 도달할 수 있습니다.

sha384는 SRI 예제 및 문서에서 가장 일반적으로 권장되는 알고리즘으로 다이제스트 길이와 충돌 저항의 균형을 유지하기 때문에 기본적으로 선택됩니다. 하지만 빌드 파이프라인이나 CDN 공급자가 다른 요구 사항을 지정하는 경우 sha256 및 sha512는 한 번의 클릭만으로 사용할 수 있습니다.