2017-02-10 5 views
0

기존 X509Certificate을 취하고 테스트 용으로 내용을 수정하고 내용을 변경하려면 어떻게합니까? 내가 바꾸고 싶은 일은 서명을 무효화하고, 제목 필드의 일부를 변경하고, 인증서 정책 확장 필드를 변경하고, 기본 제약 확장 필드를 변경하고, 만료 된 것으로 설정하는 것입니다.기존 인증서를 가져 와서 내용을 조작하십시오.

기존 기능이 있습니까? (자바) 내가 이것을 할 수 있도록?

+2

코드를 사용할 수 있습니다. [X509V3CertificateBuilder] (https://www.bouncycastle.org/docs/pkixdocs1.5on/org/bouncycastle/cert/X509v3CertificateBuilder.html)는 필요. 원본 인증서에서 원하는 필드를 복사 할 수 있습니다. 변경된 서명은 더 이상 유효하지 않지만 실험을 수행하는 중이라면 수정 된 인증서에 개인 키로 서명 할 수 있습니다. –

답변

0

인증서는 발행 인증 기관 (또는 자체 서명)이 디지털 서명합니다. 내용을 변경하면 서명이 무효화되므로 속성을 변경하기 위해 기존 인증서의 복사본을 만들면 새로운 서명이 필요합니다.

개인 키를 소유 한 경우 다음을 사용하여 CA에 새 인증서를 요청할 수 있습니다. 동일한 공개 키이지만 다른 필드가 있습니다. 자신의 CA로 서명하거나 자체 서명 된 서명 인 경우 개인 키로 서명하십시오.

테스트 목적으로 bouncycastle을 사용하여 인증서를 직접 만들 수 있습니다. 예를 들어 Self signed X509 Certificate with Bouncy Castle in Java

2

나는 실제로 이것을 할 수 있는지 확신하지 못합니다. 인증서의 장점 중 일부는 위조와 변경이 불가능하다는 것입니다.

대신 자신 만의 테스트를 만들 수 있습니까? 아마도 기존의 것을 수정하는 것이 더 쉬울 것입니다.

나는 이것에 대해 틀렸을 수도 있지만, 어쨌든 이것을하는 것을 모르고 있습니다.