디지털 서명은 문서의 진위 여부를 확인하기 위한 신뢰할 수 있는 체계입니다. 디지털 서명은 종종 전자 서명을 구현하는 데 사용됩니다. 이 기사에서는 C#을 사용하여 디지털 인증서로 PDF 및 Word 문서에 전자 서명하는 방법을 배웁니다.
디지털 서명 및 인증서용 .NET API
디지털 인증서로 문서에 서명하기 위해 이 기사의 C# 예제에서 GroupDocs.Signature for .NET API를 사용할 것입니다. PDF 문서 서명 외에도 이 API는 워드 프로세서 문서 및 스프레드시트 형식에 대한 디지털 서명을 지원합니다.
다운로드 섹션에서 DLL 또는 MSI 설치 프로그램을 다운로드하거나 NuGet을 통해 .NET 애플리케이션에 API를 설치합니다.
PM> Install-Package GroupDocs.Signature
C#에서 디지털 인증서로 PDF 서명
환경을 설정하고 나면 문서에 서명할 수 있습니다. 다음 단계에 따라 C#을 사용하여 사용 가능한 디지털 인증서로 문서에 서명합니다.
- 서명할 문서로 Signature 객체를 초기화합니다.
- DigitalSignOptions 개체를 인증서 파일로 초기화합니다.
- 비밀번호, 위치 등 필수 기호 옵션을 설정합니다.
- Sign 메소드를 호출하여 디지털 인증서로 문서에 서명합니다.
다음 코드 예제에서는 C#의 인증서를 사용하여 PDF 문서에 서명합니다.
// C#에서 디지털 인증서로 PDF 서명
using (Signature signature = new Signature("document.pdf"))
{
DigitalSignOptions options = new DigitalSignOptions("certificate.pfx");
{
ImageFilePath = "sampleImage.jpg", // Optional - Set image file path
Left = 50, // Set signature position
Top = 50,
Password = "GroupDocs" // Set Password
};
signature.Sign("signedDocument.pdf", options);
}
C#에서 사용자 지정 모양을 사용하여 디지털 서명으로 서명
디지털 서명은 다양한 프레젠테이션을 갖도록 사용자 정의할 수 있습니다. 개인화된 모양의 경우 PdfDigitalSignatureAppearance 클래스를 사용하여 다음 옵션을 사용자 지정할 수 있습니다.
- 배경
- 연락처 정보
- 서명 날짜
- 디지털 서명
- 위치
- 이유
- 글꼴군
- 글꼴 크기
또한 다음 속성을 변경할 수 있습니다.
- 키
- 너비
- 테두리 스타일
- 모든 페이지 또는 아님에 표시
다음 예에서는 위에서 언급한 거의 모든 속성을 사용하고 있습니다. 이 예에서는 C#을 사용하여 PDF 문서의 디지털 서명 모양을 사용자 지정합니다.
// 사용자 지정 모양 및 설정을 사용하여 C#에서 디지털 인증서로 PDF 서명
using (Signature signature = new Signature("document.pdf"))
{
DigitalSignOptions options = new DigitalSignOptions("certificate.pfx")
{
Password = "GroupDocs",
// 디지털 인증서 세부 정보
Reason = "Approved",
Location = "New York",
// 사용자 정의 PDF 서명 모양
Appearance = new PdfDigitalSignatureAppearance()
{
// 연락처를 표시하지 않음
ContactInfoLabel = string.Empty,
// 이유 레이블 단순화
ReasonLabel = "?",
// 위치 레이블 변경
LocationLabel = "From",
DigitalSignedLabel = "By",
DateSignedAtLabel = "On",
Background = Color.Red
},
AllPages = true,
Width = 160,
Height = 80,
// 서명 테두리 설정
Border = new Border()
{
Visible = true,
Color = Color.Red,
DashStyle = DashStyle.DashDot,
Weight = 2
}
};
SignResult signResult = signature.Sign("signedDocument.pdf", options);
}
C#에서 디지털 인증서로 Word 문서에 서명
마찬가지로 인증서를 사용하여 Word 문서에 서명할 수 있습니다. 서명 개체 초기화를 시작할 때 올바른 문서를 제공하기만 하면 됩니다.
- 서명할 Word 문서로 Signature 개체를 초기화합니다.
- DigitalSignOptions 개체를 인증서 파일로 초기화합니다.
- 비밀번호, 위치 등 기호 옵션을 설정합니다.
- 서명 방식으로 디지털 인증서로 문서에 서명합니다.
이 예에서는 C#의 인증서를 사용하여 Word 문서에 서명합니다.
// C#에서 디지털 인증서로 Word 문서 서명
using (Signature signature = new Signature("document.docx"))
{
DigitalSignOptions options = new DigitalSignOptions("certificate.pfx");
{
ImageFilePath = "sampleImage.jpg", // Optional - Set image file path
Left = 50, // Set signature position
Top = 50,
Password = "GroupDocs" // Set Password
};
signature.Sign("signedDocument.docx", options);
}
결론
이 기사에서는 C#을 사용하여 디지털 인증서로 PDF 및 Word 문서에 전자 서명하는 방법을 배웠습니다. 또한 서명 모양을 쉽게 사용자 지정할 수 있습니다. 이제 C#에서 사용자 지정 모양이 있는 디지털 인증서로 PDF 및 Word 문서에 서명하기 위한 고유한 .NET 응용 프로그램을 구축할 수 있습니다.
서명 API에 대한 추가 정보를 위한 빠른 링크
- GitHub의 예
- 개발자 가이드 및 문서
- 포럼 빠른 지원