사용자가 공유한 콘텐츠
-
GitHub 커밋을 보면 우측에 Verified
라는 녹색 배지가 붙은 표시되는 것을 볼 수 있습니다. 이 뱃지는 Verified 커밋, 즉 서명된 커밋(Signed commit)인데요. 해당 커밋의 신뢰성과 무결성을 나타내는 디지털 서명을 의미합니다. 이는 해당 커밋이 실제 그 개발자에 의해 생성되었음을 증명합니다.
그렇다면 왜 이런 Verified 커밋이 필요한걸까요??
Git에서 커밋 정보는 작성자의 이름(user.name)과 이메일 주소(user.email)만을 포함합니다.
이러한 정보는 쉽게 위조될 수 있는 취약점을 가지고 있는데요. 예를 들어, 다른 누군가가 커밋할 때 내 이름과 이메일을 이용한다면 충분히 커밋을 생성할 수 있습니다. 커밋은 온라인 인증 과정 없이 오프라인에서도 가능하기 때문이죠. 따라서 커밋의 작성자 확인을 보장하는 메커니즘이 필요하게 되었고, Verified 커밋이 존재하게 되었습니다.
Verified 커밋은 공개키 암호화 방식을 기반으로 합니다. 개인키(private key)와 공개키(public key)를 이용하여 커밋의 서명을 검증합니다. 검증이 성공적으로 이루어지면 Verified 배지가 해당 커밋에 표시됩니다.
코드의 출처와 변경 이력의 신뢰성 그리고 보안이 중요해짐에 따라 Verified 커밋의 중요성이 더욱 커지고 있습니다. 오픈소스 생태계 혹은 기업 환경에서 Verified 커밋을 통해 보안 수준을 향상시켜 프로젝트의 신뢰성과 안전성을 보장하는데 도움을 받을 수 있습니다.
https://docs.github.com/en/authentication/managing-commit-signature-verification
다음 내용이 궁금하다면?
이미 회원이신가요?
2024년 7월 24일 오전 8:50