[open-source] 오픈 소스 프로젝트에 대한 코드 서명 인증서?

내 애플리케이션 중 하나를 오픈 소스로 게시하고 자체 인증서로 만든 바이너리에 디지털 서명을하고 싶습니다. (물론 다른 사람은 코드를 다운로드하고 자신의 인증서로 직접 빌드 할 수 있습니다.)이 빌드가 다른 사람이 아닌 내가 만든 것인지 누구나 확인할 수 있도록 이렇게하고 싶습니다. 또한 방문자가 안전한 방식으로 자신의 계정을 만들어이 프로젝트에 기여할 수 있도록 유효한 SSL 인증서로 안전한 웹 사이트를 만들고 싶습니다.

자체 서명 된 인증서를 만들 수는 있지만이 옵션이 마음에 들지 않습니다. 또는 Verisign에 몇 개의 금화를 지불하여 몇 년 동안 유효한 인증서를 얻을 수 있습니다. 저도 그 옵션이 마음에 들지 않습니다. 제 재무는 제게 가치가 있기 때문입니다.

그래서 다른 옵션이 있습니까? 예를 들어 할인 된 가격에 인증서를 제공하여 오픈 소스 프로젝트를 지원하는 제공 업체가 있습니까? 무료 일 필요는 없으며 Verisign보다 훨씬 저렴합니다.

(이 프로젝트는 Visual Studio 2008 과 함께 C #으로 생성됩니다 . 그리고 SSL을 원하는 ASP.NET의 추가 프로젝트도 있습니다.)



답변

CAcert 를 사용해 볼 수 있습니다 . 이를 통해 다른 CAcert 사용자의 인증을받습니다. CAcert에는 평판 기반 시스템이 있으므로 충분히 자주 인증을 받으면 인증서가 유효한 것으로 간주됩니다.

대상 시스템에서 CAcert를 신뢰할 수있는 기관으로 추가해야 할 수 있습니다. 실행 파일 자체 서명은 충분한 옵션이어야하지만 공용 인증서를 제공해야합니다. 알려진 기관을 사용하면 파일을 확인하는 데 도움이 될 수 있지만이 경우에는 자체 서명 된 인증서와 함께 파일의 체크섬 또는 sha2 해시를 사용하는 것이 과도하다고 생각합니다. Linux 박스를 CA로 설정할 수 있지만 공인 인증서를 신뢰해야합니다.


답변

오픈 소스 개발자, Certum는 코드 서명 인증서를 제공하는 무료 *

인증서를 요청할 때 “회사”필드에 “오픈 소스 개발자”를 입력하면됩니다. 그게 다야.

오픈 소스 코드 서명 인증서 링크는 여기

[*] 2016 년부터 오픈 소스 코드 서명 인증서는 더 이상 무료로 제공되지 않습니다. 이제 유료 전용 서비스입니다.


답변

업데이트 : 더 이상 무료가 아닙니다. 이제 € 105.78 (2017 년 2 월 19 일 기준). 이미 암호화 하드웨어를 소유하고 있다면 비용이 적습니다. FWIW, 다음은 이전 지침입니다.


개인으로서 Certum / Unizeto 에서 무료 코드 서명 인증서를 받으려면 다음 단계를 따르십시오. Internet Explorer 또는 Safari는 키 교환 메커니즘을 지원하므로 사용하십시오.

  1. 에 대한 검색 테스트 ID와 OpenSource 다음 코드 서명 인증서 양식을 제출합니다.

  2. 인증서는 인증서 활성화 아래에 나타납니다 . 활성화를 클릭 합니다 .

  3. 활성화 마법사를 진행합니다. 들어 조직 입력 오픈 소스 개발자를 . 들어 조직 단위 입력 소프트웨어 출판 .

  4. 신원 증명을 요청하는 이메일을 받게됩니다. 오픈 소스 프로젝트에 대한 링크와 운전 면허증 이미지 (또는 다른 승인 된 문서)를 포함하여 회신하십시오. 개인 정보를 보호하려면 답장을 암호화해야합니다. * 암호화 방법은 이메일 클라이언트에 따라 다릅니다. Outlook의 경우 이메일 인증서 ( 무료 ) 가 있는지 확인 하고 암호화를 사용 설정 합니다.

  5. 하루 정도 이내에 인증서를 수집 할 수있는 링크가 포함 된 이메일을 받게됩니다. 프로세스를 시작하는 데 사용한 것과 동일한 컴퓨터와 브라우저에서 링크를 열어야합니다.

* Certum의 확인 이메일에서에게 증명을 보내라고했지만 Certum은 암호화 된 이메일을 보낼 수 ccp@certum.pl있는 회신 주소로 보낸 증명도 수락 info@certum.pl합니다.


답변

2016 업데이트 : 의심스러운 상황에서 WoSign이 StartCom을 인수했습니다 . 나는 StartCom / WoSign을 믿지 않을 것입니다. 아래 텍스트는 StartCom 2015 년 초까지 얼마나 좋은지에 대한 역사적인 메모로 고려하십시오 .

StartCom (StartSSL) 에서 코드 서명 인증서를 받았습니다 . 나는 그들의 서비스에 매우 만족합니다. 그들의 고객 서비스는 매우 빠르고 가격도 매우 합리적입니다.

코드 서명 인증서 얻기

코드 서명 인증서를 얻으려면 클래스 2 신원 확인이 필요합니다 . StartCom은 전체 프로세스를 안내합니다 (우수한 응답률, 일반적으로 경험상 10 분 이내).
한 번에 자세한 내용을 확인하려면 이 블로그 게시물을 읽어 보세요. 한 시간 이내에 확인되었습니다 (페이팔을 통해 59.90 달러의 수수료).

유효성을 검사 한 후 새 개인 키와 CSR (인증서 서명 요청)을 생성합니다. 참고 공개 키를 제외한 모든 필드는 무시됩니다 . 인증서의 모든 정보는 CSR이 아니라 신원 확인 중에 제공 한 정보에서 유추됩니다 .

# Create key and CSR (key must be at least 2048 bit, per Policy Statement)
openssl req -nodes -newkey rsa:2048 -keyout codesigning.key -out codesigning.csr
# Add pass phrase to key (optional, but highly recommended)
openssl rsa -in codesigning.key -des3 -out codesigning2.key && \
    mv codesigning2.key codesigning.key

웹 인터페이스를 통해 제출하면 2 년 동안 유효한 새 인증서를 빠르게받을 수 있습니다 (1 시간 내에 발급 받았습니다).

문제 : 평생 서명 OID

StartCom의 클래스 2 인증서에는 평생 서명 OID가 설정되어 있습니다. 이 비트로 인해 서명 된 코드의 서명은 인증서가 만료 된 후 타임 스탬프가 찍힌 경우에도 유효하지 않게됩니다.

이 OID에 대한 이유를 Eddy Nigg (StartCom의 COO / CTO)에게 물었을 때 그는 다음과 같이 대답했습니다.

인증서가 이미 만료 된 후에도 최대 20 년 동안 CRL을 유지해야합니다. 이것은 우리가 EV 레벨 인증서 (훨씬 적은 양, 다른 지불 조건)에 대해 할 수있는 일이지만,이 혜택을 위해 클래스 2의 가격을 인상 할 것입니다 (코드 서명은이 레벨의 옵션의 일부일뿐입니다).

따라서 타임 스탬프는 EV (Extended Validation) 이후 에만 사용할 수 있으며 합법적으로 설립 된 조직에서만 사용할 수 있으며 비용은 199.90 달러입니다. 따라서 개별 개발자는 StartCom의 코드 서명 인증서로 타임 스탬프를 사용할 수 없습니다 .

오랫동안 저는이 한계를 큰 문제로 생각했습니다. 최근에 마음이 바뀌 었습니다. 2 년에 한 번만 발생하고 보안에 관심이있는 사용자는 내 소프트웨어의 최신 버전을 사용하는 경향이 더 많으며 이전 버전의 소프트웨어는 계속 작동합니다 (사용하려는 사용자를 위해; 확인 된 서명없이).

참고 : 평생 서명 플래그가 설정되어 있어도 항상 코드에 타임 스탬프를 찍으십시오 ! 타임 스탬프가있는 서명은 인증서가 해지 된 경우에도 인증서 만료일까지 유효합니다 (분명히 인증서가 해지되기 전에 서명이 생성 된 경우에만 해당).

인증서의 실제 사용

StartCom에서는 유효성 검사 비용 만 지불합니다. 신원 확인은 350 일 동안 유효하며이 기간 동안 코드 서명 인증서를 무료로 요청할 수 있습니다. 유효한 코드 서명 인증서는 하나만 가질 수 있으며 모든 코드 (MSI, DLL, XPI, …)에 서명하는 데 사용할 수 있지만 드라이버 코드에는 서명 할 수 없습니다 (EV 필요).

인증서의 속성을 변경하려면 이전 인증서를 취소하고 새 인증서를 요청해야합니다. 인증서 취소 비용은 $ 29.90입니다. 코드 서명 인증서를 받고 하루 만에 이메일을 변경했을 때 그들은 예외적으로 수수료없이 내 인증서를 취소했습니다 (정말 놀랐습니다)!

만료

인증서가 만료 될 때 (거의 2 년 후) 알림을받습니다 (2 주 전). 확인 된 신원이 여전히 유효한 경우 (검증은 350 일 후에 만료되며 59.90 $에 대해 신원을 다시 확인해야 함) 이전 인증서를 취소하지 않고 새 인증서를 요청할 수 있습니다. 이 새 코드 서명 인증서로 서명 된 소프트웨어의 새 릴리스를 게시하는 것을 잊지 마십시오. 이전 릴리스에는 곧 “(확인되지 ​​않음)”또는 이와 유사한 내용이 표시 될 것입니다.

OCSP

인증서를 받았을 때 Firefox 애드온에 서명했습니다. 그러나 내 XPI 파일이 올바르게 서명 되었음에도 불구하고 여전히 “(저자가 확인되지 않음)”이 표시됩니다. Firefox가 StartCom의 OCSP 서버에 새 인증서의 해지 상태를 쿼리했을 때 현재 인증서 상태를 얻지 못한 것으로 나타났습니다. 관련 포럼 주제

약 반나절 후에 내 인증서가 OCSP 서버에 알려졌고 내 이름이 예상대로 표시되었습니다. 교훈 : 새 인증서를 받으면 새 서명으로 소프트웨어를 게시하기 전에 하루 정도 기다리십시오.


답변

KSoftware를 확인할 수도 있습니다 . 그들은 Comodo 코드 서명 인증서를 연간 99 달러에 재판매 합니다.


답변

StartSSL 제품을 살펴볼 수 있습니다 .

참고 StartSSL은 이제 종료되었으며 더 이상 인증서를 발급하지 않습니다.


답변

코드 서명 인증서를 구입해야합니다. 가장 저렴한 것은 Comodo에서 온 것입니다. 나는 당신이 계획 한 것처럼 소스 코드와 바이너리를 게시하고 바이너리에 서명했습니다. 사진 및 기타 파일에 대해서는 날짜 및 시간 배치 체인저를 참조하십시오 .