如何创建word文件的唯一身份标识并且文件可编辑

我需要针对某个word文件创建该文件的唯一身份标识,并且这个文件是部分可编辑的,其他内容被保护,当用户下载这个文件后进行本地编辑后上传,我希望通过这个唯一身份标识来进行校验当前上传文件是否源于当时下载的文件。

我尝试使用 DigitalSignature 数字签名,但是使用数字签名后内容不能编辑,如果进行编辑则需删除数字签名。

public static void main(String[] args) {
    try {
        CertificateHolder certificateHolder = CertificateHolder.create("E:/cert.pfx", "123456", null);
        DigitalSignatureUtil.sign("E:/test.docx", "E:/test1.docx", certificateHolder, "comments123456", new Date());
    } catch (Exception e) {
        log.info("处理异常:", e);
    }
}

@whitemeen 您可以尝试使用自定义文档属性来指定自定义文档 ID。 例如看下面的代码:

Document doc = new Document("C:\\Temp\\in.docx");
// Set custom property
doc.getCustomDocumentProperties().add("custom_id", "1234567800");
doc.save("C:\\Temp\\out.docx");

// open document and check custom property.
Document doc1 = new Document("C:\\Temp\\out.docx");
System.out.println(doc.getCustomDocumentProperties().get("custom_id"));