Java QR-kód aláírásának megvalósítása GroupDocs.Signature for Java segítségével

Bevezetés

Növelje digitális dokumentumai biztonságát QR-kódok Java-alkalmazásokba ágyazásával. A GroupDocs.Signature for Java kihasználásával hatékonyan biztosíthatja a dokumentumok hitelességét és nyomon követhetőségét. Ez az útmutató végigvezeti Önt egyéni adataláírások létrehozásán, QR-kód aláírási beállítások konfigurálásán és dokumentumok robusztus titkosítással történő biztonságossá tételén.

Amit tanulni fogsz:

  • Egyéni adataláírás-osztály létrehozása a GroupDocs.Signature használatával
  • QR-kód aláírási beállításainak konfigurálása Java alkalmazásokban
  • Dokumentumok aláírása QR-kódokkal és egyéni titkosítás alkalmazása

Merüljünk el az előfeltételekben, és kezdjük el integrálni ezt a funkciót a projektjeidbe!

Előfeltételek

Mielőtt elkezdenénk, győződjünk meg arról, hogy beállítottuk a szükséges könyvtárakat és függőségeket a fejlesztői környezetben.

Szükséges könyvtárak és verziók

A GroupDocs.Signature Java-beli megvalósításához a következő függőséget kell belefoglalni:

Szakértő

<dependency>
    <groupId>com.groupdocs</groupId>
    <artifactId>groupdocs-signature</artifactId>
    <version>23.12</version>
</dependency>

Gradle

implementation 'com.groupdocs:groupdocs-signation:23.12'

A legújabb verziót közvetlenül innen is letöltheted GroupDocs.Signature Java kiadásokhoz.

Környezeti beállítási követelmények

  • Győződjön meg róla, hogy telepítve van egy működő Java fejlesztői készlet (JDK).
  • Állítsa be az integrált fejlesztői környezetét (IDE), például az IntelliJ IDEA-t vagy az Eclipse-t.

Ismereti előfeltételek

  • A Java programozás és az objektumorientált fogalmak alapjainak ismerete.
  • Jártasság a függőségek kezelésében Maven vagy Gradle használatával.

GroupDocs.Signature beállítása Java-hoz

Első lépésként állítsd be a GroupDocs.Signature-t a projektedben a fenti telepítési utasításokat követve, hogy belefoglald a build konfigurációjába.

Licencbeszerzés lépései

A GroupDocs különböző licencelési lehetőségeket kínál:

  • Ingyenes próbaverzió: Teszteld az összes funkciót korlátozás nélkül.
  • Ideiglenes engedélySzerezzen be egy engedélyt értékelési célokra.
  • Vásárlás: Teljes körű licenc beszerzése kereskedelmi használatra.

A letöltés után inicializáld a GroupDocs.Signature fájlt így:

import com.groupdocs.signature.Signature;

class InitializeGroupDocs {
    public static void main(String[] args) {
        Signature signature = new Signature("path/to/your/document");
        // Most már elkezdheti használni az aláírásobjektumot a dokumentumokkal való munkához.
    }
}

Megvalósítási útmutató

Bontsuk le a megvalósítási folyamatot kezelhető részekre, a főbb jellemzőkre összpontosítva.

Egyéni adataláírási osztály

Áttekintés

Hozz létre egy egyéni osztályt az aláírási adatok, például az azonosító, a szerző, az aláírás dátuma és további tényezők tárolására. Ez biztosítja, hogy minden szükséges metaadat benne legyen az aláírásokban.

Lépésről lépésre történő megvalósítás

Definiálja a DocumentSignatureData osztályt

import com.groupdocs.signature.domain.extensions.serialization.FormatAttribute;
import java.util.Date;
import java.math.BigDecimal;

class DocumentSignatureData {
    @FormatAttribute(propertyName = "SignID")
    public String ID; // Az aláírás egyedi azonosítója
    
    public String getID() { return ID; }
    public void setID(String value) { ID = value; }
    
    @FormatAttribute(propertyName = "SAuth")
    public final String Author; // A dokumentum szerzője
    
    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(); // Aláírás dátuma és időpontja
    
    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); // További adattényező az aláíráshoz
    
    public final BigDecimal getDataFactor() { return DataFactor; }
    public final void setDataFactor(BigDecimal value) { DataFactor = value; }
}

Magyarázat:

  • Formátumattribútum: Tulajdonságokat annotál a szerializálás testreszabásához.
  • TulajdonságokRögzítse a lényeges adatokat, például az egyedi azonosítót, a szerző nevét, az aláírás dátumát és az adattényezőt.

QR-kód aláírási beállítások konfigurálása

Áttekintés

A QR-kód aláírási beállításainak konfigurálásával meghatározhatja, hogy a QR-kódok hogyan jelenjenek meg a dokumentumokon, beleértve a méretet, az igazítást és a kitöltést.

Lépésről lépésre történő megvalósítás

A QrCodeSignOptionsConfig osztály definiálása

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();
        
        // Egyéni adatobjektum QR-kóddá alakítása
        options.setData(documentSignature);
        
        // Adja meg a QR-kód típusát
        options.setEncodeType(QrCodeTypes.QR);
        
        // Kitöltés konfigurálása az igazításhoz
        Padding padding = new Padding();
        padding.setRight(10); // Jobb oldali kitöltés képpontokban
        padding.setBottom(10); // Alsó kitöltés képpontokban
        options.setMargin(padding);
        
        // A QR-kód méretének és pozíciójának meghatározása
        options.setHeight(100);
        options.setWidth(100);
        options.setVerticalAlignment(VerticalAlignment.Bottom);
        options.setHorizontalAlignment(HorizontalAlignment.Right);
        
        return options;
    }
}

Magyarázat:

  • QR-kód jelbeállításai: A QR-kód megjelenítésének módját kezeli, beleértve a méretét és pozícióját.
  • PárnázásBeállítja az igazítást a dokumentumon belül.

Dokumentum aláírás QR-kóddal és egyéni titkosítással

Áttekintés

Kombinálja a QR-kódokat és az egyéni titkosítást a dokumentumok biztonságos aláírásához. Ez biztosítja az adatok integritását és bizalmas jellegét.

Lépésről lépésre történő megvalósítás

Dokumentum aláírása QR-kóddal

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);

            // Egyéni XOR titkosítási stratégia
            IDataEncryption encryption = new CustomXOREncryption();

            // Az egyéni dokumentum aláírás adatobjektumának konfigurálása
            DocumentSignatureData documentSignature = new DocumentSignatureData();
            documentSignature.setID(UUID.randomUUID().toString());
            documentSignature.setAuthor(System.getenv("USERNAME"));
            documentSignature.setSigned(new Date());
            documentSignature.setDataFactor(new BigDecimal("11.22"));

            // QR-kód beállításai
            QrCodeSignOptions options = QrCodeSignOptionsConfig.setupQrCodeSignOptions(documentSignature);

            // Titkosítás alkalmazása a QR-kódban található adatokra
            options.setDataEncryption(encryption);

            // Aláírja és mentse el a dokumentumot
            signature.sign(outputFilePath, options);
        } catch (Exception e) {
            throw new GroupDocsSignatureException(e.getMessage());
        }
    }
}

Magyarázat:

  • Egyéni XOR titkosítás: Egyéni titkosítási stratégiát valósít meg a QR-kód adatok védelmére.
  • UUID: Minden aláíráshoz egyedi azonosítót generál.