Bảo mật tài liệu của bạn: Triển khai chữ ký mã QR trong Java bằng GroupDocs.Signature
Trong bối cảnh kỹ thuật số ngày nay, việc đảm bảo an toàn cho các tài liệu như hợp đồng, hóa đơn hoặc thông tin cá nhân nhạy cảm là vô cùng quan trọng. Một phương pháp sáng tạo để tăng cường bảo mật tài liệu và đơn giản hóa quy trình xác minh là sử dụng chữ ký mã QR. Hướng dẫn này sẽ hướng dẫn bạn triển khai và xác minh chữ ký mã QR cho tài liệu của mình trong Java bằng GroupDocs.Signature.
Những gì bạn sẽ học được
- Cách ký tài liệu bằng Mã QR
- Xác minh tài liệu đã ký bằng Mã QR
- Tìm kiếm chữ ký Mã QR hiện có trong một tài liệu
- Cập nhật và xóa chữ ký mã QR khỏi tài liệu của bạn
Hãy thiết lập môi trường và bắt đầu thôi!
Điều kiện tiên quyết
Trước khi bắt đầu, hãy đảm bảo bạn có đủ các điều kiện tiên quyết sau:
Thư viện và phụ thuộc bắt buộc
Bạn sẽ cần GroupDocs.Signature cho Java. Bạn có thể tích hợp nó thông qua Maven hoặc Gradle, hoặc tải xuống trực tiếp.
Maven
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-signature</artifactId>
<version>23.12</version>
</dependency>
Gradle
implementation 'com.groupdocs:groupdocs-signature:23.12'
Tải xuống trực tiếp Tải xuống phiên bản mới nhất từ GroupDocs.Signature cho các bản phát hành Java.
Yêu cầu thiết lập môi trường
- Đảm bảo bạn đã cài đặt Java Development Kit (JDK) 8 trở lên.
- Sử dụng IDE như IntelliJ IDEA, Eclipse hoặc NetBeans.
Điều kiện tiên quyết về kiến thức
Hiểu biết cơ bản về lập trình Java và xử lý tài liệu sẽ rất có lợi.
Thiết lập GroupDocs.Signature cho Java
Để sử dụng GroupDocs.Signature trong dự án của bạn, hãy làm theo các bước sau:
Cài đặt: Chọn giữa Maven, Gradle hoặc tải xuống trực tiếp dựa trên thiết lập của bạn.
Mua lại giấy phép:
- Bắt đầu với bản dùng thử miễn phí có sẵn trên Trang web GroupDocs.
- Hãy cân nhắc việc xin giấy phép tạm thời để mở rộng thử nghiệm và phát triển từ đây.
Khởi tạo cơ bản: Sau đây là cách khởi tạo GroupDocs.Signature:
Signature signature = new Signature("YOUR_DOCUMENT_PATH");
Điều này giúp bạn chuẩn bị để triển khai chữ ký mã QR.
Hướng dẫn thực hiện
Ký tài liệu bằng chữ ký mã QR
Tổng quan
Việc ký tài liệu bằng Mã QR bao gồm việc nhúng một mã duy nhất đại diện cho chữ ký số của bạn. Quy trình này bảo mật tài liệu và cho phép dễ dàng xác minh tính xác thực của tài liệu sau này.
Bước 1: Thiết lập tùy chọn ký tên của bạn
import com.groupdocs.signature.Signature;
import com.groupdocs.signature.domain.enums.HorizontalAlignment;
import com.groupdocs.signature.domain.enums.VerticalAlignment;
import com.groupdocs.signature.options.sign.QrCodeSignOptions;
Signature signature = new Signature("YOUR_DOCUMENT_PATH");
QrCodeSignOptions signOptions = new QrCodeSignOptions("John Smith", com.groupdocs.signature.domain.qrcodes.QrCodeTypes.QR);
signOptions.setVerticalAlignment(VerticalAlignment.Top);
signOptions.setHorizontalAlignment(HorizontalAlignment.Center);
signOptions.setWidth(100);
signOptions.setHeight(40);
Giải thích: QrCodeSignOptions
được cấu hình để tạo Mã QR với văn bản và căn chỉnh cụ thể. Điều chỉnh chiều rộng và chiều cao nếu cần.
Bước 2: Tùy chỉnh giao diện chữ ký
import java.awt.Color;
signOptions.setForeColor(Color.RED); // Đặt màu mã QR
com.groupdocs.signature.domain.SignatureFont signatureFont = new com.groupdocs.signature.domain.SignatureFont();
signatureFont.setSize(12);
signatureFont.setFamilyName("Comic Sans MS");
signOptions.setFont(signatureFont);
Giải thích: Tùy chỉnh phông chữ và màu sắc giúp tăng cường khả năng nhận dạng trực quan.
Bước 3: Ký vào tài liệu
import java.util.ArrayList;
import java.util.List;
List<String> signatureIds = new ArrayList<>();
List<com.groupdocs.signature.domain.BaseSignature> signedSignatures = signature.sign("YOUR_OUTPUT_PATH", signOptions).getSucceeded();
for (com.groupdocs.signature.domain.BaseSignature temp : signedSignatures) {
signatureIds.add(temp.getSignatureId());
}
Giải thích: Bước này ký tài liệu và lưu trữ ID chữ ký để tham khảo sau này.
Xác minh tài liệu bằng chữ ký mã QR
Tổng quan
Việc xác minh đảm bảo tài liệu đã được ký hợp lệ. Sau đây là cách bạn có thể xác minh chữ ký mã QR trong tài liệu.
Bước 1: Thiết lập tùy chọn xác minh
import com.groupdocs.signature.Signature;
import com.groupdocs.signature.options.verify.QrCodeVerifyOptions;
Signature signature2 = new Signature("YOUR_OUTPUT_PATH");
QrCodeVerifyOptions verifyOptions = new QrCodeVerifyOptions();
verifyOptions.setEncodeType(QrCodeTypes.QR);
verifyOptions.setText("John Smith"); // Văn bản để xác minh
verifyOptions.setAllPages(false);
verifyOptions.setPageNumber(1);
Giải thích:Các tùy chọn xác minh chỉ định loại Mã QR và văn bản cần tìm, đảm bảo chữ ký phù hợp với mong đợi của bạn.
Bước 2: Thực hiện xác minh
boolean isValid = signature2.verify(verifyOptions).isValid();
System.out.println("Is Signature Valid? " + isValid);
Giải thích: Điều này sẽ kiểm tra xem tài liệu có chứa Mã QR hợp lệ phù hợp với tiêu chí của bạn hay không.
Tìm kiếm tài liệu cho chữ ký mã QR
Tổng quan
Đôi khi, việc tìm kiếm chữ ký hiện có trong tài liệu là cần thiết. Sau đây là cách bạn có thể tìm kiếm chúng bằng GroupDocs.Signature.
Bước 1: Cấu hình Tùy chọn Tìm kiếm
import com.groupdocs.signature.domain.signatures.QrCodeSignature;
import com.groupdocs.signature.options.search.QrCodeSearchOptions;
Signature signature2 = new Signature("YOUR_OUTPUT_PATH");
QrCodeSearchOptions searchOptions = new QrCodeSearchOptions();
searchOptions.setAllPages(true);
Giải thích: Thao tác này thiết lập công cụ để quét tất cả các trang để tìm chữ ký Mã QR.
Bước 2: Thực hiện tìm kiếm
List<QrCodeSignature> signatures = signature2.search(QrCodeSignature.class, searchOptions);
for (QrCodeSignature qrSignature : signatures) {
System.out.println("Found Signature ID: " + qrSignature.getSignatureId());
}
Giải thích: Thao tác này sẽ lấy tất cả chữ ký Mã QR được tìm thấy trong tài liệu.
Cập nhật chữ ký mã QR tài liệu
Tổng quan
Việc cập nhật chữ ký bao gồm việc thay đổi các thuộc tính của nó, chẳng hạn như vị trí hoặc kích thước. Sau đây là cách thực hiện:
Bước 1: Chuẩn bị chữ ký để cập nhật
import com.groupdocs.signature.domain.signatures.QrCodeSignature;
import java.io.ByteArrayOutputStream;
Signature signature2 = new Signature("YOUR_OUTPUT_PATH");
List<QrCodeSignature> signaturesToUpdate = new ArrayList<>();
// Giả sử 'chữ ký' là danh sách các đối tượng QrCodeSignature thu được từ việc tìm kiếm
for (QrCodeSignature qrSignature : signatures) {
qrSignature.setLeft(qrSignature.getLeft() + 100);
qrSignature.setTop(qrSignature.getTop() + 100);
qrSignature.setWidth(200);
qrSignature.setHeight(50);
signaturesToUpdate.add(qrSignature);
}
Giải thích: Điều này điều chỉnh vị trí và kích thước của mỗi chữ ký.
Bước 2: Cập nhật tài liệu
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
signature2.update(outputStream, signaturesToUpdate);
Giải thích: Tài liệu được cập nhật với chữ ký Mã QR đã sửa đổi.
Xóa chữ ký mã QR tài liệu theo ID
Tổng quan
Việc xóa chữ ký có thể cần thiết nếu chữ ký đó không còn cần thiết hoặc được thêm vào do nhầm lẫn. Sau đây là cách bạn có thể xóa chữ ký bằng ID duy nhất của nó.
Bước 1: Xác định chữ ký cần xóa
import com.groupdocs.signature.domain.SignatureCollection;
import java.util.Arrays;
SignatureCollection signaturesToDelete = signature2.search(QrCodeSignature.class);
Arrays.stream(signaturesToDelete).forEach(signature -> {
if (signature.getSignatureId().equals("YOUR_SIGNATURE_ID")) {
signature.delete();
}
});
Giải thích: Tính năng này sẽ tìm và xóa chữ ký Mã QR theo ID duy nhất của nó.
Phần kết luận
Hướng dẫn này đã hướng dẫn bạn cách bảo mật tài liệu bằng chữ ký mã QR trong Java với GroupDocs.Signature. Bằng cách làm theo các bước này, bạn có thể đảm bảo tài liệu của mình được ký an toàn và dễ dàng xác minh tính xác thực của chúng.