코드 서명

코드 서명(code signing)은 실행 파일과 스크립트에 디지털 서명을 하는 과정으로, 서명 이후에 코드가 변조되거나 손상되지 않음을 보장한다. 진위와 무결성 확인을 위해 암호화 해시를 사용한다.

코드 서명은 몇 가지 가치있는 기능들을 제공할 수 있다. 코드 서명의 가장 일반적인 용도로는 디플로이할 때 보안을 제공한다는 점이다. 일부 프로그래밍 언어에서 이름공간 충돌 예방을 돕기 위해 사용할 수도 있다. 거의 모든 코드 서명 구현체는 특정한 종류의 디지털 서명 매커니즘을 사용하여 저자나 빌드 시스템, 체크섬을 식별함으로써 객체가 수정되지 않았음을 확인시켜 준다. 객체에 대한 기타 메타 데이터를 저장하거나 객체에 관한 버저닝 정보를 제공하기 위해서도 사용할 수 있다.

소프트웨어의 진위 확인 매커니즘으로서의 코드 서명의 효능은 서명 키를 지원하는 보안에 따라 달라진다. 다른 공개 키 기반(PKI) 기술들처럼 시스템의 무결성은 미인가 접근에 대해 개인 키를 	보유한 제공자에 의존한다. 그러므로 하드웨어 보안 모듈 또는 HSM이라는 이름의 안전하고 변조를 방지하며 암호화된 하드웨어 장치에 키를 저장하기 위한 더 안전하고 가장 모범적인 과정이라고 할 수 있다.

같이 보기 
 디지털 서명
 IOS 탈옥
 플레이스테이션 포터블 홈브류
 권한 확대
 안드로이드 루팅

각주

외부 링크 
 Apple Code Signing Guide
 Microsoft Introduction to Code Signing
 Debian Security Infrastructure 
 Strong Name and Code Sign .Net assemblies with signIT! by Cove Bay Software 
 Strong Distribution HOWTO
 How to Verify if Your Code Signing Certificate is Installed?

응용암호학
보안 소프트웨어
비디오 게임 문화
공개 키 기반 구조