파일 서명: 서명 및 검증
파일 서명을 검증하고 생성합니다: OpenSSH ssh-keygen -Y, minisign, OpenSSL을 지원하며 PEM, OpenSSH, JWK 형식의 Ed25519, ECDSA P-256/P-384, RSA 키를 사용할 수 있습니다. 파일과 키는 브라우저를 떠나지 않습니다.
입력 내용과 파일은 브라우저 밖으로 전송되지 않습니다
서명 검증
여기에 파일을 놓으세요
또는 기기에서 파일 선택
SSH 서명(-----BEGIN SSH SIGNATURE-----), .minisig 파일, 또는 base64, hex, 바이너리 .sig 파일 형태의 원시 서명.
PEM 공개 키 또는 인증서, OpenSSH .pub, authorized_keys 또는 allowed_signers 줄, JWK/JWKS, minisign 공개 키.
SSH 서명 전용: ssh-keygen의 -n 값(file, git 등).
OpenSSH, PEM(PKCS#8, 암호화된 PKCS#8, EC, RSA) 또는 "d"가 있는 JWK. 키는 이 탭에만 머물며 저장되지 않습니다.
암호화된 키에만 필요합니다.
RSA 패딩은 RSA 키에, ECDSA 인코딩은 ECDSA 키에 적용됩니다. Ed25519는 파일 자체에 서명하며(최대 128 MiB) 해시를 무시합니다.
검증 결과나 새 서명이 여기에 표시됩니다.
이 페이지에서
파일 서명은 모든 크기의 파일에 대해 분리 서명을 검증하고 생성합니다: ssh-keygen -Y의 OpenSSH 서명, minisign .minisig 파일, Ed25519, ECDSA P-256/P-384, RSA 키를 사용하는 OpenSSL 원시 서명. 파일은 브라우저에서 1 MiB 청크 단위로 해시되며, 파일, 키, 암호문은 업로드되지 않습니다.
상세 기능
검증은 다운로드한 릴리스, 백업, 문서를 서명과 대조합니다. 파일을 끌어 놓고 서명을 붙여 넣거나 서명 파일 불러오기를 사용한 뒤 공개 키를 지정하세요. 형식은 자동으로 감지됩니다:
- OpenSSH 서명(
ssh-keygen -Y sign, Git 커밋과 태그에도 사용): 키는.pub파일,authorized_keys줄,allowed_signers파일일 수 있습니다. 일치하는 줄로 서명자를 보여 주며namespaces=제한도 지킵니다. 네임스페이스는 서명할 때 쓴 값(보통file)과 같아야 합니다. 키가 없어도 서명에 포함된 키로 확인하고 그 지문을 보여 줍니다. - minisign
.minisig(사전 해시 BLAKE2b 및 레거시): 키 ID와 신뢰된 주석을 확인하므로 위조된 주석도 보고됩니다. openssl dgst -sign또는openssl pkeyutl -rawin의 원시 서명: 바이너리, base64, hex. ECDSA는 DER 또는 r‖s, RSA는 PKCS#1 v1.5 또는 PSS, SHA-256/384/512. 키는 PEM(SPKI 또는 PKCS#1), X.509 인증서, OpenSSH 줄, JWK를 사용할 수 있습니다.
서명은 개인 키로 서명을 만듭니다: OpenSSH, PEM(PKCS#8, 암호화된 PKCS#8, EC, RSA) 또는 JWK이며, 암호화된 키에는 암호문을 입력합니다. 형식은 ssh-keygen -Y verify로 읽을 수 있는 SSH 서명(ssh-keygen -Y), 또는 해시, RSA 패딩, ECDSA 인코딩을 지정하는 원시 서명(OpenSSL) 중에서 고르세요. 결과에는 서명, 키 지문, 공개 키, 그리고 ssh-keygen 또는 openssl로 바로 검증할 수 있는 명령이 표시됩니다.
실용적인 예제
릴리스 다운로드 확인: tool-1.4.tar.gz를 끌어 놓고 tool-1.4.tar.gz.sig를 불러온 뒤 프로젝트의 allowed_signers를 붙여 넣으면 서명이 유효합니다와 서명자 [email protected]가 표시됩니다.
minisign: 아카이브를 끌어 놓고 해당 .minisig를 불러온 뒤 프로젝트 페이지의 RW… 공개 키를 붙여 넣으세요. 파일 이름과 타임스탬프가 담긴 신뢰된 주석이 표시됩니다.
OpenSSL: openssl dgst -sha256 -sign key.pem -out data.sig data.bin으로 만든 서명을 public.pem으로 검증합니다. 해시와 패딩은 자동으로 찾아냅니다.
동료를 위한 서명: 내 id_ed25519를 불러오고 네임스페이스 file과 SSH 서명(ssh-keygen -Y) 설정을 그대로 둔 채 파일 서명을 클릭한 뒤, .sig를 allowed_signers 줄과 함께 보내세요.
이 도구 사용 방법
파일 선택
파일을 여기에 파일을 놓으세요 영역에 끌어 놓거나 파일 선택을 클릭하세요. 청크 단위로 해시하므로 크기 제한이 없습니다.
모드 선택
서명을 확인하려면 검증, 만들려면 서명을 선택하세요.
서명과 키 입력
검증에서는 서명과 공개 키를 붙여 넣고, SSH 서명이면 네임스페이스를 확인하세요. 서명에서는 개인 키를 붙여 넣고, 암호화되어 있으면 암호문을 입력한 뒤 서명 형식을 선택하세요.
실행
서명 검증 또는 파일 서명을 클릭하세요. 진행률에 해시된 바이트 수가 표시되며 취소로 중단할 수 있습니다.
결과 확인
녹색 또는 빨간색 메시지로 판정이 표시되고, 그 아래에 키 지문, 방식, 해시, 서명자가 나옵니다. 서명 후에는 .sig 다운로드를 사용하거나 서명을 복사하세요.
팁 및 모범 사례
- 신뢰할 수 있는 키 없이 유효한 서명은 무결성만 증명할 뿐 서명자를 증명하지 않습니다. 항상 지문을 비교하거나 서명자의 키를 제공하세요.
git은 네임스페이스git으로 커밋에 서명하고, 일반ssh-keygen -Y sign은 보통file을 사용합니다.- OpenSSL의 RSA-PSS 서명은 다이제스트 길이와 최대 솔트 길이 모두로 확인하므로 구버전과 신버전 OpenSSL의 서명을 모두 검증할 수 있습니다.
- Ed25519 원시 서명은 해시가 아닌 파일 전체에 서명하므로 여기서는 128 MiB로 제한되며, SSH 서명에는 크기 제한이 없습니다.
- 개인 키는 이 탭에서만 사용되고 저장되지 않습니다. 그래도 평소 쓰는 SSH 키 대신 서명 전용 키를 사용하는 것이 좋습니다.