파일 전자서명 작업대
이 도구는 사용자가 가진 ECDSA P-256 개인키로 크기 제한이 있는 로컬 파일에 서명합니다. 분리된 버전 1 JSON 문서에는 정확한 파일명, 바이트 크기, SHA-256 해시와 공개키가 들어가며 이 필드들을 SHA-256 ECDSA로 서명합니다. 검증 때 선택한 파일을 다시 읽어 해시와 서명을 모두 확인합니다. 단순 체크섬만으로는 키 보유자를 확인할 수 없습니다. 이 형식은 사이트 전용이며 PDF/CMS 서명이나 인증서가 아닙니다.
주요 기능
- 새 서명 키를 생성하거나 로컬 P-256 개인키 JWK 가져오기
- 실제 파일 바이트와 이름·크기·SHA-256·공개키를 함께 서명
- 분리된 버전 1 .ttsig.json 문서와 공개키 JWK 다운로드
- 변경된 바이트·손상 서명·틀린 공개키를 구분해 검증 실패 처리
- 별도 신뢰 경로에서 공개키 SHA-256 지문을 비교
사용 방법
- 서명 모드에서 로컬 키를 생성하거나 가져오고 16 MiB 이하 파일을 선택합니다.
- 서명 뒤 분리 .ttsig.json 문서를 내려받고, 별도 대조가 필요하면 공개키를 독립된 경로로 전달합니다.
- 개인키 JSON을 명시적으로 내보낸 경우 암호화되지 않았으므로 안전하게 보관합니다.
- 검증 모드에서 원본 파일과 분리 서명 문서를 선택하고, 원한다면 다른 경로로 받은 공개키 JWK도 선택합니다.
- 파일 바이트·서명 결과를 확인한 뒤 신원 판단 전에는 신뢰할 수 있는 곳의 공개키 지문과 비교합니다.
활용 예시
- 전달된 작은 바이너리가 서명 뒤 변경되었는지 확인
- 파일 자체를 수정하지 않고 분리 서명만 함께 전달
- 팀에서 이미 알고 있는 공개키로 릴리스 파일 검증
- 체크섬과 인증된 공개키가 각각 무엇을 증명하는지 실험
자주 묻는 질문
검증에 성공하면 누가 서명했는지도 알 수 있나요?
아니요. 문서에는 누구나 만든 공개키를 넣을 수 있습니다. 대응하는 개인키가 서명했다는 사실을 확인하지만 신원은 별도로 신뢰된 키나 지문이 있어야 판단할 수 있습니다.
문서에 포함된 공개키를 바꿀 수 있나요?
공개키도 서명 대상에 포함됩니다. 다시 서명하지 않고 바꾸면 실패합니다. 다만 공격자가 새 키와 새 문서를 만들 수 있으므로 다른 경로의 신뢰된 키와 비교하세요.
파일 이름만 바꿔도 검증이 달라지나요?
그렇습니다. 정확한 파일명과 바이트 크기도 SHA-256 해시와 함께 서명하므로 이름 변경이나 1바이트 수정에도 새 서명이 필요합니다.
내보낸 개인키에 암호가 걸리나요?
아니요. 개인키 JWK는 암호화되지 않은 JSON이며 별도 확인 후에만 내려받습니다. 이 파일을 가진 사람은 같은 키로 서명할 수 있습니다.
PDF/CMS나 OpenSSL 도구와 문서가 호환되나요?
암호 연산은 Web Crypto의 ECDSA P-256, SHA-256 및 P1363 서명입니다. 둘러싼 정규 JSON 문서는 이 사이트의 버전 1 형식이며 PDF/CMS나 OpenSSL 분리 서명 컨테이너가 아닙니다.
크기 제한은 어떻게 되나요?
파일은 16 MiB, 분리 문서는 8 KiB, 키 JSON은 4 KiB까지입니다. 브라우저 메모리에서 파일을 읽으며 Web Crypto를 지원하지 않는 환경은 사용할 수 없습니다.
개인정보 안내
파일과 키의 바이트는 현재 브라우저 탭의 메모리에서만 처리하며 업로드·자동 저장하지 않습니다. 개인키는 암호화되지 않은 JSON 다운로드의 위험을 별도로 확인한 뒤에만 내보냅니다. 해당 파일을 비공개로 보관·백업하세요. 가진 사람은 누구나 같은 키로 서명할 수 있습니다.
댓글과 질문