Implementace podepisování QR kódů v Javě pomocí GroupDocs.Signature pro Javu
Zavedení
Zvyšte zabezpečení svých digitálních dokumentů vložením QR kódů do svých Java aplikací. Využití GroupDocs.Signature pro Javu vám umožní efektivně zajistit pravost a sledovatelnost dokumentů. Tato příručka vás provede vytvářením vlastních datových podpisů, konfigurací možností podepisování QR kódů a zabezpečením dokumentů pomocí robustního šifrování.
Co se naučíte:
- Jak vytvořit vlastní třídu datového podpisu pomocí GroupDocs.Signature
- Konfigurace možností podepisování QR kódem v aplikacích Java
- Podepisování dokumentů pomocí QR kódů a použití vlastního šifrování
Pojďme se ponořit do předpokladů a začít tuto funkcionalitu integrovat do vašich projektů!
Předpoklady
Než začneme, ujistěte se, že máte ve svém vývojovém prostředí nastaveny potřebné knihovny a závislosti.
Požadované knihovny a verze
Pro implementaci GroupDocs.Signature pro Javu zahrňte následující závislost:
Znalec
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-signature</artifactId>
<version>23.12</version>
</dependency>
Gradle
implementation 'com.groupdocs:groupdocs-signation:23.12'
Nejnovější verzi si můžete také stáhnout přímo z GroupDocs.Signature pro verze Javy.
Požadavky na nastavení prostředí
- Ujistěte se, že máte nainstalovanou funkční sadu Java Development Kit (JDK).
- Nastavte si integrované vývojové prostředí (IDE), například IntelliJ IDEA nebo Eclipse.
Předpoklady znalostí
- Základní znalost programování v Javě a objektově orientovaných konceptů.
- Znalost práce se závislostmi pomocí Mavenu nebo Gradle.
Nastavení GroupDocs.Signature pro Javu
Chcete-li začít, nastavte GroupDocs.Signature ve svém projektu podle výše uvedených pokynů k instalaci a zahrňte jej do konfigurace sestavení.
Kroky získání licence
GroupDocs nabízí různé možnosti licencování:
- Bezplatná zkušební verzeOtestujte všechny funkce bez omezení.
- Dočasná licenceZískejte licenci pro účely hodnocení.
- NákupZískejte plnou licenci pro komerční použití.
Po stažení inicializujte GroupDocs.Signature takto:
import com.groupdocs.signature.Signature;
class InitializeGroupDocs {
public static void main(String[] args) {
Signature signature = new Signature("path/to/your/document");
// Nyní můžete začít používat objekt podpisu k práci s dokumenty.
}
}
Průvodce implementací
Rozdělme si implementační proces na zvládnutelné části se zaměřením na klíčové funkce.
Třída vlastního datového podpisu
Přehled
Vytvořte vlastní třídu pro ukládání dat podpisu, jako je ID, autor, datum podpisu a další faktory. Tím zajistíte, že budete mít všechna potřebná metadata zapouzdřená ve svých podpisech.
Postupná implementace
Definování třídy DocumentSignatureData
import com.groupdocs.signature.domain.extensions.serialization.FormatAttribute;
import java.util.Date;
import java.math.BigDecimal;
class DocumentSignatureData {
@FormatAttribute(propertyName = "SignID")
public String ID; // Jedinečný identifikátor podpisu
public String getID() { return ID; }
public void setID(String value) { ID = value; }
@FormatAttribute(propertyName = "SAuth")
public final String Author; // Autor dokumentu
public final String getAuthor() { return Author; }
public final void setAuthor(String value) { Author = value; }
@FormatAttribute(propertyName = "SDate", propertyFormat = "yyyy-MM-dd")
public final Date Signed = new Date(); // Datum a čas podpisu
public final Date getSigned() { return Signed; }
public final void setSigned(Date value) { Signed = value; }
@FormatAttribute(propertyName = "SDFact", propertyFormat = "N2")
public final BigDecimal DataFactor = new BigDecimal(0.01); // Dodatečný datový faktor pro podpis
public final BigDecimal getDataFactor() { return DataFactor; }
public final void setDataFactor(BigDecimal value) { DataFactor = value; }
}
Vysvětlení:
- Atribut formátuAnotuje vlastnosti pro přizpůsobení serializace.
- NemovitostiZaznamenejte si důležité údaje, jako je jedinečné ID, jméno autora, datum podpisu a datový faktor.
Konfigurace možností podpisu QR kódem
Přehled
Nakonfigurujte možnosti podepisování QR kódů a definujte, jak se vaše QR kódy budou zobrazovat v dokumentech, včetně velikosti, zarovnání a odsazení.
Postupná implementace
Definování třídy QrCodeSignOptionsConfig
import com.groupdocs.signature.domain.enums.HorizontalAlignment;
import com.groupdocs.signature.domain.enums.VerticalAlignment;
import com.groupdocs.signature.domain.qrcodes.QrCodeTypes;
import com.groupdocs.signature.domain.Padding;
import com.groupdocs.signature.options.sign.QrCodeSignOptions;
class QrCodeSignOptionsConfig {
public static QrCodeSignOptions setupQrCodeSignOptions(DocumentSignatureData documentSignature) {
QrCodeSignOptions options = new QrCodeSignOptions();
// Serializovat vlastní datový objekt do QR kódu
options.setData(documentSignature);
// Zadejte typ QR kódu
options.setEncodeType(QrCodeTypes.QR);
// Konfigurace odsazení pro zarovnání
Padding padding = new Padding();
padding.setRight(10); // Pravé odsazení v pixelech
padding.setBottom(10); // Spodní odsazení v pixelech
options.setMargin(padding);
// Definujte velikost a umístění QR kódu
options.setHeight(100);
options.setWidth(100);
options.setVerticalAlignment(VerticalAlignment.Bottom);
options.setHorizontalAlignment(HorizontalAlignment.Right);
return options;
}
}
Vysvětlení:
- Možnosti znamení QrKódu: Spravuje způsob zobrazení QR kódu, včetně jeho velikosti a umístění.
- VýplňUpraví zarovnání v dokumentu.
Podepisování dokumentů pomocí QR kódu a vlastního šifrování
Přehled
Kombinujte QR kódy a vlastní šifrování pro bezpečné podepisování dokumentů. Tím je zajištěna integrita a důvěrnost dat.
Postupná implementace
Podepsat dokument pomocí QR kódu
import com.groupdocs.signature.Signature;
import com.groupdocs.signature.domain.extensions.encryption.IDataEncryption;
import com.groupdocs.signature.exception.GroupDocsSignatureException;
import java.util.UUID;
class SignDocumentWithQRCode {
public static void signDocument(String filePath, String outputFilePath) throws Exception {
try {
Signature signature = new Signature(filePath);
// Vlastní strategie šifrování XOR
IDataEncryption encryption = new CustomXOREncryption();
// Konfigurace vlastního datového objektu podpisu dokumentu
DocumentSignatureData documentSignature = new DocumentSignatureData();
documentSignature.setID(UUID.randomUUID().toString());
documentSignature.setAuthor(System.getenv("USERNAME"));
documentSignature.setSigned(new Date());
documentSignature.setDataFactor(new BigDecimal("11.22"));
// Možnosti nastavení QR kódu
QrCodeSignOptions options = QrCodeSignOptionsConfig.setupQrCodeSignOptions(documentSignature);
// Použijte šifrování na data v QR kódu
options.setDataEncryption(encryption);
// Podepište a uložte dokument
signature.sign(outputFilePath, options);
} catch (Exception e) {
throw new GroupDocsSignatureException(e.getMessage());
}
}
}
Vysvětlení:
- VlastníXOREncyfryImplementuje vlastní šifrovací strategii pro zabezpečení dat QR kódů.
- UUID: Generuje jedinečný identifikátor pro každý podpis.