Ký tài liệu bằng chữ ký số bằng Java

Chữ ký số là một kỹ thuật toán học để xác minh tính xác thực của tài liệu. Đối với tài liệu, chữ ký số được thể hiện bằng chứng chỉ có khóa riêng và khóa chung. Là nhà phát triển Java, bạn có thể dễ dàng ký tài liệu của mình bằng chứng chỉ kỹ thuật số theo chương trình. Bài viết này sẽ tập trung vào cách ký điện tử các tài liệu có chữ ký số bằng Java.

Các chủ đề sau được thảo luận/đề cập trong bài viết này:

API Java để ký tài liệu

Tôi sẽ sử dụng API GroupDocs.Signature for Java để ký các tài liệu có chứng chỉ số. Nó giúp bạn phát triển các ứng dụng Java để ký điện tử các tài liệu kỹ thuật số ở các định dạng được hỗ trợ. Nó cũng cho phép ký hình ảnh và tài liệu bằng chữ ký điện tử Hình ảnh, Mã QR, Mã vạch, Siêu dữ liệu, Văn bản & Loại tem.

Tải xuống và cấu hình

Bạn có thể tải xuống JAR của API hoặc chỉ cần thêm cấu hình pom.xml sau vào các ứng dụng Java dựa trên Maven của bạn để thử các ví dụ mã được đề cập bên dưới.

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-signature</artifactId>
        <version>20.9</version> 
</dependency>

Ký tài liệu PDF bằng chữ ký số bằng Java

Bạn có thể ký điện tử các tài liệu PDF của mình bằng chữ ký điện tử bằng cách thực hiện theo các bước đơn giản được đề cập bên dưới:

  • Tạo một thể hiện của lớp Chữ ký
  • Cung cấp đường dẫn của tài liệu PDF
  • Tạo một thể hiện của lớp DigitalSignOptions
  • Cung cấp đường dẫn tệp chứng chỉ
  • Đặt đường dẫn tệp hình ảnh
  • Đặt các tùy chọn ký hiệu bắt buộc như vị trí (Trên cùng, Bên trái, v.v.)
  • Sau đó gọi phương thức Sign để ký tài liệu

Mẫu mã sau đây cho biết cách ký các tài liệu PDF bằng chứng chỉ bằng Java.

Signature signature = new Signature("sample.pdf");

// Xác định các tùy chọn ký hiệu kỹ thuật số  
DigitalSignOptions options = new DigitalSignOptions("Signature.pfx");
options.setImageFilePath("signature.jpg");
options.setLeft(100);
options.setTop(200);
options.setPageNumber(1);

// Ký tài liệu vào tập tin
signature.sign("output.pdf", options);
Ký tài liệu PDF bằng chứng chỉ kỹ thuật số bằng Java

Ký tài liệu PDF bằng chứng chỉ kỹ thuật số bằng Java

Lớp Chữ ký là lớp chính kiểm soát quá trình ký tài liệu. Lớp này cung cấp nhiều phương thức khác nhau để ký, xác minh, cập nhật và tìm kiếm chữ ký.

Lớp DigitalSignOptions cung cấp nhiều phương thức khác nhau để thiết lập và nhận các tùy chọn ký hiệu nhằm thể hiện chữ ký số.

Ký tài liệu Word bằng chữ ký số bằng Java

Bạn có thể ký điện tử vào tài liệu Word của mình bằng chữ ký điện tử bằng cách thực hiện theo các bước đơn giản được đề cập bên dưới:

  • Tạo một thể hiện của lớp Chữ ký
  • Cung cấp đường dẫn của file Word
  • Tạo một thể hiện của lớp DigitalSignOptions
  • Cung cấp đường dẫn tệp chứng chỉ
  • Đặt đường dẫn tệp hình ảnh
  • Đặt các tùy chọn ký hiệu bắt buộc như vị trí (Trên cùng, Bên trái, v.v.)
  • Sau đó gọi phương thức Sign để ký tài liệu

Mẫu mã sau đây cho biết cách ký vào tệp DOCX bằng chứng chỉ bằng Java.

Signature signature = new Signature("sample.docx");

// Xác định các tùy chọn ký hiệu kỹ thuật số  
DigitalSignOptions options = new DigitalSignOptions("Signature.pfx");
options.setImageFilePath("signature.jpg");
options.setPassword("1234567890");
options.setReason("Approved");
options.setContact("John Smith");
options.setLocation("New York");
options.setAllPages(true);
options.setWidth(160);
options.setHeight(80);
options.setTop(400);
options.setLeft(100);

// Ký tài liệu vào tập tin
signature.sign("output.docx", options);
Ký tài liệu Word bằng chứng chỉ kỹ thuật số bằng Java

Ký tài liệu Word bằng chứng chỉ kỹ thuật số bằng Java

Nhận giấy phép miễn phí

Bạn có thể dùng thử API mà không bị giới hạn đánh giá bằng cách yêu cầu giấy phép tạm thời miễn phí.

Phần kết luận

Trong bài viết này, bạn đã học cách ký điện tử các tài liệu có chữ ký số bằng Java. Bạn có thể tìm hiểu thêm về GroupDocs.Signature cho API Java bằng cách sử dụng tài liệu. Trong trường hợp có bất kỳ sự mơ hồ nào, vui lòng liên hệ với chúng tôi trên diễn đàn.

Xem thêm