이 기사에서는 Java에서 프로그래밍 방식으로 PDF 파일을 암호화하고 해독하기 위한 단계별 가이드와 코드 샘플을 제공합니다.

pdf 자바 암호화 또는 해독

다양한 경우에 PDF 문서는 이해 관계자 간에 공유되기 전에 암호화됩니다. 암호화를 통해 문서를 무단 액세스 및 콘텐츠 변조로부터 안전하게 보호합니다. PDF 문서를 보호하는 일반적인 방법에는 두 가지가 있습니다. 암호로 PDF를 암호화하거나 인쇄, 편집, 복사 등과 같은 사용자의 액세스 권한을 제한하는 것입니다. 이 기사에서는 Java에서 PDF를 암호화하거나 해독하는 방법을 보여줍니다. 또한 PDF 문서에서 사용자의 권한을 제한하는 방법을 배웁니다.

PDF 암호화 또는 해독을 위한 Java API - 무료 다운로드

Java용 Aspose.PDF는 PDF 암호화 및 암호 해독 작업을 원활하게 수행할 수 있는 기능이 풍부한 PDF 조작 API입니다. 또한 PDF 문서에서 사용자의 권한을 프로그래밍 방식으로 수정할 수 있습니다. API를 무료로 다운로드하거나 다음 Maven 구성을 사용하여 API를 설치할 수 있습니다.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-pdf</artifactId>
    <version>20.9</version>
    <classifier>jdk17</classifier>
</dependency>

Java에서 PDF 파일 암호화

PDF 문서를 암호화하려면 문서를 열고 액세스하는 데 사용할 암호를 설정해야 합니다. 이와 함께 암호화에 사용할 다음 암호화 알고리즘 중 하나를 선택할 수 있습니다.

다음은 Java에서 PDF 파일을 암호화하는 단계입니다.

다음 코드 샘플은 Java를 사용하여 PDF 문서를 암호화하는 방법을 보여줍니다.

// 전체 예제 및 데이터 파일을 보려면 https://github.com/aspose-pdf/Aspose.Pdf-for-Java로 이동하십시오.
// 문서 열기
Document document = new Document("input.pdf");
// PDF 암호화
document.encrypt("user", "owner", 0, CryptoAlgorithm.AESx256);
// 업데이트된 PDF 저장
document.save("Encrypted_output.pdf");

암호화된 PDF를 열면 다음 대화 상자가 나타납니다.

암호화된 PDF

Java에서 PDF 파일 암호 해독

암호화된 PDF 문서의 암호를 해독하려면 사용자 또는 소유자의 암호가 필요합니다. 다음은 Java에서 PDF 파일을 해독하는 단계입니다.

  • 생성자에서 암호를 지정하여 Document 클래스를 사용하여 암호화된 PDF를 로드합니다.
  • Document.decrypt() 메서드를 호출하여 PDF를 해독합니다.
  • Document.save(string) 메서드를 사용하여 해독된 PDF 문서를 저장합니다.

다음 코드 샘플은 Java를 사용하여 암호화된 PDF를 해독하는 방법을 보여줍니다.

// 전체 예제 및 데이터 파일을 보려면 https://github.com/aspose-pdf/Aspose.Pdf-for-Java로 이동하십시오.
// 문서 열기
Document document = new Document("input.pdf", "password");
// PDF 해독
document.decrypt();
// 업데이트된 PDF 저장
document.save("output.pdf");

Java를 사용하여 PDF의 보안 권한 변경

PDF 문서를 암호화하는 동안 다른 작업을 수행하도록 사용자의 액세스를 제한할 수도 있습니다. 다음은 설정할 수 있는 권한입니다.

  • 문서 인쇄 – 문서를 인쇄할 수 있습니다.
  • 콘텐츠 수정 – 콘텐츠를 수정할 수 있습니다.
  • 콘텐츠 추출 – 문서에서 콘텐츠를 복사할 수 있습니다.
  • 텍스트 주석 수정 – 텍스트 주석을 추가하거나 업데이트할 수 있습니다.
  • 양식 채우기 – 대화식 양식 필드를 채울 수 있습니다.
  • 장애가 있는 콘텐츠 추출 – 텍스트 및 그래픽 추출을 허용합니다(장애가 있는 사용자용).
  • 문서 조합 – 페이지를 삽입, 회전 또는 삭제하고 책갈피 또는 축소판 이미지를 생성할 수 있습니다.
  • 인쇄 품질 - 문서를 고해상도로 인쇄할 수 있습니다.

다음은 PDF 문서에서 권한을 설정하거나 수정하는 단계입니다.

  • Document 클래스를 사용하여 PDF를 로드합니다.
  • DocumentPrivilege 클래스를 사용하여 권한을 설정합니다.
  • PDF를 암호화하고 이전 예에서와 같이 저장합니다.

다음 코드 샘플은 Java를 사용하여 PDF 문서에서 권한을 수정하는 방법을 보여줍니다.

// 전체 예제 및 데이터 파일을 보려면 https://github.com/aspose-pdf/Aspose.Pdf-for-Java로 이동하십시오.
Document document = new Document("inputFile.pdf");
try /* JAVA: was using */
{
	DocumentPrivilege documentPrivilege = DocumentPrivilege.getForbidAll();
	documentPrivilege.setAllowScreenReaders(true);
	documentPrivilege.setAllowPrint(true);

	document.encrypt("user", "owner", documentPrivilege, CryptoAlgorithm.AESx128, false);
	document.save("outputFile.pdf");
} finally {
	if (document != null)
		document.dispose();
}

다음은 암호화된 PDF 파일에 대한 권한입니다.

암호화된 PDF

결론

이 기사에서는 Java에서 PDF 파일을 암호화하거나 해독하는 방법을 배웠습니다. 또한 Java에서 프로그래밍 방식으로 PDF 문서의 사용자 권한을 수정하는 방법을 살펴보았습니다. 문서를 사용하여 Java PDF API를 탐색하고 자세히 알아볼 수 있습니다.

또한보십시오