Microsec XSign4JAVA fejlesztői leírás

Verzió:3.3.1.16

Dokumentum tartalma

Az alábbi dokumentáció az XSign4Java aláíró modul leírása fejlesztők részére. Jelen dokumentum részletes leírást ad a Java osztályok felhasználásáról és felületéről, továbbá leírja a futtató környezettel szemben támasztott követelményeket. Ez a dokumentáció nem értekezik olyan programozási kérdésekről, ami nem kapcsolódik szorosan a modul használatához.

Csomag

Ez a dokumentáció és a fejlesztőeszközök egy terjesztési csomagban jutnak el a fejlesztőkhöz.

Az XSign4Java fejlesztésével kapcsolatos tartalma a csomagnak:

Regisztráció

Az XSign4Java modul működése függ attól, hogy regisztrálva van-e a komponens.

Regisztrálatlan működés

A modul kizárólag a Microsec e-Szignó Hitelesítés Szolgáltató által kibocsátott teszt tanúsítványokkal képes működni. Ezen esetben is meg kell adni egy teszt regisztrációs fájlt, amit minden fejlesztői csomagba mellékelünk. Az XSign4Java csomagjában található teszt tanúsítványok alkalmasak a teszt regisztrációval való együttműködésre. A Csomag című alfejezetben részletes információt találhat a fejlesztői csomag tartalmáról. A csomagban található teszt tanúsítványokon kívül személyre szabott teszt tanúsítványokat is igényelhet térítésmentesen a http://srv.e-szigno.hu/menu/index.php?lap=teszt_bevezeto linken.

Regisztrált működés

A regisztrált működés két módon érhető el:

A regisztráció díjköteles. Az aktuális árakról érdeklődjön az ügyfélszolgálatunknál. Regisztrált modul használata esetén bármely hitelesítés szolgáltató tanúsítványaival és bármely időbélyeg szolgáltatással működik a program.

Használat

Több szálon történő naplózás

Több szálú használat esetén a Session::setLogFilePath(), Session::setLogFilePathAndLogLevel() és Session::CloseLogFilePath() használatával szálankénti naplózást lehet beállítani.

Abban az esetben, ha egy szál nem állít be naplózást, akkor a fő szál naplózási beállításait használja. A Session::forkInstance() a szülő szál naplózási beállításait csak akkor másolja, ha a gyermek szálban még nincs beállított naplózás.

Minden szál ami állít naplózást, a megnyitott naplófájl felszabadításához meg kell hogy hívja a Session::CloseLogFilePath(). Session::forkInstance() használata esetén a Session::releaseInstance() hívás elvégzi ezt a felszabadítást.
Ha több szál ugyanazt a naplófájl-t állítja be, akkor a nalplózás szálbiztos.

Egy naplófájlhoz -még ha több szál külön állítja is be- csak egy naplózási szint tartozhat.

Az osztályok leírása

class XSRException

A modul legtöbb függvénye XSRException-t dob, ha működése közben hiba történt. A kivétel tartalmaz egy hibakódot, mely meghatározza, hogy mi volt a hiba oka.

Tagfüggvények

public long getErrorCode()

A metódus segítségével kinyerhetjük a kivételből, hogy mi volt a hiba pontos oka.

Visszatérési érték

A hibát meghatározó hibakód. Lehetséges értékei a következő fejezetben meghatározott hibakódok.

class XSRException.XSignErrorCode

A hibakódokat tartalmazó osztály.

Tagváltozók

public static long OK = 0;
A metódus futása közben nem történt hiba. Ilyen hibakóddal kivételt nem dob a program!

public static long ARGUMENTS_BAD = 1;
A metódus bemeneti paraméterei helytelenek, vagy nem várt bemeneti paraméter érkezett. Ezért a futás végrehajtás előtt leáll.

public static long FUNCTION_FAILED = 2;
A metódus futása közben hiba keletkezett, ezért a futás leáll. A hiba oka nem definiált.

public static long INVALID_HANDLE_ERROR = 3;
A metódusnak paraméterként átadott handle érvénytelen. Ennek egyik oka lehet, hogy az adott handle-t már fölszabadították.

public static long FILE_READ_ERROR = 4;
A bemeneti fájlt nem lehet olvasni. Ez a hiba akkor jöhet, ha a fájl nem található vagy a fájlt más folyamat már olvassa.

public static long FILE_WRITE_ERROR = 5;
A kimeneti fájlt nem lehet írni. Ez a hiba akkor jöhet, ha a fájl nem található vagy a fájl írásvédett.

public static long OUT_OF_MEMORY = 6;
A függvény futása közben nem sikerült egy memóriafoglalási művelet. Ennek oka lehet, hogy nincs elég memória.

public static long MODULE_NOT_FOUND = 7;
Az XSign4Java futtatásához szükséges modul hiányzik, vagy nem érhető el. Probléma oka általában, hogy az xsign4java.dll/so vagy ennek függőségét nem tudja betölteni az alkalmazás.

public static long NOT_INITIALIZED = 8;
Használat előtt inicializálni kell az XSign4Java-t, amennyiben ez nem történik meg, ez a kivétel dobódhat bizonyos függvények meghívása esetén.

public static long ACTION_CANCELLED = 9;
Amennyiben a felhasználó megszakítja a működést, akkor ezt a kivételt dobja a metódus.

public static long CERTIFICATE_INVALID = 10;
A folyamatban használt tanúsítvány érvénytelen. Ennek az lehet az oka, hogy a gyökér tanúsítvány ismeretlen, a tanúsítvány vissza van vonva vagy a tanúsítvány lejárt.

public static long INCOMPLETE_VALIDATION = 11;
A tanúsítvány érvényességének ellenőrzése nem volt teljes. Ezen hibaüzenet esetén az aláírás sikeresen elkészül, de az aláírási folyamat nem teljes. Ennek számos oka lehet. Például nem sikerült időbélyeget kérni az aláírásra, vagy az OCSP szolgáltató nem volt elérhető.

public static long END_OF_ITERATION = 12;
Ha dokumentumot, vagy aláírást (időbélyeget) keresünk iteráció segítségével, akkor ez a hibakód jelzi az iteráció végét, azaz nincs több elem a listában.

public static long NOT_A_DOSSIER = 13;
Ha különálló aláírást vagy nem e-aktát próbálunk e-aktaként megnyitni, akkor ilyen kivételt dob a modul.

public static long NOT_IMPLEMENTED = 14;
A meghívott funkcionalitás az adott operációs rendszeren nincs implementálva.

public static long NOT_REGISTERED = 15;
A funkció használatához szükséges a regisztrált e-Szignó használata.

public static long INPUT_NOT_XML = 16;
A bemenet XML állományt vár, de más formátum érkezett.

public static long SIGNATURE_CORRUPT = 17;
Az aláírás sérült.

public static long INVALID_OPERATION = 18;
Nem megengedett művelet.

public static long BAD_PIN = 19;
Hibás PIN-kód.

public static long NO_SUCH_FILE = 20;
A keresett file vagy könyvtár nem található.

public static long PROTOCOL_ERROR = 21;
A protokoll futása során hiba lépett fel.

public static long PDF_SETTINGS_ERROR = 22;
A pdf beállításai hibásak.

public static long BAD_FILE_FORMAT = 23;
A fájl formátuma hibás.

public static long CERT_NOT_REGISTERED = 24;
A tanúsítvány nem használható a jelenlegi e-Szignó regisztrációval.

public static long BAD_USER_PASS = 25;
Hibás felhasználónév vagy jelszó.

static class Session.HowSilent

A Session.setWorkSilent(long howSilent) metódus segítségével állíthatjuk be, hogy mennyi üzenet jusson ki a modulból a felhasználó felé. Ez az osztály definiálja a paraméter lehetséges értékeit.

Tagváltozók

public static long NON_SILENT = 0;
Minden üzenet megjelenik.

public static long SILENT = 1;
Az üzenetek nem jelennek meg a képernyőn, kivéve, ha valamely szükséges beállítás (pl. aláírói vagy autentikációs tanúsítvány, HTTP kapcsolódási jelszó) hiánya miatt a művelet végrehajtása sikertelen lenne. Ezen esetben a megfelelő kiválasztó ablak megjelenik.

public static long FORCE_SILENT = 2;
Semmilyen ablakot és üzenetet nem küld a modul, akkor sem, ha emiatt meghiúsul a művelet végrehajtása.

public static long SILENT_WITH_STATUS = 3;
Az üzenetek nem jelennek meg a képernyőn, kivéve, ha valamely szükséges beállítás (pl. aláírói vagy autentikációs tanúsítvány, HTTP kapcsolódási jelszó) hiánya miatt a művelet végrehajtása sikertelen lenne. Ezen esetben a megfelelő kiválasztó ablak megjelenik. A status üzeneteket a Session.setStatusCallback() metódussal beállított callbackre küldi.

public static long FORCE_SILENT_WITH_STATUS = 4;
Semmilyen ablakot és üzenetet nem küld a modul, akkor sem, ha emiatt meghiúsul a művelet végrehajtása, ezzel szemben a status üzeneteket a Session.setStatusCallback() metódussal beállított callbackre küldi.

static class Session.XAdESType

Az elkészülő aláírások a XAdES szabványnak felelnek meg. A szabvány meghatároz számos aláírás típust. Ez az osztály az egyes aláírás típusokat írja le. Aláírás készítésekor be kell állítanunk a készíteni kívánt aláírás típust. Lásd Session.setXAdESType(int xadesType) metódus. Az elkészült aláírásokról meg tudjuk állapítani a XAdES típusát.

Figyelem: A legújabb szabvány szerinti típusok a SignatureLevel osztályban találhatóak meg!

Tagváltozók

  • 0 – NON_XADES nem XAdES típusú aláírás
  • 1 - XADES_BES alap aláírás, ez nem tartalmaz időbélyeget
  • 2 - XADES_EPES alap aláírás aláírási szabályzattal
  • 3 - XADES_T egy időbélyeges aláírás
  • 4 - XADES_C ellenőrzési adatok csatolása - ez a típus létrehozáskor ill. kibővítéskor nem adható meg!
  • 5 - XADES_X ellenőrzési adatok védelme időbélyeggel - ez a típus létrehozáskor ill. kibővítéskor nem adható meg!
  • 6 - XADES_X_L ellenőrzési adatok védelme időbélyeggel - ez a típus létrehozáskor ill. kibővítéskor nem adható meg!
  • 7 - XADES_A teljes aláírás védelme archív időbélyeggel

public class CommitmentType

XAdES szabványban definiált aláírói kötelezettség-vállalás lehetséges értékeit tartalmazza.

Akár a Dossier, akár a Document osztályok signWithProperties metódusának commitmentType paraméterében használandó.

Tagváltozók

  • String PROOF_OF_ORIGIN http://uri.etsi.org/01903/v1.2.2#ProofOfOrigin – eredet igazolása
  • String PROOF_OF_RECEIPT http://uri.etsi.org/01903/v1.2.2#ProofOfReceipt – átvételi elismervény
  • String PROOF_OF_DELIVERY http://uri.etsi.org/01903/v1.2.2#ProofOfDelivery – kézbesítés igazolása
  • String PROOF_OF_SENDER http://uri.etsi.org/01903/v1.2.2#ProofOfSender – elküldés igazolása
  • String PROOF_OF_APPROVAL http://uri.etsi.org/01903/v1.2.2#ProofOfApproval – jóváhagyás
  • String PROOF_OF_CREATION http://uri.etsi.org/01903/v1.2.2#ProofOfCreation – létrehozás igazolása

static class Session.SignatureLevel

A legújabb szabvány szerinti baseline típusú aláírástípust leíró osztály. Beállítása a Session.setSignatureLevel(int sigLevel) metódus segítségével történik.

Tagváltozók

  • 0 – SIGLEVEL_UNDEF nem baseline aláírás
  • 1 - SIGLEVEL_B_B alap aláírás, ez nem tartalmaz időbélyeget
  • 2 - SIGLEVEL_B_T időbélyeges aláírás
  • 3 - SIGLEVEL_B_LT long-term típusú időbélyeges aláírás
  • 4 - SIGLEVEL_B_LTA archív típusú aláírás
  • 5 - SIGLEVEL_E_BES alap aláírás (extended)
  • 6 - SIGLEVEL_E_EPES alap aláírás (extended)
  • 7 - SIGLEVEL_E_T időbélyeges aláírás (extended)
  • 8 - SIGLEVEL_E_X ellenőrzési adatok védelme időbélyeggel (extended) - ez a típus létrehozáskor ill. kibővítéskor nem adható meg!
  • 9 - SIGLEVEL_E_X_L ellenőrzési adatok védelme időbélyeggel (extended) - ez a típus létrehozáskor ill. kibővítéskor nem adható meg!
  • 10 - SIGLEVEL_E_A archív aláírás (extended)

static class Session.RevocationCheckingMode

Az osztály definiálja a visszavonási információk beállításának lehetséges értékeit.

Tagváltozók

public static long OFF = 0;
A visszavonási információk ellenőrzése ki van kapcsolva.

public static long CRL = 1;
A visszavonás-ellenőrzés CRL alapján történik.

public static long OCSP = 2;
A visszavonás-ellenőrzés OCSP alapján történik.

public static long OCSP_OR_CRL = 3;
A visszavonás-ellenőrzést először OCSP alapján próbálja meg elintézni az alkalmazás, amennyiben ez nem volt sikeres CRL alapján próbál visszavonást ellenőrizni.

static class Session.HostCertAuthData

Az időbélyeg és OCSP szolgáltatás használata autentikációt igényel. Az azonosítás lehet felhasználónév/jelszó vagy tanúsítvány alapú. Ezen osztály segítségével állíthatjuk be, hogy egy adott szerverhez milyen tanúsítvány alapú azonosítást szeretnénk használni.

Tagfüggvények

public void HostCertAuthData(String hostName, String pfxPath, String pfxPassword);

Ezen függvény segítségével állíthatjuk be az objektumnak, hogy milyen azonosítási adatokkal rendelkezünk.

Paraméterek:

  • String hostName – Bemeneti paraméter. Azon szerver neve, melyhez csatlakozni szeretnénk.
  • String pfxPath – Bemeneti paraméter. Azonosításhoz használni kívánt PFX fájl neve
  • String pfxPassword – Bemeneti paraméter. Azonosításhoz használni kívánt PFX fájlhoz tartozó jelszó.

static class Session.HostBasicAuthData

Az időbélyeg és OCSP szolgáltatás használata autentikációt igényel. Az azonosítás lehet felhasználónév/jelszó vagy tanúsítvány alapú. Ezen osztály segítségével állíthatjuk be, hogy egy adott szerverhez milyen felhasználónév/jelszó (basic) alapú azonosítást szeretnénk használni.

Tagfüggvények

public void HostBasicAuthData(String hostName, String userName, String password);

Ezen függvény segítségével állíthatjuk be az objektumnak, hogy milyen azonosítási adatokkal rendelkezünk.

Paraméterek:

  • String hostName – Bemeneti paraméter. Azon szerver neve, melyhez csatlakozni szeretnénk.
  • String userName – Bemeneti paraméter. Azonosításhoz használni kívánt felhasználó név.
  • String password – Bemeneti paraméter. Azonosításhoz használni kívánt jelszó.

static class Session.ProxySettings

A Session.setProxy(ProxySettings proxySettings) metóduson keresztül adhatóak meg a proxy beállítások. A Session.ProxySettings osztály a proxy beállításokat tartalmazza.

Tagfüggvények

public ProxySettings(String host, int port, boolean byPassProxyForLAN, String userName, String passWord)

Egy új ProxySettings példány hoz létre, és a paramétereknek megfelelően beállítja az attribútumokat.

Paraméterek:

  • String host – Bemeneti paraméter. A proxy szerver címe.
  • int port – Bemeneti paraméter. A proxy szerver portja.
  • boolean bypassProxyForLAN – Bemeneti paraméter. Segítségével beállíthatjuk, hogy helyi címekre is érvényes legyen-e a proxy beállítás. True érték esetén, figyelmen kívül hagyja az alkalmazás a proxy beállításokat a helyi címek esetén.
  • String userName – Bemeneti paraméter. Amennyiben a proxy szerver felhasználó azonosítást követel meg, ebben a változóban kell megadnia felhasználónevet.
  • String passWord – Bemeneti paraméter. Amennyiben a proxy szerver felhasználó azonosítást követel meg, ebben a változóban kell megadnia jelszót.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

static class Session.DigestAlgorithm

Az osztály definiálja a használható lenyomatképző algoritmus beállításának lehetséges értékeit.

Tagváltozók

public static long SHA_1 = 1;
SHA1 lenyomatképző algoritmus.

public static long SHA_256 = 3;
SHA256 lenyomatképző algoritmus.

public static long SHA_384 = 4;
SHA384 lenyomatképző algoritmus.

public static long SHA_512 = 5;
SHA512 lenyomatképző algoritmus.

static class Session.RefType

Az osztály definiálja a Session.setDefaultSigningCert(), a Session.setDefaultTSAuthCert() és a Session.setDefaultOCSPAuthCert() metódusokban megadható referencia stringek típusait.

Tagváltozók

public static long SHA_1_FINGERPRINT = 0;
A referencia értéke a tanúsítvány SHA-1 lenyomatát (20 bájt) tartalmazza hexadecimális formában, bájtonként szóközzel elválasztva (pl. „a0 61 89 a6 66 85 61 5c 75 30 66 c1 e7 5e bd e4 3e 1b d7 6a”). A Windows tanúsítványmegjelenítője ebben a formában mutatja a lenyomatot.

static class Session.XAdESVersion

Az osztály definiálja a Session.setXAdESVersion() metódusban megadható XAdES verzió értékeket.

Tagváltozók

public static long XADES_VERSION_1_2_2 = 0;
A használandó XAdES verzió az 1.2.2-es.

public static long XADES_VERSION_1_3_2 = 1;
A használandó XAdES verzió az 1.3.2-es.

public static long XADES_VERSION_1_4_1 = 2;
A használandó XAdES verzió az 1.4.1-es.

public static long XADES_VERSION_1_4_2 = 3;
A használandó XAdES verzió az 1.4.2-es. (Ez az alapértelmezett érték.)

public static long XADES_VERSION_EN_1_0_0 = 4;
A használandó XAdES verzió az EN-1.0.0, mely már tartalmazza a baseline/extended típusú kapcsolók leírását is.

static class Session.PKCS11KeyRefType

Az osztály definiálja a Session.setEncryptingKeyPKCS11() metódusban megadható kulcs referencia típusok értékeit.

Tagváltozók

  • public static long CN = 1;
    A tanúsítványban Subject-ében lévő CommonName-t jelenti.
  • public static long SHA1_FINGERPRINT = 2;
    A tanúsítvány SHA-1-es ujjlenyomatát jelenti.

static class Session.OutputEncoding

Az osztály definiálja a Session.setOutputEncoding() metódusban megadható kódolási értékeket.

Tagváltozók

  • public static long LOCAL = 0;
    A használandó kódolás a lokális. (Ez az alapértelmezett érték.)
  • public static long UTF8 = 1;
    A használandó kódolás UTF-8.

static class Session.AddTimestamp

Az osztály definiálja a Dossier.validate() metódus int addTimestamp paraméterében megadható értékeket.

Tagváltozók

  • public static int ADD_TIMESTAMP_NONE = 0;
    ne adjon újabb időbélyeget az aláíráshoz
  • public static int ADD_TIMESTAMP_SIGNATURE = 1;
    SignatureTimeStamp elemet illeszt be
  • public static int ADD_TIMESTAMP_REFS = 2;
    SigAndRefsTimeStamp vagy RefsOnlyTimeStamp elemet illeszt be
  • public static int ADD_TIMESTAMP_ARCHIVE = 3;
    ArchiveTimeStamp elemet illeszt be
  • public static int ADD_TIMESTAMP_EXTRA = 4;
    egy új időbélyeget illeszt be, ha az aláírás eléri a beállított XAdES típust

static class Session.XmlId

Egy XML elem attribútumát reprezentálja, amelyet ID típusúként kell kezelnie az XSign4Java-nak.

Tagfüggvények

public Session.XmlId(String sElementNSHref, String sElementName, String sAttributeNSHref, String sAttributeName);

Egy új XmlId példányt hoz létre, és a paramétereknek megfelelően beállítja az attribútumokat.

Paraméterek:

  • String sElementNSHref – az elem névtere
  • String sElementName – at elem neve
  • String sAttributeNSHref – az attribútum névtere
  • String sAttributeName – az attribútum neve

static class SigRequirementsLevel

Az osztály definiálja a Session. setOnlyQualifiedSignatures() metódus long val paraméterében megadható értékeket.

Tagváltozók

  • public final static long QCERT_ALL = 0;
    A modul minden tanúsítványt elfogad.
  • final static long QCERT = 2;
    A modul csak minősített tanúsítványokat fogad el, de nem szükséges, hogy a tanúsítványhoz tartozó privátkulcsok BALE eszközön legyenek.
  • final static long QCERT_SSCD = 1;
    A modul csak minősített tanúsítványokat fogad el, és a tanúsítványhoz tartozó privátkulcsoknak BALE eszközön kell lennie.

static class Dossier.ValidationResult

Az osztály definiálja a Dossier.validate() metódus visszatérési értékét.

Tagváltozók

  • public long value;
    a validálás eredményének hibakódja; lásd: class XSRException.XSignErrorCode
  • public byte[] output;
    a validálás eredményének XML kimenete

static class Dossier.MelaszReadyVersion

Az osztály definiálja a Session.setMelaszReadyVersion() metódus paramétereként megadható értékeket.

Tagváltozók

  • public static int MELASZ_READY_NONE = 0;
    A MELASZ Ready verziója nincs követelmény.
  • public static int MELASZ_READY_1_0 = 1;

    Az e-Szignó a friss ARL-ek (Authority Revocation List – Hitelesítés-szolgáltatói Visszavonási Lista) kibocsátását nem várja meg, és az OCSP válaszok ellenőrzésénél 30 perces kivárási időt alkalmaz. További érintett beállítások:

    • Kimeneti kódolás: UTF-8. (Ellenőrzéskor nincs hatása, tehát elfogad egyéb kódolású XML-t is.)
    • Inkluzív XML kanonizálás. (http://www.w3.org/TR/2001/REC-xml-c14n-20010315) Nem kerül ellenőrzésre.
    • Kivárási idő alkalmazása.
    • A dokumentumokat nem tömöríti az e-Szignó. Nem kerül ellenőrzésre.
    • A XAdES verzió értéke 1.2.2. Nem kerül ellenőrzésre.
  • public static int MELASZ_READY_2_0 = 2;

    A következő beállítások és értékek módosulnak:

    • Az aktába bekerül a http://www.melasz.hu/uri/ready/xades/v.2.0.0http://www.melasz.hu/uri/ready/xades/v.2.0.0 hivatkozás XML megjegyzésként. Nem kerül ellenőrzésre.
    • Az e-Szignó a friss ARL-ek (Authority Revocation List – Hitelesítés-szolgáltatói Visszavonási Lista) kibocsátását nem várja meg.
    • Kimeneti kódolás: UTF-8. (Ellenőrzéskor nincs hatása, tehát elfogad egyéb kódolású XML-t is.)
    • Inkluzív XML kanonizálás. (http://www.w3.org/TR/2001/REC-xml-c14n-20010315) Nem kerül ellenőrzésre.
    • Visszavonás ellenőrzésnél kivárási időt alkalmaz.
    • 1.3.2-es verziójú XAdES aláírást készít. Nem kerül ellenőrzésre.
    • A dokumentumokat nem tömöríti az e-Szignó. Nem kerül ellenőrzésre.

static class Session.ReferenceCanonicalizationMethod

Az osztály definiálja a Session.setReferenceCanonicalizationMethod() metódus paramétereként megadható értékeket.

Tagváltozók

  • public static int XS_REF_CAN_C14N_INCL = 0;
    Inkluzív kanonizáció
  • public static int XS_REF_CAN_C14N_INCL_WC = 1;
    Inkluzív kanonizáció megjegyzéssel
  • public static int XS_REF_CAN_C14N_EXCL = 2;
    Exkluzív kanonizáció
  • public static int XS_REF_CAN_C14N_EXCL_WC = 3;
    Exkluzív kanonizáció megjegyzéssel

static class Session.TSLUsage

Az osztály definiálja a Session.setTSLUsage() metódus paramétereként megadható értékeket.

Tagváltozók

  • public static int XS_DONT_USE_TSL = 0;
    Nem használ az alkalmazás TSL-t.
  • public static int XS_USE_ONLY_TSL = 1;
    Az alkalmazás csak TSL-t használ.
  • public static int XS_USE_TSL = 2;
    Az alkalmazás TSL-t és más forrásokat is használ a láncépítés során.

class Session

A működés alapegysége, ezen keresztül végezhető el a legtöbb globális beállítás, így például az időbélyeg szolgáltatók URL listájának megadása vagy az aláírás típus megadása. Használat előtt inicializálni kell. Egy session-höz több elektronikus akta is tartozhat párhuzamosan. Ezen e-akták mindegyikére vonatkoznak a session beállításai.

Az osztály singleton-ként van implementálva, ezért a Session.getInstance() függvény használatával kérhetünk példányokat az osztályról. Használat előtt a Session.setLocale(String locale) és a Session.initialize(String workDir, String regFilePath) függvényeket meg kell meghívni. Implementációs sajátosság, hogy annak ellenére, hogy a különböző szálakban a forkInstance() hívás után különböző beállítások (pl. időbélyeg URL-ek) használhatók, a Session singleton objektum Java szinten minden szálból azonos, mivel az XSign a beállításokat natív szinten különíti el.

Tagfüggvények

public static Session getInstance();

A Session osztály egy példányát kérhetjük le ezen függvény segítségével. A Session osztály singleton-ként van implementálva, ezért csak egy példányt kérhetünk le.

Visszatérési érték

A Session osztály egy példánya a visszatérési érték.

Kivétel:

Amennyiben valamiért nem sikerül létrehozni a session osztály egy példányát, akkor standard JAVA kivételeket dob a modul. Például, ha az xsign4java.dll-t nem tudja betölteni, akkor UnsatisfiedLinkError kivétel dobódik.

public setLocale(String locale)

A Session használata előtt be kell állítani a státuszüzenetek nyelvét e metódus segítségével.

Paraméterek:

String locale – Bemeneti paraméter. A státuszüzenetek nyelve. Lehetséges értékei:

  • „hun” – Magyar
  • „eng” – Angol
  • „ger” – Német

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public void initialize(String workDir, String regFilePath)

Az XSign4Java modult használat előtt inicializálni kell az initialize() függvények valamelyikének segítségével (SDK jelszavas regisztráció esetén az initialize(String workDir, String regFilePath, String sdkPassword) metódus használandó. A bemeneti paraméterben megadott könyvtárba ideiglenes fájlokat fog elhelyezni a program, ezért oda írási jogosultságának kell lennie.

Az inicializálást csak a Session.setLocale(String locale) és a Session.getInstance() függvényhívások előzhetik meg.

Paraméterek:

  • String workDir – Bemeneti paraméter. A munkakönyvtárat adja meg.
  • String regFilePath – Bemeneti paraméter. A modulhoz tartozó regisztrációs fájlt kell megadni, részletek a regisztrációról szóló fejezetben találhatók.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public void initialize(String workDir, String regFilePath, String sdkPassword)

SDK jelszavas regisztráció esetén az XSign4Java modult használat előtt ezen függvény segítségével kell inicializálni. A bemeneti paraméterben megadott könyvtárba ideiglenes fájlokat fog elhelyezni a program, ezért oda írási jogosultságának kell lennie.

Az inicializálást csak a Session.setLocale(String locale) és a Session.getInstance() függvényhívások előzhetik meg

Paraméterek:

  • String workDir – Bemeneti paraméter. A munkakönyvtárat adja meg.
  • String regFilePath – Bemeneti paraméter. A modulhoz tartozó regisztrációs fájlt kell megadni, részletek a regisztrációról szóló fejezetben találhatók.
  • String sdkPassword – Bemeneti paraméter. Az SDK jelszó adható meg a segítségével.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public void unInitialize()

Az XSign4Java modul használata után kell meghívni ezt a metódust.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public Dossier newDossier();

Új e-aktát hoz létre. A korábban létrehozott e-aktákat nem érinti az új e-akta létrehozása; azaz több e-aktán is lehet párhuzamosan dolgozni. Az e-aktához tartozó környezet is inicializálódik a függvény meghívásával, így például külön URL cache jön létre minden új e-aktához.

Visszatérési érték

A Dossier osztály egy új példánya. Ezen példány segítségével érhetjük el az e-aktához tartozó funkcionalitást.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public Dossier openDossier(String dossierPath)

Fájlrendszerből nyithatunk meg korábban létrehozott e-aktát a metódus segítségével.

Paraméter:

  • String dossierPath – Bemeneti paraméter. A megnyitni kívánt e-akta elérési útja.

Visszatérési érték

A Dossier osztály egy új példánya. Ezen példány a segítségével érhetjük el az e-aktához tartozó funkcionalitást.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public Dossier openDossier(byte[] inFile)

Korábban létrehozott e-aktát memórián keresztül byte tömb formájában adhatunk át a modulnak és nyithatunk meg további feldolgozásra.

Paraméter:

  • byte[] inFile – Bemeneti paraméter. A megnyitni kívánt e-akta byte tömb formában.

Visszatérési érték

A Dossier osztály egy új példánya. Ezen példány a segítségével érhetjük el az e-aktához tartozó funkcionalitást.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public void setTimeStampURLs(String timeStampURLs);

A paraméter az időbélyeg szolgáltatók URL listáját állítja be. Időbélyeges aláírás és különálló időbélyeg készítésekor is ebből a listából választja ki az alkalmazás, hogy melyik szolgáltatóhoz forduljon időbélyegért. A lista első elemével próbálkozik először, amennyiben ez nem sikerül erről a címről időbélyeget kérni, megpróbálkozik a következő hellyel és így tovább. A timeStampURLs paraméterben, szóközzel elválasztott karakterlánc formájában kell a listát megadni.

Paraméter:

  • String timeStampURLs – Bemeneti paraméter. Szóközzel elválasztva kell megadni az időbélyeg szolgáltatók URL listáját.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public void setTrustedCertDir(String dirPath)

Megadhatjuk azoknak a könyvtáraknak az elérési útjait, melyekben a megbízható tanúsítványok találhatók. Abban az esetben, amikor a nem a Windows tanúsítványtárát használjuk a tanúsítványlánc felépítésére, akkor ebből a könyvtárból veszi az alkalmazás a megbízható tanúsítványokat. Ez a metódus akkor használható, ha a Session.setUseWindowsCertStore(booelean useIt) metódus false értékkel meg van hívva.

A megadott beállítás az aláírás ellenőrzésre és az időbélyeg és OCSP válaszok aláírásaikor használt aláírások ellenőrzésére is vonatkozik.

Paraméter:

  • String dirPath – Bemeneti paraméter. A megbízható tanúsítványokat tartalmazó könyvtárak elérési útjai pontosvesszővel elválasztva.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public void setSignerTrustedCertDir(String dirPath)

Megadhatjuk azoknak a könyvtáraknak az elérési útjait, melyekben az aláírás ellenőrzésekor használt megbízható tanúsítványok találhatók. Abban az esetben, amikor a nem a Windows tanúsítványtárát használjuk a tanúsítványlánc felépítésére, akkor ebből a könyvtárból veszi az alkalmazás a megbízható tanúsítványokat. Ez a metódus akkor használható, ha a Session.setUseWindowsCertStore(booelean useIt) metódus false értékkel meg van hívva.

Paraméter:

  • String dirPath – Bemeneti paraméter. A megbízható tanúsítványokat tartalmazó könyvtárak elérési útjai pontosvesszővel elválasztva.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public void setTSATrustedCertDir(String dirPath)

Megadhatjuk azoknak a könyvtáraknak az elérési útjait, melyekben az időbélyeg válaszokon levő aláírások ellenőrzésekor használt megbízható tanúsítványok találhatók. Abban az esetben, amikor a nem a Windows tanúsítványtárát használjuk a tanúsítványlánc felépítésére, akkor ebből a könyvtárból veszi az alkalmazás a megbízható tanúsítványokat. Ez a metódus akkor használható, ha a Session.setUseWindowsCertStore(booelean useIt) metódus false értékkel meg van hívva.

Paraméter:

  • String dirPath – Bemeneti paraméter. A megbízható tanúsítványokat tartalmazó könyvtárak elérési útjai pontosvesszővel elválasztva.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public void setOCSPTrustedCertDir(String dirPath)

Megadhatjuk azoknak a könyvtáraknak az elérési útjait, melyekben az OCSP válaszokon levő aláírások ellenőrzésekor használt megbízható tanúsítványok találhatók. Abban az esetben, amikor a nem a Windows tanúsítványtárát használjuk a tanúsítványlánc felépítésére, akkor ebből a könyvtárból veszi az alkalmazás a megbízható tanúsítványokat. Ez a metódus akkor használható, ha a Session.setUseWindowsCertStore(booelean useIt) metódus false értékkel meg van hívva.

Paraméter:

  • String dirPath – Bemeneti paraméter. A megbízható tanúsítványokat tartalmazó könyvtárak elérési útjai pontosvesszővel elválasztva.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public void setSSLTrustedCertDir(String dirPath)

Megadhatjuk azoknak a könyvtáraknak az elérési útjait, amelyekben azok a tanúsítványok találhatóak, amelyeket a webserverek tanúsítványainak ellenőrzésekor megbízható tanúsítványnak fogadunk el. Abban az esetben, amikor a nem a Windows tanúsítványtárát használjuk a tanúsítványlánc felépítésére, akkor ebből a könyvtárból veszi az alkalmazás a megbízható tanúsítványokat. Ez a metódus akkor használható, ha a Session.setUseWindowsCertStore(booelean useIt) metódus false értékkel meg van hívva.

Paraméter:

  • String dirPath – Bemeneti paraméter. A megbízható tanúsítványokat tartalmazó könyvtárak elérési útjai pontosvesszővel elválasztva.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public void setIntermediateCertDir(String dirPath)

Megadhatjuk azoknak a könyvtáraknak az elérési útjait, melyekben, a közbenső szintű tanúsítványok találhatók. Abban az esetben, amikor a nem a Windows tanúsítványtárát használjuk a tanúsítványlánc felépítésére, akkor ebből a könyvtárból veszi az alkalmazás a közbenső szintű tanúsítványokat. Ezért ez a metódus akkor használható, ha a Session.setUseWindowsCertStore(booelean useIt) metódus false értékkel meg van hívva.

Paraméter:

  • String dirPath – Bemeneti paraméter. A közbenső szintű tanúsítványokat tartalmazó könyvtár elérési útjai pontosvesszővel elválasztva.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public void setLogFilePath(String logFilePath)

Naplófájlt állíthatunk be a metódus segítségével. A modul működése közben a naplófájlba írja a működéssel kapcsolatos információkat, ha meg van adva naplófájl. Ha egy külön szálban hívjuk meg a metódust, akkor az adott szálhoz egy külön naplófájl nyílik meg a paraméterben megadott elérési úton. Ha ugyanabban a szálban másodszor hívjuk, akkor az előző naplófájl lezáródik, és az új megnyílik. Ha a logFilePath üres string, akkor visszaáll az alapértelemezett naplózás. A metódus meghívása automatikusan Debug (4) szintre állítja a naplózást.

Paraméter:

  • String logFilePath – Bemeneti paraméter. A naplófájl elérési útját tartalmazó string.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public void setLogFileMaxSize(int maxSizeInKB)

E függvény segítségével megadhatjuk a SetLogFilePath által beállított naplófájl maximális méretét, kilobájt mértékegységben. Ha nincs naplófájl beállítva, akkor a metódus INVALID_OPERATION hibakóddal tér vissza. Mielőtt a naplófájl elérné a megadott méretet, elmozgatásra kerül egy tartalék (backup) naplófájlba, melynek elérési útja a következő módon képződik: „.1” (pl.: c:/path/to/file.txt esetén a backup naplófájl a c:/path/to/file.1.txt lesz). Amennyiben nullát adunk meg maximális méretként, kikapcsolódik a méret ellenőrzése.

Paraméter:

  • int maxSizeInKB – Bemeneti Paraméter: a naplófájl maximális mérete kilobájtban. Nulla megadása esetén kikapcsolódik a naplófájl méretének ellenőrzése.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public void CloseLogFilePath();

Korábban az setLogFilePath() függvénnyel megnyitott naplófájl zárható le. A metódus meghívásakor mindent kiír a naplófájlba majd lezárja azt.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public void setLogFilePathAndLogLevel(String logFilePath, int logLevel);

A metódus segítségével megadhatjuk, hogy a futás során készítsen-e a program naplófájlt.

Paraméterek:

  • String logFilePath – A létrehozandó naplófájl neve és elérési útja.
  • int logLevel – A naplózás szintjét adja meg. Lehetséges értékei:
    • 0 - Nem keletkezik napló fájl.
    • 1 - Error és annál magasabb szintű üzenetek íródnak a naplóba.
    • 2 - Warn és annál magasabb szintű üzenetek íródnak a naplóba.
    • 3 - Info szintű üzenetek íródnak a naplóba.
    • 4 - Debug és annál magasabb szintű üzenetek íródnak a naplóba.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public void setUseWindowsCertStore(boolean useIt)

A metódus segítségével beállíthatjuk, hogy a tanúsítványlánc építésekor honnan vegye a közbenső szintű és a megbízható tanúsítványokat. Ha a paraméter értéke true, akkor a Windows tanúsítványtárának segítségével épül föl a tanúsítványlánc, ha false, akkor a felhasználó által megadott könyvtárakat használja az alkalmazás. Ezen metódus meghívásának csak Windows operációs rendszeren van értelme. Alapértelmezett esetben a Windows tanúsítvány tárat fogja használni a modul.

Paraméter:

  • boolean useIt – Bemeneti paraméter. Megadja, hogy használja-e az alkalmazás a Windows tanúsítványtárát.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public void setWorkSilent(long howSilent)

A modul működése közben dialógus ablakokat használva, státusz üzenetekkel értesíti a felhasználót bizonyos eseményekről. Ezen függvény segítségével kikapcsolhatjuk a felugró ablakokat.

Paraméter:

  • long howSilent – Bemeneti paraméter. Megadja, mennyi üzenetet közöljön a modul a felhasználó felé. Lehetséges értékeit a Session.HowSilent osztály tartalmazza publikus, statikus attribútumokként.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public void setXAdESType(int xadesType)

Az aláíráskor használandó a XAdES szabványnak megfelelő aláírás típusokat tudjuk kiválasztani. Az aláírás típusának beállítása mellett gondoskodni kell a többi paraméter beállításáról is, hogy az adott aláírás típus létre tudjon jönni. Például, a XAdES-T aláíráshoz be kell állítani az időbélyeg szolgáltató URL-t és a hozzáférési információkat.

Paraméter:

  • int xadesType – Bemeneti paraméter. Lehetséges értékeit a Session.XAdESType osztály tartalmazza publikus, statikus attribútumokként.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

Megjegyzés:

Ha ETSI EN 319 * szabványok alapján szeretne aláírást készíteni, akkor a setSignatureLevel metódust használja.

public void setSignatureLevel(int sigLevel)

Az aláíráskor használandó AdES baseline profilnak megfelelő aláírás típusokat tudjuk kiválasztani. Az aláírás típusának beállítása mellett gondoskodni kell a többi paraméter beállításáról is, hogy az adott aláírás típus létre tudjon jönni. Például B_T aláíráshoz be kell állítani az időbélyeg szolgáltató URL-t és a hozzáférési információkat.

Paraméter:

  • int sigLevel – Bemeneti paraméter. Lehetséges értékeit a Session.SignatureLevel osztály tartalmazza publikus, statikus attribútumokként.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public void setSigningPFX(String pfxPath, String pfxPassword)

A metódus segítségével beállíthatjuk azt a PFX (PKCS# 12) fájlt, mellyel alá akarunk írni. Ezt a beállított értéket használja a Dossier.sign(), ForeignDossier.sign(String sURIList, String sMIMETypeList), Session.createAcknowledgement(String filePath, byte[] file), Session.signPDF(String inputPDFPath, String outputPDFPath) metódus is.

Paraméterek:

  • String pfxPath – Bemeneti paraméter. Az aláíráshoz használni kívánt PFX fájl elérési útja.
  • String pfxPassword – Bemeneti paraméter. Az aláíráshoz használni kívánt PFX fájl jelszava.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public void setSigningPEM(String keyPath, String keyPassword, String certPath)

A metódus segítségével beállíthatjuk azt a PEM fájlt, mellyel alá akarunk írni. Ezt a beállított értéket használja a Dossier.sign(), ForeignDossier.sign(String sURIList, String sMIMETypeList), Session.createAcknowledgement(String filePath, byte[] file), Session.signPDF(String inputPDFPath, String outputPDFPath) metódus is.

Paraméterek:

  • String keyPath – Bemeneti paraméter. Az aláíráshoz használni kívánt PEM kulcs fájl elérési útja.
  • String keyPassword – Bemeneti paraméter. Az aláíráshoz használni kívánt PEM kulcs fájl jelszava.
  • String certPath – Bemeneti paraméter. Az aláíráshoz használni kívánt PEM tanúsítvány elérési útja.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public void setSigningCertificate(int inputType, String inputStr)

Elosztott (kétmenetes) aláírás esetén beállíthatjuk az aláíráshoz használt kulcshoz tartozó tanúsítványt. Az elosztott aláírásról részletesebb leírást a Dossier.setSignedHash() metódusnál találhat.

Paraméterek:

  • int inputType – Bemeneti paraméter. Az inputStr paraméterben megadandó érték típusát határozza meg.

    Lehetséges értékei:

    • 0 – a tanúsítványt tartalmazó fájl elérési útját kell megadni az inputStr paraméterben.
  • String inputStr – Bemeneti paraméter. A tanúsítvány kiválasztásához használni kívánt azonosító adatot kell megadni.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public void setRevocationCheckingMode(long revCheckMode)

A visszavonás-ellenőrzés módját lehet beállítani. A beállított érték vonatkozik az aláíráskori és az ellenőrzéskori visszavonás-ellenőrzésre is. A beállított érték befolyásolhatja az elkészült aláírás típusát, például kikapcsolt visszavonás-ellenőrzés esetén nem lehet archív aláírást létrehozni. Amennyiben az ellenőrizendő aláírás már tartalmaz magában csatolt visszavonási információkat, akkor az alkalmazás azok alapján ellenőriz, ha az egyezik a beállított visszavonási móddal. Azaz, ha például az archív aláírás OCSP válaszokat tartalmaz magában, és a visszavonás ellenőrzés is OCSP-re van állítva, akkor a tárolt válasz alapján ellenőriz az alkalmazás. Az archív aláírás ellenőrzése függetlenül ettől a beállítástól kikapcsolható.

Paraméter:

  • long revCheckMode – Bemeneti paraméter. A visszavonás ellenőrzés típusát állíthatjuk be. Lehetséges értékeit a Session.RevocationCheckingMode osztály tartalmazza publikus, statikus attribútumokként. A visszavonás ellenőrzés módjának leírása Session.RevocationCheckingMode osztály leírásánál található.

Az alapértelmezett beállítás a Session.RevocationCheckingMode.OFF.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public void setCertAuthList(HostCertAuthData[] certAuthList)

Ezen metódus segítségével adhatjuk meg, mely host-okhoz mely PFX fájlokkal kapcsolódhatunk.

Paraméter:

  • HostCertAuthData[] certAuthList – Bemeneti paraméter. Egy HostCertAuthData tömb, mely megadja az autentikációs adatokat. Az osztály leírása a Session.HostCertAuthData fejezetben található.

Kivétel:

Hiba esetén a metódus XSRException-t dob. Az XSRException leírása a 3.1-es fejezetben található.

public void setBasicAuthList(HostBasicAuthData[] basicAuthList)

Ezen metódus segítségével adhatjuk meg, mely host-okhoz mely felhasználó név/jelszó párosokkal kapcsolódhatunk.

Paraméter:

  • HostBasicAuthData[] basicAuthList – Bemeneti paraméter. Egy HostBasicAuthData tömb, mely megadja az autentikációs adatokat. Az osztály leírása a Session.HostBasicAuthData fejezetben található.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public void signPDF(String inputPDFPath, String outputPDFPath)

PDF fájlokat nem csak e-aktán belül lehet aláírni, hanem közvetlenül a fájlt is aláírhatjuk, hiszen a PDF szabvány (az 1.3 verzió óta) ezt megengedi. Ennek a tagfüggvénynek a segítségével tudunk közvetlenül, e-akta létrehozás nélkül PDF aláírást létrehozni. Amennyiben a visszavonás-ellenőrzési mód nincs megadva, alapértelmezetten OCSP/CRL-re állítódik.

Paraméter:

  • String inputPDFPath – Bemeneti paraméter. Az aláírni kívánt PDF fájl elérési útját adhatjuk meg.
  • String outputPDFPath – Bemeneti paraméter. A modul az aláírt PDF fájlt az itt megadott elérési útra menti.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public void verifyPDF(String inputPDFPath)

A metódus segítségével ellenőrizhetjük a közvetlenül PDF fájlokon elhelyezett aláírásokat. Az XSign4Java által ismert PDF aláírás SubFilter értékek: „adbe.pkcs7.detached”, „adbe.pkcs7.sha1” és „ETSI.CAdES.detached”. Ismeretlen SubFilter értékkel rendelkező aláírás esetén kivételt dob. Lásd még verifyPDF(String inputPDFPath, boolean ignoreUnknownSubFilters).

Paraméter:

  • String inputPDFPath – Bemeneti paraméter. Az aláírásokat tartalmazó PDF fájl elérési útját adhatjuk meg.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public void verifyPDF(String inputPDFPath, boolean ignoreUnknownSubFilters)

A metódus segítségével ellenőrizhetjük a közvetlenül PDF fájlokon elhelyezett aláírásokat. Az XSign4Java által ismert PDF aláírás SubFilter értékek: „adbe.pkcs7.detached”, „adbe.pkcs7.sha1” és „ETSI.CAdES.detached”.

Paraméter:

  • String inputPDFPath – Bemeneti paraméter. Az aláírásokat tartalmazó PDF fájl elérési útját adhatjuk meg.
  • boolean ignoreUnknownSubFilters – Amennyiben értéke „true”, az ellenőrzési folyamat átugorja az ismeretlen SubFilter értékkel rendelkező PDF aláírásokat. Ellenkező esetben ismeretlen aláírás típus esetén kivételt dob.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public void setPDFSignImg(java.lang.String inputImgPath)

Látható PDF aláírás létrehozásakor megadható kép fájl elérési útja, amelyet elhelyezhetünk a PDF dokumentum törzsében. A megadott képfájlnak a következő kép formátumok egyikének kell megfelelnie: png,jpg,tif.

Paraméter:

  • String inputImgPath - Elérési út.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public void setPDFSignImgPage(int pageNum)

Megadható, hogy a látható PDF aláírást melyik oldalán helyezzük el a dokumentumnak. Alapértelmezett értéke: 1 – amely a dokumentum legelső oldalát jelenti. A dokumentum oldalainak számánál nagyobb érték esetén is az alapértelmezett értéket veszi fel. Ha az értéke -1 akkor az utolsó oldalt jelenti.

Paraméter:

  • int pageNum – Oldal száma.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

public void setPDFSignImgAlign(long align)

A látható PDF aláírás igazítása a megadott sarokba.

Paraméter:

  • long align - A lap sarkának azonosítója.

    Lehetséges értékei:

    • PDFDocument.PDFSignImgAlignMode.RIGHT_TOP

      - Igazítás a jobb felső sarokba.

    • PDFDocument.PDFSignImgAlignMode.RIGHT_BOTTOM

      - Igazítás a jobb alsó sarokba.

    • PDFDocument.PDFSignImgAlignMode.LEFT_TOP

      - Igazítás a bal felső sarokba.

    • PDFDocument.PDFSignImgAlignMode.LEFT_BOTTOM

      - Igazítás a bal alsó sarokba.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

void setPDFSignImgSize(long size, boolean percent, long mode)

A látható PDF aláírás létrehozásánál megadhatjuk a megadott kép átméretezésre vonatkozó paramétereket.

Paraméterek:

  • long size – Képméret.
  • boolean percent – Ha az értéke true, akkor a size paraméter értéke a dokumentumra vonatkozó méretének százalékban értelmezett értéke, ellenkező esetben a képpont értékét jelenti. Például ha a dokumentum szélessége 600 képpont, size = 10 és a percent = true, akkor az új szélesség 60 képpont lesz.
  • long mode – Az átméretezés módja. Átméretezéskor minden esetben arányosan csökkentjük, ill. növeljük a megadott kép függőleges és vízszintes méretét. Tehát az átméretezés után a magasság-szélesség aránya változatlan marad. Így a megadott size értéket többféle módon értelmezhetjük. Lehetséges értékei:
    • PDFDocument.PDFSignImgResizingMode.MAX

      - Ha a kép magassága nagyobb, mint a szélessége akkor ugyanaz, mint a PDFDocument.PDFSignImgResizingMode.HEIGHT, különben a PDFDocument.PDFSignImgResizingMode.WIDTH módot használjuk. Ez az alapértelmezett üzemmód.

    • PDFDocument.PDFSignImgResizingMode.WIDTH

      - A size-al megadott érték lesz az új szélessége az átméretezett képnek

    • PDFDocument.PDFSignImgResizingMode.HEIGHT

      - A size-al megadott érték lesz az új magassága az átméretezett képnek.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

void setPDFSignImgPadding(long x, boolean x_percent, long y, boolean y_percent)

Megadhatjuk a látható PDF aláírás vízszintes távolságát a lap széleitől.

Paraméter:

  • long x - Vízszintes behúzás. Megadhatjuk a látható aláírás vízszintes távolságát a lap szélétől, a SetPDFSignImgSize paraméterezésénél leírt módon, képpontban vagy lapméret százalékban.
  • boolean x_percent – Értéke true ha a padding_x értéke százalékban értendő.
  • long y – Függőleges behúzás. Megadhatjuk a látható aláírás függőleges távolságát a lap szélétől, a SetPDFSignImgSize paraméterezésénél leírt módon, képpontban vagy lapméret százalékban.
  • boolean y_percent – Értéke true ha a padding_y értéke százalékban értendő.

Kivétel:

Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

void setPDFSignImgMode(int mode)

Beállítható a látható PDF aláírás megjelenítésének módja.

Paraméter:

  • int mode - Bemeneti paraméter. A paraméterben következő értékek szerepelhetnek:
    • PDFDocument.PDFSignImgDisplayMode.ENABLED

      - Legyen látható az aláírás képe a dokumentumban.

    • PDFDocument.PDFSignImgDisplayMode.DISABLED

      - Legyen rejtett az aláírás képe a dokumentumban.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

void setPDFSignImgTitleMode(int mode)

A látható PDF aláíráson elhelyezett felirat megjelenítés módja

Paraméter:

  • int mode - Bemeneti paraméter. A paraméterben következő értékek szerepelhetnek:
    • PDFDocument.PDFSignImgTitleDisplayMode.ENABLED

      - Legyen látható az aláírás szövege, tartalma pedig legyen az aláíró tanúsítványában szereplő Subject.CN mező, ha nincs megadva a SetPDFSignImgTitle.

    • PDFDocument.PDFSignImgTitleDisplayMode.DISABLED

      - Ne legyen látható szöveg a látható aláírás fölött.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    void setPDFSignImgTitleAlign(int align)

    A látható PDF aláíráson elhelyezett felirat igazítása valamelyik élhez.

    Paraméter:

  • int align - Bemeneti paraméter. A paraméterben következő értékek szerepelhetnek:
    • PDFDocument.PDFSignImgTitleAlign.TOP

      - Az aláírás szövege az aláírás képének felső éléhez lesz igazítva.

    • PDFDocument. PDFSignImgTitleAlign.BOTTOM

      - Az aláírás szövege az aláírás képének alsó éléhez lesz igazítva.

  • Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    void setPDFSignImgTitle(java.lang.String title)

    A látható PDF aláíráson opcionálisan elhelyezhető szöveg. Alapértelmezett értéke az aláíró tanúsítványában szereplő Subject.CN értéke.

    Paraméter:

    • String title - Tetszőleges szöveg.

    A szövegbe elhelyezhetőek az aláírás időpontjához vagy az aláírói tanúsítványhoz kapcsolódó adatok is:

    • %TSD% - Aláírás dátuma %Y-%m-%d formátumban (lokális idő).
    • %TSH% - Aláírás időpontja %H:%M:%SZ formátumban (lokális idő).
    • %CN% - Aláírói tanúsítványban szereplő Subject.CN (common name) mező értéke.
    • %OU% - Aláírói tanúsítványban szereplő Subject.OU (organization unit) mező értéke.
    • %O% - Aláírói tanúsítványban szereplő Subject.O (organization) mező értéke.
    • %L% - Aláírói tanúsítványban szereplő Subject.L (locality) mező értéke.
    • %T% - Aláírói tanúsítványban szereplő Subject.T (title) mező értéke.
    • %SERIAL% - Aláírói tanúsítvány sorozatszáma.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    void setPDFSignImgTitleFontSize(int size)

    A látható PDF aláíráson megjelenített szöveg betűmérete. Alapértelmezett értéke: 22

    Paraméter:

    int size – Betűméret.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    void setPDFSignImgTitlePadding(long x, long y)

    A látható PDF aláíráson elhelyezett szöveg, név távolsága a látható aláírás képének szélétől.

    Paraméter:

    • long x - A látható aláíráson elhelyezett szöveg, név vízszintes irányú távolsága a látható aláírás képének szélétől. Ha nincs megadva a látható aláírás képe és nincs is tiltva a megjelenítése, akkor ennek a paraméternek nincs hatása.
    • long y - A látható aláíráson elhelyezett szöveg, név függőleges irányú távolsága a látható aláírás képének szélétől. Ha nincs megadva a látható aláírás képe és nincs is tiltva a megjelenítése, akkor ennek a paraméternek nincs hatása.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    LONG setPDFSignAdjPosDisable (boolean adjPosDisable);

    A látható aláírások egymást elfedő takarását megakadályozó korrekciónak az engedélyezése, ill. tiltása. Alapértelmezett értéke: true

    Paraméter:

    • boolean adjPosDisable – Ha az értéke true és az újonnan létrehozni kívánt aláírás képe eltakarna egy már a dokumentumon szereplő aláírást, akkor az új aláírást automatikusan eltolja úgy, hogy a takarás megszűnjön.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    void setPAdES(long pades)

    ETSI (TS 102 778) szabványnak megfelelő PAdES aláírás készítését teszi lehetővé. Alapértelmezett értéke: kikapcsolva.

    Paraméter:

  • long pades – Bemeneti paraméter. A paraméterben a következő értékek szerepelhetnek:
    • Session.PAdES.ENABLED

      - Engedélyezve

    • Session.PAdES.DISABLED

      - Kikapcsolva

  • Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    void setPDFSignaturePolicy(java.lang.String sigPolicyURI, java.lang.String sigPolicyOID)

    A PDF aláíráson értelmezett aláírási szabályzat URI-ja és OID-ja (ha szükséges), XAdES-EPES létrehozásához. Nincs alapértelmezett értéke.

    Paraméter:

    • String sigPolicyURI - Aláírási szabályzat URI-ja. Nincs alapértelmezett értéke.
    • String sigPolicyOID - Aláírási szabályzat OID-ja, akkor szükséges megadni, ha a szabályzat nem ASN1 formátumú.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    void setPDFCommitmentType(java.lang.String commitmentTypeOID)

    A PDF aláíráson értelmezett kötelezettség-vállalás, OID-ként megadva. Nincs alapértelmezett értéke.

    Paraméter:

    • String commitmentTypeOID - Az aláíró kötelezettség-vállalása. CAdES szabvány szerinti lehetséges értékek:
      • 1.2.840.113549.1.9.16.6.1 – eredet igazolása
      • 1.2.840.113549.1.9.16.6.2 – átvételi elismervény
      • 1.2.840.113549.1.9.16.6.3 – kézbesítés igazolása
      • 1.2.840.113549.1.9.16.6.4 – elküldés igazolása
      • 1.2.840.113549.1.9.16.6.5 – jóváhagyás
      • 1.2.840.113549.1.9.16.6.6 – létrehozás igazolása

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    void setPDFContentHint(java.lang.String contentHintDescription, java.lang.String contentHintType)

    A PDF aláíráshoz megadható paraméter, amely multi-layer message esetén a belső tartalom típusát jelöli. Nincs alapértelmezett értéke.

    Paraméter:

    • String contentHintDescription - Multi-layer message esetén a belső tartalom típusát írja le. Értéke jellemzően mime típus. Nincs alapértelmezett értéke. Részletes leírás az RFC 2634 dokumentumban és az ETSI TS 101 733 leírásban található.
    • String contentHintType - Multi-layer message esetén a belső tartalom típusát megadó OID. Nincs alapértelmezett értéke. Részletes leírás az RFC 2634 dokumentumban és az ETSI TS 101 733 leírásban található.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public byte[] signCM(byte[] content, String content_type, boolean detached)

    CMS aláírás készítése.

    Paraméter:

    • byte[] content – Bemeneti paraméter. Az aláírandó bájtsorozat.
    • String content_type – Bemeneti paraméter. A beillesztett tartalom típusát meghatározó OID „pontozott” formátumban. null esetén az alapértelmezett értéke „1.2.840.113549.1.7.1” (bináris adattípus).
    • boolean detached – Bemeneti paraméter. Különálló CMS aláírás létrehozása. true esetén a content paraméterben megadott bájtsorozat nem kerül beillesztésre.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public byte[] verifyCM(byte[] in, byte[] content)

    CMS aláírás ellenőrzése.

    Paraméter:

    • byte[] in – Bemeneti paraméter. A bemeneti CMS aláírást tartalmazó bájtsorozat.
    • byte[] content – Bemeneti paraméter. Különálló CMS aláírás esetén meg kell adni az aláírt állományt is. Különben lehet null.

    Kivétel:

    Hiba vagy érvénytelen aláírás esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public Dossier createAcknowledgement(String filePath, byte[] file)

    Egy megadott aktáról átvételi elismervény készíthető. Az átvételi elismervényre készülő aláírás beállításai megegyeznek az aláírás beállításokkal.

    Paraméter:

  • String filePath – Bemeneti paraméter. Az állomány elérési útja, amelyről átvételi elismervényt szeretnénk készíteni.
  • String file – Bemeneti paraméter. Az állomány, mint bájtsorozat. (Lehet null, de ebben az esetben nem biztonságos az átvételi elismervény készítésének folyamata.)
  • Visszatérési érték

    A Dossier osztály egy új példánya. Ezen példány segítségével érhetjük el az e-aktához tartozó funkcionalitást.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public Dossier createAcknowledgement(String filePath, byte[] file, String fileHash)

    Egy megadott aktáról átvételi elismervény készíthető. Az átvételi elismervényre készülő aláírás beállításai megegyeznek az aláírás beállításokkal.

    Paraméter:

    • String filePath – Bemeneti paraméter. Az állomány elérési útja, amelyről átvételi elismervényt szeretnénk készíteni.
    • String file – Bemeneti paraméter. Az állomány, mint bájtsorozat. (Lehet null, de ebben az esetben nem biztonságos az átvételi elismervény készítésének folyamata.)
    • String fileHash – Bemeneti paraméter. Azon elektronikus akta sha256 lenyomata amelyre az átvételi elismervényt készítjük. Amennyiben megadásra kerül, az átvételi elismervényt ezen lenyomat alapján készíti, nem a filePath vagy file paraméterben beállított fájlról.

    Visszatérési érték:

    A Dossier osztály egy új példánya. Ezen példány segítségével érhetjük el az e-aktához tartozó funkcionalitást.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public Dossier createAcknowledgement(String filePath, byte[] file, String commentDocFilePath, String commentDocMIMEType, String commentDocTitle)

    Egy megadott aktáról átvételi elismervény készíthető. Az átvételi elismervényre készülő aláírás beállításai megegyeznek az aláírás beállításokkal. Az aláíráshoz csatolható egy dokumentum.

    Paraméterek:

    • String filePath – Bemeneti paraméter. Az állomány elérési útja, amelyről átvételi elismervényt szeretnénk készíteni.
    • byte[] file – Bemeneti paraméter. Az állomány, mint bájtsorozat. (Lehet null, de ebben az esetben nem biztonságos az átvételi elismervény készítésének folyamata.)
    • String commentDocFilePath – Bemeneti paraméter. Az aláíráshoz csatolandó dokumentum elérési útja adható meg.
    • String commentDocMIMEType – Bemeneti paraméter. Az aláíráshoz csatolandó dokumentum MIME típusa adható meg.
    • String commentDocTitle – Bemeneti paraméter. Az aláíráshoz csatolandó dokumentum címe adható meg.

    Visszatérési érték

    A Dossier osztály egy új példánya. Ezen példány segítségével érhetjük el az e-aktához tartozó funkcionalitást.

    Dossier createAcknowledgement(String filePath, byte[] file, String fileHash, String commentDocFilePath, String commentDocMIMEType, String commentDocTitle)

    Egy megadott aktáról átvételi elismervény készíthető. Az átvételi elismervényre készülő aláírás beállításai megegyeznek az aláírás beállításokkal. Az aláíráshoz csatolható egy dokumentum.

    Paraméterek:

    • String filePath – Bemeneti paraméter. Az állomány elérési útja, amelyről átvételi elismervényt szeretnénk készíteni.
    • byte[] file – Bemeneti paraméter. Az állomány, mint bájtsorozat. (Lehet null, de ebben az esetben nem biztonságos az átvételi elismervény készítésének folyamata.)
    • String fileHash – Bemeneti paraméter. Azon elektronikus akta sha256 lenyomata amelyre az átvételi elismervényt készítjük. Amennyiben megadásra kerül, az átvételi elismervényt ezen lenyomat alapján készíti, nem a filePath vagy file paraméterben beállított fájlról.
    • String commentDocFilePath – Bemeneti paraméter. Az aláíráshoz csatolandó dokumentum elérési útja adható meg.
    • String commentDocMIMEType – Bemeneti paraméter. Az aláíráshoz csatolandó dokumentum MIME típusa adható meg.
    • String commentDocTitle – Bemeneti paraméter. Az aláíráshoz csatolandó dokumentum címe adható megA Dossier osztály egy új példánya. Ezen példány segítségével érhetjük el az e-aktához tartozó funkcionalitást.

    Visszatérési érték:

    A Dossier osztály egy új példánya. Ezen példány segítségével érhetjük el az e-aktához tartozó funkcionalitást.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public ForeignDossier newForeignDossier()

    Új, üres különálló aláírás létrehozására alkalmas dossziét hoz létre.

    Visszatérési érték

    A ForeignDossier osztály egy új példánya. Ezen példány segítségével érhetjük el az aktához tartozó funkcionalitást.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public ForeignDossier newForeignDossier(String sXMLSource)

    Egy nem e-akta struktúrájú XML fájlból hoz létre egy új XML aláírás létrehozására alkalmas dossziét.

    Visszatérési érték

    A ForeignDossier osztály egy új példánya. Ezen példány segítségével érhetjük el az aktához tartozó funkcionalitást.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public ForeignDossier openForeignDossier(String dossierPath)

    Egy már létező, nem e-akta struktúrájú aláírt XML állomány megnyitását végzi a metódus.

    Visszatérési érték

    A ForeignDossier osztály egy új példánya. Ezen példány segítségével érhetjük el az aktához tartozó funkcionalitást.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setConnectionTimeout(int timeout)

    Ezen metódus segítségével lehet beállítani, hogy az időbélyeg kérés, visszavonási információk lekérdezése és más internet hozzáférést megkövetelő műveletek mennyi ideig próbálkozzanak a kapcsolat felépítésével. LDAP kapcsolódás esetén fixen 15 másodperc a timeout függetlenül a függvény által beállított értéktől.

    Paraméter:

    • int timeout– Bemeneti paraméter. A timeout nagysága milliszekundumokban.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void SetConnectionRetryCount(int retryCount);

    Ezen metódus segítségével lehet beállítani, hogy bizonyos sikertelen HTTP kapcsolódások esetén (ha nem kap semmilyen választ, 503-as hiba, illetve TRYLATER OCSP válasz esetén) hányszor próbáljon meg újra csatlakozni. Alapértelmezetten nullára van állítva.

    Paraméter:

    • int retryCount – Bemeneti paraméter. Ennyiszer próbál meg újra csatlakozni.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void SetConnectionRetryDelay(int retryDelay);

    Ha az SetConnectionRetryCount be van állitva, akkor ezen metódussal állíthatjuk be, hogy mennyi milliszekundumot várjon az újrapróbálkozások között. Alapértelmezetten nullára van állítva.

    Paraméter:

    • int retryDelay – Bemeneti paraméter. Az idő, milliszekundumban, amennyit vár az újrapróbálkozások között.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public long getHandle()

    Az aktuális szálhoz tartozó handle-t kérhetjük le. A handle segítségével másolhatjuk át két össze nem tartozó szál közt a globális beállításokat.

    Visszatérési érték

    Az aktuális szálhoz tartozó handle.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void forkInstance(long handle)

    A megadott szál globális beállításairól készít egy másolatot. Az aktuális szálban ezeket a beállításokat anélkül módosíthatjuk, hogy a módosításaink érintenék a paraméterben megadott szál beállításait (ezáltal külön beállításokat lehet használni a különböző szálakban). Figyelem! A Session singleton objektum Java szinten minden szálból azonos; a beállítások natív szinten különülnek el.

    Paraméter:

    • long handle – Bemeneti paraméter. Annak a szálnak a handle-je, melynek a beállításairól szeretnénk egy másolatot készíteni. Ld. getHandle().

    Kivétel:

    Ha a bemeneti paraméterként a saját szálunk handle-jét adtuk meg akkor INVALID_OPERATION hibát kapunk.

    public void releaseInstance(long handle)

    A Session.forkInstance(long handle) metódussal korábban létrehozott új szál leíróját elengedi.

    Paraméter:

    • long handle – Bemeneti paraméter. Egy szálnak a handle-je, melyet szeretnénk felszabadítani.

    Kivétel:

    Ha a fő szál handle-jét adtuk meg akkor INVALID_OPERATION hibát kapunk.

    public void setProxy(ProxySettings proxySettings)

    A metódus segítségével megadhatjuk, mely HTTP/1.1 proxy szervert használja az XSign4Java internet kapcsolatot igénylő műveletekhez.

    Paraméter:

    • ProxySettings proxySettings – Bemeneti paraméter. A proxy beállításokat tartalmazó paraméter. Ha értéke null, akkor kivételt dob a metódus.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setRecipientCertList(String certList)

    A titkosítás címzettjeinek a tanúsítványait állíthatjuk be a függvény segítségével.

    Paraméterek:

    • String certList – Bemeneti paraméter. A titkosító tanúsítványok elérési útjait tartalmazó lista. A listát „;” karakterrel kell elválasztani.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setEncryptingKey(String path, String password)

    A titkosított akta vagy dokumentum megtekintésére használandó titkosító kulcsot lehet beállítani. A beállított kulcshoz tartozó tanúsítvány bekerül a címzettek közé az Dossier.encrypt() és a Document.encrypt() metódusok használata esetén (titkosításkor).

    Paraméterek:

    • String path – A PFX fájl elérési útja.
    • String password – A PFX fájlhoz tartozó jelszó.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setEncryptingKeyPKCS11(String pkcs11ModulePath, long keyRefType, String keyRefValue, String pass)

    A titkosított akta vagy dokumentum megtekintésére használandó titkosító kulcsot lehet beállítani. A kulcs PKCS#11-es függvénykönyvtáron keresztül érhető el. A beállított kulcshoz tartozó tanúsítvány bekerül a címzettek közé Dossier.encrypt() és Document.encrypt() metódusok használata esetén (titkosításkor).

    Paraméterek:

    • String pkcs11ModulePath – A PKCS#11-es függvénykönyvtár elérési útja.
    • long keyRefType – Bemeneti paraméter. Értéke határozza meg a keyRefValue változó típusát. Lehetséges értékeit a Session.PKCS11KeyRefType osztály tartalmazza.
    • String keyRefValue – Bemeneti paraméter. A tanúsítvány kiválasztásához használandó adat, típusát a keyRefType paraméter határozza meg.
    • String pass – A kulcshoz tartozó PIN kód.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setEncryptingKeyPKCS11v2(String pkcs11ModulePath, long keyRefType, String keyRefValue, String sUserPIN, String sContextSpecificPIN)

    A titkosított akta vagy dokumentum megtekintésére használandó titkosító kulcsot lehet beállítani. A kulcs PKCS#11-es függvénykönyvtáron keresztül érhető el. A beállított kulcshoz tartozó tanúsítvány bekerül a címzettek közé Dossier.encrypt() és Document.encrypt() metódusok használata esetén (titkosításkor).

    Paraméterek:

    • String pkcs11ModulePath – A PKCS#11-es függvénykönyvtár elérési útja.
    • long keyRefType – Bemeneti paraméter. Értéke határozza meg a keyRefValue változó típusát. Lehetséges értékeit a Session.PKCS11KeyRefType osztály tartalmazza.
    • String keyRefValue – Bemeneti paraméter. A tanúsítvány kiválasztásához használandó adat, típusát a keyRefType paraméter határozza meg.
    • String sUserPIN – A PKCS#11-es token felhasználói PIN kódja. Olyankor kell megadni, ha a tokennel olyan kriptográfiai műveletet (aláírás vagy kititkosítás) szeretnénk végrehajtani, ami hitelesítést igényel. (További információért olvassa el a PKCS#11: Cryptographic Token Interface Standard Version 2.20)
    • String sContextSpecificPIN – A PKCS#11-es token környezet specifikus PIN kódja. Olyankor kell megadni, ha egy kulcs minden használat (aláírás vagy kititkosítás) előtt hitelesítést igényel. (További információért olvassa el a PKCS#11: Cryptographic Token Interface Standard Version 2.20)

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void useAIAForOCSP(boolean useAIAForOCSP)

    Ezen opció segítségével beállíthatjuk, hogy a tanúsítványban található AIA URL-t használja-e a modul az OCSP szolgáltatás eléréséhez.

    Paraméterek:

    • boolean useAIAForOCSP – Bemeneti paraméter. Amennyiben értéke true, akkor a tanúsítványban található URL-t használja az alkalmazás. false érték esetén a korábban az SetOCSPURLList() (ld. később) metódus által beállított URL-eket fogja használni a modul OCSP kéréshez.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void waitForGracePeriod(boolean waitForGracePeriod)

    Amennyiben ezen opció értéke „true”, akkor az e-Szignó csak az aláírás (megbízható) időpontja után kibocsátott CRL-eket vagy OCSP válaszokat fogadja el. Alapértelmezett értéke „true”. Javasoljuk, hogy OCSP alapú visszavonás-ellenőrzés esetén használja a „true” beállítást.

    Paraméter:

    • boolean waitForGracePeriod – Bemeneti paraméter. Amennyiben értéke „true”, az e-Szignó csak az aláírás időpontja után kibocsátott CRL-eket vagy OCSP válaszokat fogadja el.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setCRLURLList(String CRLURLList)

    A felhasználandó CRL szolgáltatók listáját lehet megadni ezen opció segítségével. Általában akkor van szükség e beállításra, ha az ellenőrizendő tanúsítványok nem tartalmazzák a rájuk érvényes CRL szolgáltató URL-jét az AIA kiterjesztésben.

    Paraméter:

    • String CRLURLList – Bemeneti paraméter. Szóközzel elválasztott karakterlánc formájában kell a listát megadni, a következő formában: „http://pl1.hu http://pl2.hu http://pl3.hu”.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setOCSPURLList(String OCSPURLList)

    A felhasználandó OCSP szolgáltatók listáját lehet megadni ezen opció segítségével. Általában akkor van szükség e beállításra, ha az ellenőrizendő tanúsítványok nem tartalmazzák a rájuk érvényes OCSP szolgáltató URL-jét az AIA kiterjesztésben.

    Paraméter:

    • String OCSPURLList – Bemeneti paraméter. Szóközzel elválasztott karakterlánc formájában kell a listát megadni, a következő formában: „http://pl1.hu http://pl2.hu http://pl3.hu”.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setDigestAlgorithm(long digestAlgorithm)

    A használandó lenyomatképző algoritmus az aláírás létrehozása esetén. Alapértelmezett értéke „sha256”.

    Paraméterek:

    • long digestAlgorithm – Bemeneti paraméter. A használandó lenyomatképző algoritmus azonosítója. Lehetséges értékeit a Session.DigestAlgorithm osztály tartalmazza publikus, statikus attribútumokként.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setDefaultSigningCert(long refType, String ref);

    Előre beállíthatunk egy alapértelmezett aláírói tanúsítványt, amelyet aláírásra szeretnénk használni, ilyenkor a modul nem kéri be minden aláírás előtt a tanúsítványt, hanem az előre beállítottat használja.

    Paraméterek:

    • long refType – Bemeneti paraméter. Értéke határozza meg a reference változó típusát. Lehetséges értékeit a Session.RefType osztály tartalmazza.
    String ref – Bemeneti paraméter. A tanúsítvány kiválasztásához használandó adat, típusát a refType paraméter határozza meg.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setDefaultTSAuthCert(long refType, String ref);

    Ha az időbélyeg szolgáltató tanúsítvány alapú autentikációt követel meg, akkor ezen függvény segítségével állíthatjuk be az alapértelmezetten használni kívánt autentikációs tanúsítványt.

    Paraméterek:

    • long refType – Bemeneti paraméter. Értéke határozza meg a reference változó típusát. Lehetséges értékeit a Session.RefType osztály tartalmazza.
    String ref – Bemeneti paraméter. A tanúsítvány kiválasztásához használandó adat, típusát a refType paraméter határozza meg.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setDefaultOCSPAuthCert(long refType, String ref);

    Ha az OCSP szolgáltató tanúsítvány alapú autentikációt követel meg, akkor ezen függvény segítségével állíthatjuk be az alapértelmezetten használni kívánt autentikációs tanúsítványt.

    Paraméterek:

    • long refType – Bemeneti paraméter. Értéke határozza meg a reference változó típusát. Lehetséges értékeit a Session.RefType osztály tartalmazza.
    • String ref – Bemeneti paraméter. A tanúsítvány kiválasztásához használandó adat, típusát a refType paraméter határozza meg.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setEngine(String engineID, String preInitCommands, String postInitCommands);

    Az aláíráshoz használandó openSSL engine-t állíthatjuk be a függvény segítségével.

    Paraméterek:

    • String engineID – Bemeneti paraméter. Az engine azonosítót kell megadni, pl.: „chil”.
    • String preInitCommands – Bemeneti paraméter. Az engine inicializálása előtt végrehajtandó parancsok listája, „parancs1:értékek1 parancs2:értékek2 …” formában.
    • String postInitCommands – Bemeneti paraméter. Az engine inicializálása után végrehajtandó parancsok listája, „parancs1:értékek1 parancs2:értékek2 …” formában.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setCustomNamespace(String customNamespace, String schemaLocation);

    A létrehozandó e-akták XML névterét („e-akta séma”) és a hozzá tartozó XML séma elérési helyét lehet beállítani e metódussal. Ezen függvény segítségével hozhatunk létre a kliens alkalmazásban látható ügyviteli sémákhoz hasonló aktákat.

    Paraméterek:

    • String customNamespace – Bemeneti paraméter. Az XML névtér URI-ját kell megadni e paraméterben.
    • String schemaLocation – Bemeneti paraméter. A névtérhez tartozó XML séma (XSD) fájl elérési helyét (URL-jét) kell megadni e paraméterben.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void validateOCSPResponder(boolean validateOCSPResponder);

    A metódus segítségével beállíthatjuk, hogy az e-Szignó ellenőrizze-e az OCSP válaszadó visszavonási állapotát.

    Paraméter:

    • boolean validateOCSPResponder – Bemeneti paraméter. Amennyiben értéke true, az OCSP válaszadók visszavonási állapota ellenőrzésre kerül.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setXAdESVersion(long ver);

    A metódus segítségével az aláírás létrehozása során használt XAdES szabvány verzióját állíthatjuk be.

    Paraméter:

    • long ver – Bemeneti paraméter. Értéke határozza meg a létrehozandó aláírások XAdES verzióját. Lehetséges értékeit a Session.XAdESVersion osztály tartalmazza.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    Megjegyzés:

    Signature level használata esetén kötelező minimum a EN-1.0.0 verzió használata, mivel ez a szabvány tartalmazza a baseline/extended profile szinteket.

    public void setOutputEncoding(long outputEncoding);

    A paraméter az e-akta mentésekor az XML kódolását állítja be.

    Paraméter:

    • long outputEncoding – Bemeneti paraméter. Értéke határozza meg a létrehozandó e-akták kódolását. Lehetséges értékeit a Session.OutputEncoding osztály tartalmazza.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setEncryptingPass(String password, String encryptingAlgo);

    A szimmetrikus kulcsú titkosításhoz használandó jelszót és titkosító algoritmust adhatjuk meg a metódus segítségével.

    Paraméterek:

    • String password – Bemeneti paraméter. A titkosításhoz és a titkosítás feloldásához használandó jelszó.
    • String encryptingAlgo – Bemeneti paraméter. A szimmetrikus kulcsú titkosításhoz használandó algoritmus azonosítója. Az azonosítók az openssl szerint definiált algoritmus azonosítók, pl.: aes-128-cbc. Teljes lista az alábbi oldalon található: http://www.openssl.org/docs/apps/enc.html. Amennyiben üres stringet adunk át paraméterként értéke „aes-128-cbc” lesz.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setEncryptingSymmetricKey(String key, String encryptingAlgo);

    A szimmetrikus kulcsú titkosításhoz használandó kulcsot és titkosító algoritmust adhatjuk meg a metódus segítségével.

    Paraméterek:

    • String key – Bemeneti paraméter. A titkosításhoz és a titkosítás feloldásához használandó kulcs, melyet hexa formátumú stringként kell megadni.
    • String encryptingAlgo – Bemeneti paraméter. A szimmetrikus kulcsú titkosításhoz használandó algoritmus azonosítója. Az azonosítók az openssl szerint definiált algoritmus azonosítók, pl.: aes-128-cbc. Teljes lista az alábbi oldalon található: http://www.openssl.org/docs/apps/enc.html. Amennyiben üres stringet adunk át paraméterként értéke „aes-128-cbc” lesz.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setIgnoreKeyUsage(boolean ignore);

    E paraméterrel beállítható, hogy az e-Szignó figyelembe vegye-e az aláírói tanúsítványban lévő kulcshasználat biteket az aláírás létrehozásakor vagy ellenőrzésekor.

    Paraméter:

    • boolean ignore - Amennyiben e paraméter értéke true, a program nem ellenőrzi a kulcshasználat mezőt, figyelmen kívül hagyja azt. Az alapértelmezett esetben (false beállítás) az aláírói tanúsítványban a kulcshasználat biteknek meg kell felelniük a vonatkozó szabványoknak, jogszabályoknak (a digitalSignature és/vagy a nonRepudiation bit kötelező).

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setOnlyQualifiedSignatures(boolean val);

    E paraméterrel beállítható, hogy a program csak minősített aláírói tanúsítványokat fogadjon el. (Ilyenkor a tanúsítványban található qcStatements kiterjesztést ellenőrzi az e-Szignó.) Ez a függvény elavult, használja helyette a void setOnlyQualifiedSignatures(long val); függvényt.

    Paraméter:

    • boolean val - Amennyiben e paraméter értéke true, a program csak megfelelő qcStatements kiterjesztéssel rendelkező aláírói tanúsítványokat fogad el.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setOnlyQualifiedSignatures(long val);

    Ezzel a függvény beállíthatjuk, hogy a modul mit követeljen meg az aláírói tanúsítványoktól.

    Paraméter:

    • long val – Bemeneti paraméter. Az aláírói tanúsítványokkal szemben támasztott követelmények szintje. Lehetséges értékeit a Session.SigRequirementsLevel osztály definiálja.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public native void setCAdES(boolean val);

    Beállítja, hogy a PKCS #7/CMS alapú aláírások ellenőrzésekor és létrehozásakor a minimális követelmény a CAdES legyen-e (konkrétan: bekerüljön-e az aláírásba a CAdES által megkövetelt id-smime-aa-signingCertificate aláírt tulajdonság, ill. elfogadjon-e olyan aláírásokat, amelyekben az nem található). Amennyiben értéke false, a létrehozott aláírások a CAdES-nek nem felelnek meg (!), és ellenőrzéskor elfogadja a nem CAdES aláírásokat is. Alapértelmezett értéke true. Hatással van a CMS és PDF aláírások létrehozására, valamint a CMS aláírások ellenőrzésére. (A PDF aláírások ellenőrzésekor az e-Szignó a vonatkozó szabvány sajátosságai miatt mindig elfogadja a nem CAdES aláírásokat is.)

    Paraméter:

    • boolean val – true vagy false. (Ld. Leírás.)

    public native void setSrvCertValidation(boolean validateSrvCerts);

    Megadható, hogy SSL kapcsolódás esetén (pl. https címek használatakor) az e-Szignó ellenőrizze a távoli szerver tanúsítványát. Alapértelmezés szerint be van kapcsolva ez a funkció.

    Paraméter:

    • boolean validateSrvCerts – true vagy false

    public native void setSrvCertRevChkDisable(String sURLList);

    A paraméter segítségével megadható, hogy SSL kapcsolódás esetén (pl. https címek használatakor) az e-Szignó ha ellenőrzi a távoli szerver tanúsítványát, akkor mely címek esetében nem kell ellenőriznie a visszavonási állapotot.

    Paraméter:

    • String sURLList - Bemeneti paraméter. Szóközzel elválasztott URL-ek listája.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public native void setURLRedirect(String sURLPairList);

    A megadott URL párok első tagjához történő kapcsolódás helyett minden esetben a második értékként megadott URL lesz használva.

    Paraméter:

    • String sURLPairList - Szóközökkel elválasztott URL párok.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public native byte[] sendData(byte[] in, String sURL, String sName, String sFilename);

    Állomány feltöltése HTTP-n keresztül. Ha a HTTP státusz kód értéke nem 200, akkor a függvény XSRException-t dob.

    Paraméterek:

    • byte[] in – a feltöltendő bájtsorozat
    • String sURL - az URL
    • String sName - a mező neve az űrlapon
    • String sFilename – az állomány neve az űrlapon

    Visszatérési érték

    HTTP válasz.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public native byte[] signHash(byte[] unsignedHash);

    A bemenetként kapott hash-t aláítja.

    Paraméter:

    • byte[]unsignedHash – az aláírandó hash bájtsorozat formában

    Visszatérési érték

    Az aláírt hash.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public native void setXmlIds(Session.XmlId[] xmlIds);

    A megadott elemek attribútumait ID típusúként kezeli az XSign4Java.

    Paraméter:

    • Session.XmlId[] xmlIds – az XML azonosító elemek tömbje

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setSigningCertificatePKCS11(String pkcs11ModulePath, long keyRefType, String keyRefValue, String pass)

    Az aláíró tanúsítványt lehet beállítani. A tanúsítvány PKCS#11-es függvénykönyvtáron keresztül érhető el.

    Paraméterek:

    • String pkcs11ModulePath – A PKCS#11-es függvénykönyvtár elérési útja.
    • long keyRefType – Bemeneti paraméter. Értéke határozza meg a keyRefValue változó típusát. Lehetséges értékeit a Session.PKCS11KeyRefType osztály tartalmazza.
    • String keyRefValue – Bemeneti paraméter. A tanúsítvány kiválasztásához használandó adat, típusát a keyRefType paraméter határozza meg.
    • String pass – A kulcshoz tartozó PIN kód.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setSigningCertificatePKCS11v2(String pkcs11ModulePath, long keyRefType, String keyRefValue, String sUserPIN, String sContextSpecificPIN);

    Az aláíró tanúsítványt lehet beállítani. A tanúsítvány PKCS#11-es függvénykönyvtáron keresztül érhető el.

    Paraméterek:

    • String pkcs11ModulePath – A PKCS#11-es függvénykönyvtár elérési útja.
    • long keyRefType – Bemeneti paraméter. Értéke határozza meg a keyRefValue változó típusát. Lehetséges értékeit a Session.PKCS11KeyRefType osztály tartalmazza.
    • String keyRefValue – Bemeneti paraméter. A tanúsítvány kiválasztásához használandó adat, típusát a keyRefType paraméter határozza meg.
    • String sUserPIN – A PKCS#11-es token felhasználói PIN kódja. Olyankor kell megadni, ha a tokennel olyan kriptográfiai műveletet (aláírás vagy kititkosítás) szeretnénk végrehajtani, ami hitelesítést igényel. (További információért olvassa el a PKCS#11: Cryptographic Token Interface Standard Version 2.20)
    • String sContextSpecificPIN – A PKCS#11-es token környezet specifikus PIN kódja. Olyankor kell megadni, ha egy kulcs minden használat (aláírás vagy kititkosítás) előtt hitelesítést igényel. (További információért olvassa el a PKCS#11: Cryptographic Token Interface Standard Version 2.20)

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void validateCertificate(byte[] certEncoded);

    Ellenőrzi a megadott X.509 tanúsítvány érvényességét.

    Paraméter:

    • byte[] certEncoded – A tanúsítvány PEM vagy DER kódolt bájttömb formájában.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setMelaszReadyVersion(long melaszReadyVersion);

    A paraméter a létrehozandó XML aláírásokra vonatkozó MELASZ Ready (magyar interoperábilitási) szabványra vonatkozó követelményeket lehet beállítani.

    Paraméterek:

    • long melaszReadyVersion – Bemeneti paraméter. Értéke határozza meg a MELASZ Ready verziót. Lehetséges értékeit a Session.MelaszReadyVersion osztály tartalmazza.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setReferenceCanonicalizationMethod(long referenceCanonicalizationMethod);

    Az XMLDSIG szabványnak megfelelő XML kanonizálások közül melyiket használja (c14n_incl, c14n_incl_wc, c14n_excl, c14n_excl_wc).

    Paraméterek:

    • long referenceCanonicalizationMethod – Bemeneti paraméter. Lehetséges értékeit a Session.ReferenceCanonicalizationMethod osztály tartalmazza.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void enableCURLDebug(boolean enable);

    A metódus segítségével bekapcsolhatjuk a CURL modul naplózását.

    Paraméterek:

    • boolean enable – Beállítja, hogy a CURL modul naplózása be legyen-e kapcsolva.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setTSRequestPolicyID(String policyID);

    Időbélyeg kérésben állítja be a hitelesítési rend OID-t.

    Paraméterek:

    • String policyID – Hitelesítési rend OID.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setTSCertRequest(boolean setCertRequest);

    Beállítja az időbélyeg kérésbe, hogy az időbélyegző szerver a válaszba beletegye-e a szolgáltatói tanúsítványát.

    Paraméterek:

    • boolean setCertRequest – true esetén az időbélyeg válaszban benne lesz a szolgáltatói tanúsítvány. Alapértelmezett értéke true.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public ESign createESign();

    Létrehoz egy ESign objektumot, amelynek segítségével az ESign protokoll futtatható.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setTSLUsage(long tslUsage, String tslCacheDir, String rootTSLURL, String tslTrustedCertDir);

    Segítségével a beállítható, hogy az alkalmazás aláírás létrehozáskor és ellenőrzéskor használja-e az EU Trust Service status List (TSL)-t.

    Paraméterek:

    • long tslUsage – Megadja, hogy az alkalmazás használja-e a TSL-t. Értéke Session.TSLUsage értéke lehet.
    • String tslCacheDir – Könyvtár elérési útja. Az alkalmazás ebbe a könyvtárba fogja tenni a TSL-hez tartozó ideiglenes fájlokat.
    • String rootTSLURL – A TSL-ek listáját tartalmazó listának az elérési helye.
    • String tslTrustedCertDir – Annak a könyvtárnak az elérési útja, amely tartalmazza a root TSL ellenőrzéséhez szükséges aláíró tanúsítványt.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    class Dossier

    Egy dossier objektum egy elektronikus aktát reprezentál. Ezen a felületen keresztül lehet az e-aktával kapcsolatos műveleteket elvégezni, mint például a dokumentum beillesztése, e-akta mentése. Ezen az interfészen keresztül érhetjük el az e-aktában található dokumentumokat és az aktára helyezett aláírásokat, időbélyegeket.

    Párhuzamosan több e-aktával is dolgozhatunk egyszerre. Használat után az aktát fel kell szabadítani. A Dossier osztály az e-akták speciális típusát, a tértivevényeket is képes kezelni.

    Tagfüggvények

    public void save(String dossierPath);

    Az aktuális e-aktát elmenti a fájlrendszerbe a dossierPath paraméterben megadott elérési útra a megadott névvel.

    Paraméter:

    • String dossierPath – Bemeneti paraméter. A mentendő fájl nevét kell megadni teljes elérési úttal.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public Document insertDocument(String documentPath, String mimeType);

    Fájlrendszerből beilleszt egy dokumentumot az elektronikus aktába. A dokumentum címe a beillesztett fájl neve lesz. A dokumentum címe később megváltoztatható. A beillesztett dokumentum MIME típusa a mimeType paraméterben átadott string lesz.

    Paraméter:

    • String documentPath – Bemeneti paraméter. A beillesztendő dokumentum elérési útja.
    • String mimeType – Bemeneti paraméter. A beillesztendő dokumentum MIME típusa. Ha null a paraméter értéke, akkor a függvényhívás a Dossier.insertDocument(String documentPath) függvényhívásként működik. (Lásd alább!)

    Visszatérési érték

    Egy új példány a Document osztályból. Ennek a segítségével érhetjük el a dokumentumhoz tartozó funkcionalitást.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public Document insertDocument(String documentPath);

    Fájlrendszerből beilleszt egy dokumentumot az elektronikus aktába. A dokumentum címe a beillesztett fájl neve lesz. A dokumentum címe később megváltoztatható. Windows operációs rendszeren az XSign4Java automatikusan felismeri a fájl MIME típusát, ha az be van regisztrálva a Windows-ban. Más operációs rendszeren text/plain lesz a MIME típus.

    Paraméter:

    • String documentPath – Bemeneti paraméter. A beillesztendő dokumentum elérési útja.

    Visszatérési érték

    Egy új példány a Document osztályból. Ennek a segítségével érhetjük el a dokumentumhoz tartozó funkcionalitást.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public Signature sign();

    Aláírja az elektronikus aktát. Ez az aláírás magát az aktát írja alá, ez azt jelenti, hogy egyben a dossziéban szereplő összes dokumentum is aláírásra kerül. Az aláírás után az e-akta tartalma nem módosítható, nem lehet belőle dokumentumokat törölni, vagy beilleszteni. Újabb aláírás elhelyezhető az aktán.

    Az elkészülő aláírás típusa nagymértékben függ a session beállításaitól, így az aláírás típus, az időbélyeg és a visszavonási információk beállításaitól. Ha be van állítva alapértelmezett aláírói tanúsítvány, akkor azzal történik az aláírás, ha nincs, akkor a modul a felhasználóval választtatja ki az aláíráshoz használni kívánt tanúsítványt. Hasonlóképpen történik az időbélyeg és OCSP szolgáltatások esetében is. Ezekről a beállításokról részletesebben a Session osztály leírásánál olvashatnak.

    Visszatérési érték

    Egy Signature osztály új példánya. Ezen példány segítségével érhetjük el az aláíráshoz tartozó funkcionalitást.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public Signature sign2();

    Aláírja az elektronikus aktát. Ez az aláírás magát az aktát írja alá, ez azt jelenti, hogy egyben a dossziéban szereplő összes dokumentum is aláírásra kerül. Az aláírás után az e-akta tartalma nem módosítható, nem lehet belőle dokumentumokat törölni, vagy beilleszteni. Újabb aláírás elhelyezhető az aktán.

    Az elkészülő aláírás típusa nagymértékben függ a session beállításaitól, így az aláírás típus, az időbélyeg és a visszavonási információk beállításaitól. Ha be van állítva alapértelmezett aláírói tanúsítvány, akkor azzal történik az aláírás, ha nincs, akkor a modul a felhasználóval választtatja ki az aláíráshoz használni kívánt tanúsítványt. Hasonlóképpen történik az időbélyeg és OCSP szolgáltatások esetében is. Ezekről a beállításokról részletesebben a Session osztály leírásánál olvashatnak. A public Signature sign() metódussal ellentétben a public Signature sign2() metódus nem dob kivételt, ha nem sikerül az időbélyegzés vagy a visszavonási információk beszerzése.

    Visszatérési érték

    Egy Signature osztály új példánya. Ezen példány segítségével érhetjük el az aláíráshoz tartozó funkcionalitást.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public Signature signWithProperties(String signaturePolicyURL, String signaturePlacePostalCode, String signaturePlaceSettlement, String signaturePlaceProvince , String signaturePlaceCountry , String signerRole, String commitmentType);

    Aláírja az elektronikus aktát és hozzáadja a paraméterben szereplő adatokat aláírási tulajdonságként. Ez az aláírás magát az aktát írja alá, ez azt jelenti, hogy egyben a dossziéban szereplő összes dokumentum is aláírásra kerül. Az aláírás után az e-akta tartalma nem módosítható, nem lehet belőle dokumentumokat törölni, vagy beilleszteni. Újabb aláírás elhelyezhető az aktán.

    Az elkészülő aláírás típusa nagymértékben függ a session beállításaitól, így az aláírás típus, az időbélyeg és a visszavonási információk beállításaitól. Ha be van állítva alapértelmezett aláírói tanúsítvány, akkor azzal történik az aláírás, ha nincs, akkor a modul a felhasználóval választtatja ki az aláíráshoz használni kívánt tanúsítványt. Hasonlóképpen történik az időbélyeg és OCSP szolgáltatások esetében is. Ezekről a beállításokról részletesebben a Session osztály leírásánál olvashatnak.

    Paraméterek:

    • String signaturePolicyURL – Bemeneti paraméter. Az aláírási szabályzat URI-ja. Nincs alapértelmezett értéke.
    • String signaturePlacePostalCode – Bemeneti paraméter. Az aláírás helye: irányítószám. Nincs alapértelmezett értéke.
    • String signaturePlaceSettlement – Bemeneti paraméter. Az aláírás helye: város. Nincs alapértelmezett értéke.
    • String signaturePlaceProvince – Bemeneti paraméter. Az aláírás helye: megye. Nincs alapértelmezett értéke.
    • String signaturePlaceCountry – Bemeneti paraméter. Az aláírás helye: ország. Nincs alapértelmezett értéke.
    • String signerRole – Bemeneti paraméter. Az aláaró szerepe. Nincs alapértelmezett értéke.
    • String commitmentType – Bemeneti paraméter. Az aláíró kötelezettség-vállalása. Nincs alapértelmezett értéke. A XAdES szabvány szerinti lehetséges értékei a CommitmentType osztályban vannak definiálva.

    Visszatérési érték

    Egy Signature osztály új példánya. Ezen példány segítségével érhetjük el az aláíráshoz tartozó funkcionalitást.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public Signature counterSign();

    Ellenjegyzést készít az elektronikus aktára. Ez az ellenjegyzés magát az aktát írja alá és az aktához tartozó többi keretaláírást, ez azt jelenti, hogy egyben a dossziéban szereplő összes dokumentum is aláírásra kerül. Az aláírás után az e-akta tartalma nem módosítható, nem lehet belőle dokumentumokat törölni, vagy beilleszteni. Újabb aláírás elhelyezhető az aktán.

    Az elkészülő aláírás típusa nagymértékben függ a session beállításaitól, így az aláírás típus, az időbélyeg és a visszavonási információk beállításaitól. Ha be van állítva alapértelmezett aláírói tanúsítvány, akkor azzal történik az aláírás, ha nincs, akkor a modul a felhasználóval választtatja ki az aláíráshoz használni kívánt tanúsítványt. Hasonlóképpen történik az időbélyeg és OCSP szolgáltatások esetében is. Ezekről a beállításokról részletesebben a Session osztály leírásánál olvashatnak. A public Signature sign() metódussal ellentétben a public Signature sign2() metódus nem dob kivételt, ha nem sikerül az időbélyegzés vagy a visszavonási információk beszerzése.

    Visszatérési érték

    Egy Signature osztály új példánya. Ezen példány segítségével érhetjük el az ellenjegyzéshez tartozó funkcionalitást.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public Signature addTimeStamp();

    Időbélyeget készít az elektronikus aktára. Ez az időbélyeg magát az aktát írja alá, ez azt jelenti, hogy egyben a dossziéban szereplő összes dokumentum is időbélyegezve lesz. Az időbélyegzés után az e-akta tartalma nem módosítható, nem lehet belőle dokumentumot törölni, vagy újat beilleszteni. Újabb aláírás vagy időbélyeg elhelyezhető az aktán.

    Az időbélyeg szolgáltató és a hozzá tartozó felhasználói adatok a Session osztály egyes metódusainak segítségével állíthatóak be. Ezekről a beállításokról részletesebben a Session osztály leírásánál olvashatnak.

    Visszatérési érték

    Egy Signature osztály új példánya. Ezen példány segítségével érhetjük el az aláíráshoz tartozó funkcionalitást.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getIdentifier();

    Az akta azonosítóját adja vissza a metódus.

    Visszatérési érték

    Az akta azonosítóját tartalmazó String objektum. (Megfelel a parancssoros e-Szignó dokumentum azonosítójának, amelyet a -doc_id kapcsolóval adunk meg.) e-Szignó-val előállított e-akták esetében ez tipikusan „Object0”.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getTitle();

    Az e-akta címét adja vissza a metódus.

    Visszatérési érték

    Az akta címét tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getSerial();

    Az e-akta belső sorszámát adja vissza a metódus.

    Visszatérési érték

    Az e-akta belső azonosítóját tartalmazó String objektum. e-Szignó-val előállított e-akták esetében ez tipikusan „0”.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getType();

    Az e-akta típusát adja vissza a metódus.

    Visszatérési érték

    Az e-akta típusát tartalmazó String objektum.

    Lehetséges értékei:

    • „elektronikus akta”
    • „elektronikus átvételi elismervény”

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getCategory();

    Az e-akta kategóriáját adja vissza a metódus.

    Visszatérési érték

    Az e-akta kategóriáját tartalmazó String objektum.

    Lehetséges értékei:

    • „electronic dossier”
    • „electronic acknowledgement”

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getCreationDate();

    Az e-akta készítésének az időpontját adja vissza a függvény. Ez az időpont a számítógép rendszerórája szerinti időpont, ezért nem tekinthető megbízható időpontnak.

    Visszatérési érték

    Az e-akta létrehozásának dátumát tartalmazó String objektum. A dátum formátuma: „yyyy-MM-dd’T’HH:mm:ss’Z’”. Pl.: 2007-07-18T13:06:11Z

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public Document[] getDocuments();

    Az e-aktában található dokumentumokat adja vissza a metódus.

    Visszatérési érték

    Dokumentumokat tartalmazó tömb. A tömb egyes elemei a Document osztály példányai. Ennek részlets leírása a Document fejezetben található.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public Signature[] getSignatures();

    Az e-aktában található aláírásokat adja vissza a metódus.

    Visszatérési érték

    Aláírásokat tartalmazó tömb. A tömb egyes elemei a Signature osztály példányai. Ennek részletes leírása a Signature fejezetben található.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setTitle(String title);

    Az e-aktának a címét állítja be a metódus. Csak akkor lehet a címet megváltoztatni, ha az akta még nincs aláírva.

    Paraméter:

    • String title – Bemeneti paraméter. Az akta új címét tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setCustomMetaData(HashMap hashMap);

    Az elektronikus aktához csatolhatunk metaadatokat. A metaadatokat név-érték párok formájában egy HashMap objektum segítségével adhatjuk meg. Ezek az aktán belül XML-ként kerülnek tárolásra, ezzel megkönnyíthetjük az elektronikus akták későbbi visszakereshetőségét és kategorizálását. Mivel a nevek XML elemek lesznek, ezért csak olyan nevek adhatók, melyek XML-ben szerepelhetnek. Az e-akta ezeken a metaadatokon kívül egyéb metaadatokat is tartalmaz XML formában.

    Paraméter:

    • HashMap hashMap – Bemeneti paraméter. A metaadatokat tartalmazó HashMap objektum. (Megjegyzés: a HashMap objektumban a kulcs-érték párok tetszőleges objektumok lehetnek. A feldolgozás során, a kulcs és érték objektumokon meghívott toString() metódus által visszaadott string-ek kerülnek be az e-akta metaadatai közé.)

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setCustomMetaData(ArrayList customMetaDataList);

    Az elektronikus aktához csatolhatunk metaadatokat.

    Paraméter:

    • ArrayList customMetaDataList – Bemeneti paraméter. CustomMetaData típusú objektumokat tartalmazó lista

    public HashMap getCustomMetaData();

    Az e-akta metaadatait adja vissza.

    Visszatérési érték

    HashMap objektum, mely kulcs, érték párokat tartalmaz. A kulcs String objektumban tartalmazza a metaadat megnevezését. Az érték String objektumban tartalmazza a metaadat értékét.

    public void getCustomMetaData(ArrayList customMetaDataList);

    Az e-akta metaadatait adja visszaArrayList customMetaData objektum lista formájában.

    Paraméter:

    • ArrayList customMetaDataList – Ki- és bemeneti paraméter. A listát először kiüríti, majd feltölti az e-akta metaadatait reprezentáló CustomMetaData típusú objektumokkal

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void encrypt();

    Titkosítja az e-aktát az Session.setRecipientCertList() beállításnak megfelelően.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void checkAcknowledgement(String sPath);

    Átvételi elismervény ellenőrzése. Ha a Dossier objektum egy tértivevény (átvételi elismervény), akkor használható a függvény a tértivevény ellenőrzésére. Ha nem tértivevény a Dossier, akkor hibát dob a metódus.

    Paraméter:

    • String dossierPath – Bemeneti paraméter. A tértivevényhez tartozó e-akta elérési útját kell megadni (amiről az átvételi elismervény készült).

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getUnsignedHash();

    Ez a metódus az összeállított e-aktából kinyeri az aláíratlan lenyomatot, melyre elosztott (kétmenetes) aláírás készítésekor van szükség.

    Az elosztott aláírás készítés részleteiről a Dossier.setSignedHash() függvény leírásában olvashat.

    Visszatérési érték

    A base64 kódolt aláíratlan lenyomatot tartalmazó string.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setSignedHash(String hash);

    Az elosztott aláírás készítés harmadik lépcsőjeként az aláírt lenyomatot lehet visszahelyezni a félig kész elektronikus aktába.

    A kétmenetes (elosztott) aláírás lényege, hogy az aláírást az e-Szignó program két menetben hozza létre: az első menetben a megadott tanúsítvánnyal létrehozza az aláírás XML keretét a kötelezően aláírandó metaadatokkal, valamint kiszámítja az aláírandó adatok lenyomatát, amit egy külső alkalmazásnak (pl. weboldalba illesztett ActiveX control vagy Java applet) átad aláírásra. A második menetben a külső alkalmazás által aláírt lenyomatot beilleszti a félkész aláírásba, majd ellenőrzi az aláírói tanúsítványt, esetleg időbélyeggel (XAdES-T) bőviti az aláírást.

    Az aláíráshoz szükséges magánkulcs és az aláíró program fizikailag elkülönül, tipikusan a magánkulcs a kliens géphez csatlakoztatott kártyaolvasóba helyezett kártyán, az aláíró program (e-Szignó SDK) pedig a browser „túloldalán”, a HTTPS kapcsolatot kiszolgáló szervergépen fut. A kliens nem tudja a magánkulcsát eljuttatni a szerverre, hisz az „be van zárva a kártyába”, így a kliens e-Szignón kívül csak a kétmenetes aláírás marad, mint megoldás.

    A kétmenetes aláírás pár előnye:

    • Az XML feldolgozáshoz és a tanúsítvány ellenőrzéshez szükséges programkód egy központi szerveren fut, egységes konfigurációval.
    • A lenyomat aláírása viszonylag könnyen implementálható a kliens számítógépén, ezáltal az aláírás olyan platformokon is elérhetővé válhat, ahova a teljes „arzenál” (XML feldolgozás, időbélyegzés, OCSP…) portolása nagyon sok időt venne igénybe.
    • A klienseknek csak egy nagyon kis alkalmazást (ActiveX control, Java applet) kell letölteniük az aláíráshoz. („Vékony” kliens.)

    A kétmenetes aláírás használatának feltétele, hogy a kliens megbizonyosodjon és megbízzon a szerver által számára elküldött lenyomat valódiságában, pl. szerver-autentikált HTTPS (SSL) kapcsolat szükséges!

    Az elosztott aláírás folyamatában először be kell állítani az aláíráshoz használandó tanúsítványt az Session.setSigningCertificate() metódussal, majd a kész aktának le kell kérni az aláíratlan lenyomatát a Dossier.getUnsignedHash() függvénnyel, a lenyomatot aláíratni kliens oldalon, végül az aláírt lenyomatot visszahelyezni az aktába ezzel a függvénnyel.

    Ld. még az e-Szignó parancssoros interfészének dokumentációját (doc/eszigno3_ref.html).

    Paraméterek:

    • String hash – Bemeneti paraméter. A base64 kódolt aláírt lenyomat.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public byte[] getSource();

    Visszaadja az XML forrását.

    Visszatérési érték

    Az XML forrása bájtsorozatként.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void free();

    Felszabadítja az e-aktával kapcsolatos memóriaterületeket az xsign4java DLL-en belül. Figyelem! A függvény hatására mind az e-aktát szimbolizáló Dossier, mind az abban található dokumentumokat ill. aláírásokat jelentő Document és Signature objektumok használhatatlanná válnak. Metódusaik meghívása nem definiált működéshez vezet!

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public ValidationResult validate(boolean recursive, boolean forceValidateAllSignatures, boolean showProperties, int truncateToXAdESType, int addTimestamp, boolean checkDocumentFormat)

    E-akta hitelességének ellenőrzése. A függvény ellenőrzi, hogy az e-akta nem üres-e, valamint hogy az összes dokumentum aláírása érvényes-e. A keretaláírás az összes dokumentum aláírásának számít. Az időbélyegek nem számítanak aláírásnak. Rekurzív módban az e-aktába illesztett e-akta típusú dokumentumok belsejét is ellenőrzi. Amennyiben egy érvénytelen aláírás „kívül” egy érvényessel „védve van”, a program elfogadja az aktát. (Pl. a dokumentum aláírása lejárt, de a keretaláírás érvényes.) Ez a működés felülbírálható a forceValidateAllSignatures paraméter használatával.

    Paraméterek:

    • boolean recursive – megadható, hogy az e-aktába illesztett e-akták belsejét is ellenőrizze-e
    • boolean forceValidateAllSignatures – megadható, hogy a keretaláírással ellátott akták esetében, a belső aláírások is ellenőrzésre kerüljenek
    • boolean showProperties – megadható, hogy a kimeneti listában szerepeljenek-e a XAdES által megkövetelt, a későbbi ellenőrzéshez szükséges elemek
    • int truncateToXAdESType – az ellenőrzés előtt az aláírás XAdES-típusát az új XAdES típusra csökkenti
    • int addTimestamp – ezen opció egy bizonyos típusú időbélyegből még egy darab beillesztésére ad lehetőséget
    • boolean checkDocumentFormat – megadható, hogy az e-aktában lévő dokumentumok formátumát ellenőrizze-e az e-Szignó; az egyetlen, jelenleg támogatott dokumentumformátum a PDF, tehát a formátumellenőrzés csak erre fog lefutni

    Visszatérési érték

    Egy ValidationResult objektum, amely tartalmazza a validálás eredményének hibakódját és a validálás eredményének XML kimenetét.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    class ForeignDossier

    Nem e-akta típusú XML-ek aláírását kezelő felület. Ezen osztály segítségével hozhatunk létre különálló aláírást is. Különálló aláírás esetén a létrejövő aláírás nem tartalmazza magát a dokumentumot, csak a dokumentumra való hivatkozást. Emiatt lehetőség van nagy, akár több GByte-os fájlok aláírására. Ez az osztály lehetőséget ad arra is, hogy bármilyen XML-ben aláírást helyezzünk el.

    Tagfüggvények

    public void insertDocument(String sURI, String sMIMEType);

    Egy megadott URL-en lévő fájlt fog beilleszteni az aláírandó fájlok listájába. A modul fájlrendszerből és HTTP csatornán keresztül képes fájlokat különálló aláírással ellátni. Az aláírás a következő ForeignDossier.sign() híváskor készül el, ekkor törlődik az aláírandó fájlok listája.

    Paraméterek:

    • String sURI – Bemeneti paraméter. A fájl URL-je.
    • String sMIMEType – Bemeneti paraméter. A fájl MIME típusa.

    Kivétel:

    A függvény IllegalArgumentException-t dob hibás bemeneti paraméter esetén. A függvény IllegalStateException-t dob, ha egy aláírt XML-t még megpróbálunk aláírni.

    public void insertDocument(URI uri, String sMIMEType);

    Egy megadott URL-en lévő fájlt fog beilleszteni az aláírandó fájlok listájába. A modul fájlrendszerből és HTTP csatornán keresztül képes fájlokat különálló aláírással ellátni. Az aláírás a következő ForeignDossier.sign() híváskor készül el, ekkor törlődik az aláírandó fájlok listája.

    Paraméterek:

    • URI uri – Bemeneti paraméter. A fájl URL-je.
    • String sMIMEType – Bemeneti paraméter. A fájl MIME típusa.

    Kivétel:

    A függvény IllegalArgumentException-t dob hibás bemeneti paraméter esetén. A függvény IllegalStateException-t dob, ha egy aláírt XML-t még megpróbálunk aláírni.

    public void sign();

    A korábban ForeignDossier.insertDocument(String sURI, String sMIMEType) vagy ForeignDossier.insertDocument(URI sURI, String sMIMEType) metódus segítségével megadott dokumentumokat írja alá.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void signWithProperties(String signaturePolicyURL, String signaturePlacePostalCode, String signaturePlaceSettlement, String signaturePlaceProvince , String signaturePlaceCountry , String signerRole, String commitmentType);

    A korábban ForeignDossier.insertDocument(String sURI, String sMIMEType) vagy ForeignDossier.insertDocument(URI sURI, String sMIMEType) metódus segítségével megadott dokumentumokat írja alá és hozzáadja a paraméterben szereplő adatokat aláírási tulajdonságként.

    Paraméterek:

    • String signaturePolicyURL – Bemeneti paraméter. Az aláírási szabályzat URI-ja. Nincs alapértelmezett értéke.
    • String signaturePlacePostalCode – Bemeneti paraméter. Az aláírás helye: irányítószám. Nincs alapértelmezett értéke.
    • String signaturePlaceSettlement – Bemeneti paraméter. Az aláírás helye: város. Nincs alapértelmezett értéke.
    • String signaturePlaceProvince – Bemeneti paraméter. Az aláírás helye: megye. Nincs alapértelmezett értéke.
    • String signaturePlaceCountry – Bemeneti paraméter. Az aláírás helye: ország. Nincs alapértelmezett értéke.
    • String signerRole – Bemeneti paraméter. Az aláaró szerepe. Nincs alapértelmezett értéke.
    • String commitmentType – Bemeneti paraméter. Az aláíró kötelezettség-vállalása. Nincs alapértelmezett értéke. A XAdES szabvány szerinti lehetséges értékei a CommitmentType osztályban vannak definiálva.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void save(String foreignDossierPath);

    Az aktuális XML-t elmenti a fájlrendszerbe a foreignDossierPath paraméterben megadott elérési útra a megadott névvel.

    Paraméter:

    • String foreignDossierPath – Bemeneti paraméter. A mentendő fájl nevét kell megadni teljes elérési úttal.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public boolean isSigned();

    Megadja, hogy az adott akta alá van-e írva.

    Visszatérési érték

    True érték esetén az akta alá van írva, false esetén nincs aláírva.

    public String[] getDocuments();

    Az aktában meghivatkozott dokumentumok URL listáját adja vissza a metódus.

    Visszatérési érték

    String objektumok tömbje, amely tartalmazza a dokumentumok URL-jeit.

    public Signature[] getSignatures();

    Az e-aktában található aláírásokat adja vissza a metódus.

    Visszatérési érték

    Aláírásokat tartalmazó tömb. A tömb egyes elemei a Signature osztály példányai. Ennek részletes leírása a Signature című fejezetben található.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void AddToURLCache(String sURL, byte[] data);

    E függvény használható az XSign4Java URL gyorsítótárának (cache) feltöltésére, ezáltal lehetőség van aktuálisan nem elérhető, de előzetesen beszerzett online tartalmak offline aláírására is. Amennyiben az XSign4java az aktuális akta feldolgozásakor (pl. aláírás készítésekor) olyan URL-lel találkozik, amely szerepel a cache-ben, nem próbál meg hozzákapcsolódni, hanem a megadott bájtsorozatot fogja az URL tartalmaként használni. Minden „foreign dossier”-hez külön URL cache tartozik.

    Paraméterek:

    • String sURL – Az URL java.lang.String objektumként.
    • byte[] data – Az URL tartalma bájtsorozatként. Ez a gyorsítótárba teendő fájl.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void AddToURLCache(URL url, byte[] data);

    Működése megegyezik az előző metóduséval.

    Paraméterek:

    • Url url – Az URL java.net.URL objektumként.
    • byte[] data – Az URL tartalma bájtsorozatként. Ez a gyorsítótárba teendő fájl.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setBaseURI(String baseURI);

    Ha a ForeignDossier.insertDocument(String sURI, String sMIMEType) vagy ForeignDossier.insertDocument(URI sURI, String sMIMEType) metódus segítségével relatív URI-ról szeretnénk dokumentumot beilleszteni, akkor előtte be kell állítanunk az alap URI-t.

    Paraméterek:

    • String baseURI – Az alap URI java.lang.String objektumként.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setBaseURI(URI baseURI);

    Működése megegyezik az előző metóduséval.

    Paraméterek:

    • URI baseURI – Az alap URI java.net.URI objektumként.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void registerXPathNS(String sPrefix, String sHRef);

    XML-be illesztendő aláírás létrehozása előtt ezen függvény használatával regisztrálhatjuk be az aláíráskor megadandó XPath kifejezésben használt XML névtér prefixeket.

    Paraméterek:

    • String sPrefix – Az XML névtér prefix.
    • String sHRef – Az XML névtér URI (HREF).

    Kivétel:

    Hiba esetén a metódus XSRException-t vagy IllegalStateException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void addTBSObject(String sURI, long lTransform, String sMIMEType);

    Beágyazott XML aláírás készítésekor e metódus segítségével tölthetjük fel az aláírandó XML elemek listáját – egy addTBSObject() hívás egy elemet ad ehhez a listához. Az aláírás a következő sign() híváskor készül el – ekkor törlődik az aláírandó XML elemek listája.

    Paraméterek:

    • String sURI – Az aláírandó XML elem URI-ja. Csak az Id alapú (#Id formátumú) belső URI-k támogatottak.
    • long lTransform – Az XML elemen aláíráskor elvégzendő transzformáció. Lehetséges értékei:
      • 0 – XML kanonizálás. Az XML elem teljes forrása (befoglaló címkékkel együtt) aláírásra kerül.
      • 1 – Base64 dekódolás. Csak az XML elembe ágyazott base64 kódolt tartalom kerül aláírásra, a címkék nem.
    • String sMIMEType – Base64 kódolt tartalom esetén értelmezett bemeneti paraméter. Az aláírt tartalom MIME-típusa adható meg vele.

    Kivétel:

    Hiba esetén a metódus XSRException-t vagy IllegalStateException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void addTBSObject(String sURI, long lTransform);

    Beágyazott XML aláírás készítésekor e metódus segítségével tölthetjük fel az aláírandó XML elemek listáját – egy addTBSObject() hívás egy elemet add ehhez a listához. Az aláírás a következő sign() híváskor készül el – ekkor törlődik az aláírandó XML elemek listája.

    Paraméterek:

    • String sURI – Az aláírandó XML elem URI-ja. Csak az Id alapú (#Id formátumú) belső URI-k támogatottak.
    • long lTransform – Az XML elemen aláíráskor elvégzendő transzformáció. Lehetséges értékei:
      • 0 – XML kanonizálás. Az XML elem teljes forrása (befoglaló címkékkel együtt) aláírásra kerül.
      • 1 – Base64 dekódolás. Csak az XML elembe ágyazott base64 kódolt tartalom kerül aláírásra, a címkék nem.

    public void sign (String sXPath, long lInsertAs, boolean bAddSchemaLocation);

    Elkészíti a beágyazott XML aláírást a korábban „beillesztett” fájlokra (addTBSObject() hívás). Az elkészülő aláírás típusa függ az Session felületen keresztül beállított paraméterek értékeitől.

    Paraméterek:

    • String sXPath – Az XPath kifejezés adja meg, hogy az aláírás hová kerüljön az XML-ben.
    • long lInsertAs – A beillesztendő aláírás helyét az xpath paraméterrel együtt határozza meg. Jelentése:
      • 0 – az sXPath-szal megadott hely első gyerekelemeként kerül beszúrásra az aláírás.
      • 1 – az sXPath-szal megadott helyet megelőző helyre kerül beillesztésre az aláírás.
    • boolean bAddSchemaLocation – igaz érték esetén a schemaLocation hozzáadódik a beillesztett Signature elemhez.

    public void sign (String sXPath, long lInsertAs);

    Elkészíti a beágyazott XML aláírást a korábban „beillesztett” fájlokra (addTBSObject() hívás). Az elkészülő aláírás típusa függ az Session felületen keresztül beállított paraméterek értékeitől. Megfelel a sign(sXPath, lInsertAs, false); hívásnak.

    Paraméterek:

    • String sXPath – Az XPath kifejezés adja meg, hogy az aláírás hová kerüljön az XML-ben.
    • long lInsertAs – A beillesztendő aláírás helyét az xpath paraméterrel együtt határozza meg. Jelentése:
      • 0 – az sXPath-szal megadott hely első gyerekelemeként kerül beszúrásra az aláírás.
      • 1 – az sXPath-szal megadott helyet megelőző helyre kerül beillesztésre az aláírás.

    public void sign (String sXPath);

    Elkészíti a beágyazott XML aláírást a korábban „beillesztett” fájlokra (addTBSObject() hívás). Az elkészülő aláírás típusa függ az Session felületen keresztül beállított paraméterek értékeitől. Megfelel a sign(sXPath, 0, false); hívásnak.

    Paraméterek:

    • String sXPath – Az XPath kifejezés adja meg, hogy az aláírás hová kerüljön az XML-ben.

    public void signWithProperties (String signaturePolicyURL, String signaturePlacePostalCode, String signaturePlaceSettlement, String signaturePlaceProvince , String signaturePlaceCountry , String signerRole, String commitmentType, String sXPath, long lInsertAs, boolean bAddSchemaLocation);

    Elkészíti a beágyazott XML aláírást a korábban „beillesztett” fájlokra (addTBSObject() hívás) és hozzáadja a paraméterben szereplő adatokat aláírási tulajdonságként. Az elkészülő aláírás típusa függ az Session felületen keresztül beállított paraméterek értékeitől.

    Paraméterek:

    • String signaturePolicyURL – Bemeneti paraméter. Az aláírási szabályzat URI-ja. Nincs alapértelmezett értéke.
    • String signaturePlacePostalCode – Bemeneti paraméter. Az aláírás helye: irányítószám. Nincs alapértelmezett értéke.
    • String signaturePlaceSettlement – Bemeneti paraméter. Az aláírás helye: város. Nincs alapértelmezett értéke.
    • String signaturePlaceProvince – Bemeneti paraméter. Az aláírás helye: megye. Nincs alapértelmezett értéke.
    • String signaturePlaceCountry – Bemeneti paraméter. Az aláírás helye: ország. Nincs alapértelmezett értéke.
    • String signerRole – Bemeneti paraméter. Az aláaró szerepe. Nincs alapértelmezett értéke.
    • String commitmentType – Bemeneti paraméter. Az aláíró kötelezettség-vállalása. Nincs alapértelmezett értéke. A XAdES szabvány szerinti lehetséges értékei a CommitmentType osztályban vannak definiálva.
    • String sXPath – Az XPath kifejezés adja meg, hogy az aláírás hová kerüljön az XML-ben.
    • long lInsertAs – A beillesztendő aláírás helyét az xpath paraméterrel együtt határozza meg. Jelentése:
      • 0 – az sXPath-szal megadott hely első gyerekelemeként kerül beszúrásra az aláírás.
      • 1 – az sXPath-szal megadott helyet megelőző helyre kerül beillesztésre az aláírás.
    • boolean bAddSchemaLocation – igaz érték esetén a schemaLocation hozzáadódik a beillesztett Signature elemhez.

    public byte[] getSource();

    Visszaadja az XML forrását.

    Visszatérési érték

    Az XML forrása bájtsorozatként.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void free();

    Felszabadítja az e-aktával kapcsolatos memóriaterületeket az xsign4java DLL-en belül. Figyelem! A függvény hatására mind az e-aktát szimbolizáló ForeignDossier, mind az abban található dokumentumokat ill. aláírásokat jelentő Document és Signature objektumok használhatatlanná válnak. Metódusaik meghívása nem definiált működéshez vezet!

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    class Document

    Az elektronikus aktán belül található dokumentumok interfésze. Ezen keresztül végezhetők el a dokumentumokkal kapcsolatos műveletek, mint például az egyes dokumentumok aláírása, dokumentum törlése az e-aktából. Ezen a felületen keresztül kérhetjük le a dokumentum egyes tulajdonságait is.

    Tagfüggvények

    public void save(String documentPath);

    Az elektronikus aktában lévő dokumentumot ki lehet menteni a fájlrendszerbe a megadott névre.

    Paraméterek:

    • String documentPath – Bemeneti paraméter. A mentés helyét kell megadni ebben a paraméterben teljes vagy relatív elérési úttal.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void save(String documentPath, boolean dontDecrypt);

    Az elektronikus aktában lévő dokumentumot ki lehet menteni a fájlrendszerbe a megadott névre. A dontDecrypt paraméter true értéke esetén a titkosított dokumentumot PKCS7 formátumban, BASE64 kódolva kapjuk. Ha a dokumentum nem volt titkosítva, akkor a dontDecrypt paraméter értékének nincs hatása, azaz az eredtileg beillesztett dokumentumot kapjuk.

    Paraméterek:

    • String documentPath – Bemeneti paraméter. A mentés helyét kell megadni ebben a paraméterben teljes vagy relatív elérési úttal.
    • boolean dontDecrypt – Bemeneti paraméter, mely megadja, hogy titkosított dokumentum esetén kérjük-e annak visszafejtését.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public Signature sign();

    Aláírja az aktuális dokumentumot. Az aláírás után a dokumentum tartalma nem módosítható, újabb aláírás vagy időbélyeg azonban elhelyezhető a dokumentumon illetve az e-aktán.

    Az elkészült aláírás típusa nagymértékben függ a session beállításaitól, így az aláírás típus, az időbélyeg és a visszavonási információk beállításaitól. Ha be van állítva alapértelmezett aláírói tanúsítvány, akkor azzal történik az aláírás, ha nincs, akkor a modul a felhasználóval választatja ki az aláíráshoz használni kívánt tanúsítványt. Hasonlóképpen történik az időbélyeg és OCSP szolgáltatások esetében is.

    Ezekről a beállításokról részletesebben a Session osztály leírásánál olvashatnak.

    Visszatérési érték

    Egy Signature osztály új példánya. Ennek segítségével érhetjük el az aláíráshoz tartozó funkcionalitást.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public Signature signWithProperties(String signaturePolicyURL, String signaturePlacePostalCode, String signaturePlaceSettlement, String signaturePlaceProvince , String signaturePlaceCountry , String signerRole, String commitmentType);

    Aláírja a dokumentumot és hozzáadja a paraméterben szereplő adatokat aláírási tulajdonságként. Ez az aláírás magát az aktát írja alá, ez azt jelenti, hogy egyben a dossziéban szereplő összes dokumentum is aláírásra kerül. Az aláírás után az e-akta tartalma nem módosítható, nem lehet belőle dokumentumokat törölni, vagy beilleszteni. Újabb aláírás elhelyezhető az aktán.

    Az elkészülő aláírás típusa nagymértékben függ a session beállításaitól, így az aláírás típus, az időbélyeg és a visszavonási információk beállításaitól. Ha be van állítva alapértelmezett aláírói tanúsítvány, akkor azzal történik az aláírás, ha nincs, akkor a modul a felhasználóval választtatja ki az aláíráshoz használni kívánt tanúsítványt. Hasonlóképpen történik az időbélyeg és OCSP szolgáltatások esetében is. Ezekről a beállításokról részletesebben a Session osztály leírásánál olvashatnak.

    Paraméterek:

    • String signaturePolicyURL – Bemeneti paraméter. Az aláírási szabályzat URI-ja. Nincs alapértelmezett értéke.
    • String signaturePlacePostalCode – Bemeneti paraméter. Az aláírás helye: irányítószám. Nincs alapértelmezett értéke.
    • String signaturePlaceSettlement – Bemeneti paraméter. Az aláírás helye: város. Nincs alapértelmezett értéke.
    • String signaturePlaceProvince – Bemeneti paraméter. Az aláírás helye: megye. Nincs alapértelmezett értéke.
    • String signaturePlaceCountry – Bemeneti paraméter. Az aláírás helye: ország. Nincs alapértelmezett értéke.
    • String signerRole – Bemeneti paraméter. Az aláaró szerepe. Nincs alapértelmezett értéke.
    • String commitmentType – Bemeneti paraméter. Az aláíró kötelezettség-vállalása. Nincs alapértelmezett értéke. A XAdES szabvány szerinti lehetséges értékei a CommitmentType osztályban vannak definiálva.

    Visszatérési érték

    Egy Signature osztály új példánya. Ezen példány segítségével érhetjük el az aláíráshoz tartozó funkcionalitást.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public Signature counterSign();

    Aláírja az aktuális dokumentumot és a dokumentumon található aláírásokat. Az ellenjegyzés után a dokumentum tartalma nem módosítható, újabb aláírás vagy időbélyeg azonban elhelyezhető a dokumentumon illetve az e-aktán.

    Az elkészült ellenjegyzés típusa nagymértékben függ a session beállításaitól, így az aláírás típus, az időbélyeg és a visszavonási információk beállításaitól. Ha be van állítva alapértelmezett aláírói tanúsítvány, akkor azzal történik az aláírás, ha nincs, akkor a modul a felhasználóval választatja ki az aláíráshoz használni kívánt tanúsítványt. Hasonlóképpen történik az időbélyeg és OCSP szolgáltatások esetében is.

    Ezekről a beállításokról részletesebben a Session osztály leírásánál olvashatnak.

    Visszatérési érték

    Egy Signature osztály új példánya. Ennek segítségével érhetjük el az ellenjegyzéshez tartozó funkcionalitást.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public Signature sign2();

    Aláírja az aktuális dokumentumot. Az aláírás után a dokumentum tartalma nem módosítható, újabb aláírás vagy időbélyeg azonban elhelyezhető a dokumentumon illetve az e-aktán.

    Az elkészült aláírás típusa nagymértékben függ a session beállításaitól, így az aláírás típus, az időbélyeg és a visszavonási információk beállításaitól. Ha be van állítva alapértelmezett aláírói tanúsítvány, akkor azzal történik az aláírás, ha nincs, akkor a modul a felhasználóval választatja ki az aláíráshoz használni kívánt tanúsítványt. Hasonlóképpen történik az időbélyeg és OCSP szolgáltatások esetében is.

    Ezekről a beállításokról részletesebben a Session osztály leírásánál olvashatnak. A public Signature sign() metódussal ellentétben a public Signature sign2() metódus nem dob kivételt, ha nem sikerül az időbélyegzés vagy a visszavonási információk beszerzése.

    Visszatérési érték

    Egy Signature osztály új példánya. Ennek segítségével érhetjük el az aláíráshoz tartozó funkcionalitást.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void delete();

    Törli az aktuális dokumentumot. A törlés után a dokumentum objektum érvénytelen lesz és minden rajta végrehajtott művelet hibára fut.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public Signature addTimeStamp();

    Időbélyeget készít az adott dokumentumra. Az időbélyegzés után a dokumentum tartalma nem módosítható, de újabb aláírás vagy időbélyeg elhelyezhető a dokumentumon.

    Az időbélyeg szolgáltató és a hozzá tartozó felhasználói adatok a Session osztály egyes metódusainak segítségével állíthatóak be. Ezekről a beállításokról részletesebben a Session osztály leírásánál olvashatnak.

    Visszatérési érték

    A Signature osztály egy új példánya. Ennek segítségével érhetjük el az aláíráshoz tartozó funkcionalitást.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getIdentifier();

    A dokumentum azonosítóját adja vissza a metódus.

    Visszatérési érték

    A dokumentum azonosítóját tartalmazó String objektum. (Megfelel a parancssoros e-Szignó dokumentum azonosítójának, amelyet a -doc_id kapcsolóval adunk meg.)

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getTitle();

    Az e-akta címét adja vissza a metódus.

    Visszatérési érték

    Az akta címét tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getSerial();

    A dokumentum belső sorszámát adja vissza a metódus.

    Visszatérési érték

    A dokumentum belső azonosítóját tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getCategory();

    Az e-akta kategóriáját adja vissza a metódus.

    Visszatérési érték

    Az e-akta kategóriáját tartalmazó String objektum.

    Lehetséges értékei:

    • „electronic data”
    • „electronic document”
    • „electronic record”
    • „electronic profile”

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getInsertationDate();

    A dokumentum beillesztésének az időpontját adja vissza a függvény. Ez az időpont a számítógép rendszerórája szerinti időpont, ezért nem tekinthető megbízható időpontnak.

    Visszatérési érték

    A dokumentum beillesztésének dátumát tartalmazó String objektum. A dátum formátuma: „yyyy-MM-dd’T’HH:mm:ss’Z’”. Pl.: 2007-07-18T13:06:11Z

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getMainMimeType();

    A beillesztett dokumentum fő MIME típusát adja vissza.

    Visszatérési érték

    A dokumentum fő MIME típusát tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getSubMimeType();

    A beillesztett dokumentum al MIME típusát adja vissza.

    Visszatérési érték

    A dokumentum al MIME típusát tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getExtension();

    Az eredeti dokumentum fájl kiterjesztését adja vissza.

    Visszatérési érték

    A dokumentum kiterjesztését tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public Signature[] getSignatures();

    A dokumentumon található aláírásokat adja vissza a metódus.

    Visszatérési érték

    Aláírásokat tartalmazó tömb. A tömb egyes elemei a Signature osztály példányai. Ennek részletes leírása a Signature című fejezetben található.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public int getLength();

    A dokumentum méretét adja meg.

    Visszatérési érték

    A dokumentum mérete.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public byte[] getDocument();

    Magát a beillesztett dokumentumot adja vissza a metódus.

    Visszatérési érték

    A dokumentumot tartalmazó bájttömb.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public byte[] getDocument(boolean dontDecrypt);

    Magát a beillesztett dokumentumot adja vissza a metódus. A dontDecrypt paraméter true értéke esetén a titkosított dokumentumot PKCS7 formátumban, BASE64 kódolva kapjuk. Ha a dokumentum nem volt titkosítva, akkor a dontDecrypt paraméter értékének nincs hatása, azaz az eredtileg beillesztett dokumentumot kapjuk.

    Paraméterek:

    • String documentPath – Bemeneti paraméter. A mentés helyét kell megadni ebben a paraméterben teljes vagy relatív elérési úttal.
    • boolean dontDecrypt – Bemeneti paraméter, mely megadja, hogy titkosított dokumentum esetén kérjük-e annak visszafejtését.

    Visszatérési érték

    A dokumentumot tartalmazó bájttömb.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public int isMimeChecked();

    Visszaadja, hogy a dokumentum beillesztésekor megtörtént-e a MIME típus ellenőrzése, és ha igen, akkor milyen eredménnyel zárult. MIME típus ellenőrzés csak Windows operációs rendszeren történik.

    Visszatérési érték

    A MIME típus ellenőrzés eredménye. Lehetséges értékei:

    • 0 – A MIME típus nem lett ellenőrizve beillesztéskor.
    • 1 – Történt MIME típus ellenőrzés beillesztéskor, de a megadott típus nem felet meg a valóságnak.
    • 2 – Történt MIME típus ellenőrzés beillesztéskor, és a megadott típus megfelel a detektált értéknek.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String[] getTransformations();

    A dokumentum e-aktába illesztésekor beállításoktól függően átesik néhány transzformáción. Ez a metódus megadja az egyes transzformációkat.

    Visszatérési érték

    String objektumok tömbje, amely a dokumentumon végzett transzformációkat tartalmazza.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setTitle(String title);

    A beillesztett dokumentum címét változtathatjuk meg ezen metódus segítségével. Csak azoknak a dokumentumoknak a címét tudjuk megváltoztatni, amelyek nincsenek aláírva.

    Paraméter:

    • String title – Bemeneti paraméter. A dokumentum új címét tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setCustomMetaData(HashMap hashMap);

    A dokumentumokhoz csatolhatunk metaadatokat. A metaadatokat név-érték párok formájában egy HashMap objektum segítségével adhatjuk meg. Ezek a dokumentum mellett XML-ként kerülnek tárolásra, ezzel megkönnyíthetjük a dokumentumok későbbi visszakereshetőségét és kategorizálását. Mivel a nevek XML elemek lesznek, ezért csak olyan nevek adhatók, melyek XML-ben szerepelhetnek. A dokumentum ezeken a metaadatokon kívül egyéb metaadatokat is tartalmaz XML formában.

    Paraméter:

    • HashMap hashMap – Bemeneti paraméter. A metaadatokat tartalmazó HashMap objektum. (Megjegyzés: a HashMap objektumban a kulcs-érték párok tetszőleges objektumok lehetnek. A feldolgozás során, a kulcs és érték objektumokon meghívott toString() metódus által visszaadott string-ek kerülnek be a dokumentum metaadatai közé.)

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setCustomMetaData(ArrayList customMetaDataList);

    Az elektronikus aktában található dokumentumhoz csatolhatunk metaadatokat.

    ArrayList customMetaDataList – Bemeneti paraméter. CustomMetaData típusú objektumokat tartalmazó lista.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public HashMap getCustomMetaData();

    A dokumentum metaadatait adja vissza.

    Visszatérési érték

    HashMap osztály, mely kulcs, érték párokat tartalmaz. A kulcs String objektumban tartalmazza a metaadat megnevezését. Az érték String objektumban tartalmazza a metaadat értékét.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void getCustomMetaData(ArrayList customMetaDataList);

    Az dokumentum metaadatait adja vissza.

    Paraméter:

    • ArrayList customMetaDataList – Ki- és bemeneti paraméter. A listát először kiüríti, majd feltölti a dokumentum metaadatait reprezentáló CustomMetaData típusú objektumokkal.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void encrypt();

    Titkosítja a dokumentumot az Session.setRecipientCertList() beállításnak megfelelően.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public AttachedCertificate[] getRecipientCertificates();

    Visszaadja a titkosító tanúsítványokat.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public RecipientInfo[] getRecipientInfos();

    Visszaadja a titkosított dokumentum cimzettjeinek a tanúsítványát és privát kulcsát Base64 kódolva.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    class Signature

    Az elektronikus aktában található aláírások és időbélyegek interfésze. Ezen az interfészen keresztül végezhetők el az aláírásokkal, időbélyegekkel kapcsolatos műveletek, mint például az aláírás ellenőrzése, törlése; illetve ezen a felületen keresztül érhetjük el az aláírások és időbélyegek tulajdonságait.

    Tagfüggvények

    public void validate();

    Az aláírás ellenőrzését végzi a metódus, melynek menete függ a session-ben beállított paraméterektől. Tehát a visszavonás ellenőrzés módját és az esetleges hozzáférési információkat mindenképpen be kell állítani az Session interfészen keresztül.

    A funkció ellenőrzi az aláírás sértetlenségét, az aláírói tanúsítvány visszavonási állapotát és az aláíráson elhelyezett időbélyegeket is, tehát elvégzi a komplett aláírás ellenőrzést. Az ellenőrzés az időbélyegek esetén is hasonlóan történik.

    Az ellenőrzés során lehetőség van arra, hogy az aláírás típusát megváltoztassuk, kibővítsük visszavonási információkkal és időbélyegekkel. Akár alap aláírásból is készíthetünk archív aláírást, ehhez az Session interfészen keresztül be kell állítani a megfelelő paramétereket.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található. Az INCOMPLETE_VALIDATION hibakód azt jelenti, hogy az ellenőrzés során a valamely tanúsítvány állapotát nem sikerült ellenőrizni. Ez nem jelenti azt, hogy az aláírás nem volt érvényes; ennek leggyakrabban az az oka, hogy egy tanúsítványhoz tartozó visszavonási információból nem áll rendelkezésre a legfrissebb verzió.

    public void delete();

    Törli az aktuális aláírást. A törlés után az aláírás objektum érvénytelen lesz és minden rajta végrehajtott művelet hibára fut.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getIdentifier();

    Az aláírás azonosítóját adja vissza a metódus.

    Visszatérési érték

    Az aláírás azonosítóját tartalmazó String objektum. (Megfelel a parancssoros e-Szignó aláírás azonosítójának, amelyet a -sig_id kapcsolóval adunk meg.)

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getSignerName();

    Az aláíró nevét adja vissza. Automata aláírói tanúsítvány használata esetében is az automata aláírói tanúsítványban szereplő nevet adja meg a metódus.

    Visszatérési érték

    Az aláíró nevét tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getSerial();

    Az aláírás belső sorszámát adja vissza a metódus.

    Visszatérési érték

    Az aláírás belső azonosítóját tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getType();

    Az aláírás típusát adja vissza a metódus.

    Visszatérési érték

    Az aláírás tartalmazó String objektum.

    Lehetséges értékei:

    • „aláírás”
    • „ellenjegyzés”
    • „időbélyeg”

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getCreationDate();

    Az aláírás készítésének az időpontját adja vissza a függvény. Ez az időpont a számítógép rendszerórája szerinti időpont, ezért nem tekinthető megbízható időpontnak.

    Visszatérési érték

    Az aláírás létrehozásának dátumát tartalmazó String objektum. A dátum formátuma: „yyyy-MM-dd’T’HH:mm:ss’Z’”. Pl.: 2007-07-18T13:06:11Z

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public int getXadesType();

    Az aláírás XAdES típusát adja vissza a metódus.

    Visszatérési érték

    A XAdES típus, lehetséges értékei:

    • 0 – NON_XADES nem XAdES típusú aláírás
    • 1 - XADES_BES alap aláírás, ez nem tartalmaz időbélyeget
    • 2 - XADES_EPES alap aláírás aláírási szabályzattal
    • 3 - XADES_T egy időbélyeges aláírás
    • 4 - XADES_C ellenőrzési adatok csatolása
    • 6 - XADES_X_L ellenőrzési adatok védelme időbélyeggel
    • 7 - XADES_A teljes aláírás védelme archív időbélyeggel

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public boolean isBasedOnEPES();

    Megvizsgálja, hogy van-e aláírási szabálzat csatolva az aláíráshoz.

    Visszatérési érték

    Igazzal tér vissza, ha van csatolva aláírási szabályzat az aláíráshoz, ellenkező esetben hamis értéket ad vissza.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getBeforeSigningTime();

    Az aláírást megelőző időbélyegben szereplő időpontot adja vissza a metódus. Mivel ez az időpont egy időbélyegen található, ezért megbízhatónak tekinthető.

    Visszatérési érték

    Az aláírást megelőző időbélyegben szereplő dátum.

    A dátum formátuma: „yyyy-MM-dd’T’HH:mm:ss’Z’”. Pl.: 2007-07-18T13:06:11Z

    Ha nincs aláírást megelőző időbélyeg, akkor üres stringet ad vissza. (Tehát nem dob kivételt, és nem null a visszatérési érték.)

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getAfterSigningTime();

    Az aláírást követő időbélyegben szereplő időpontot adja vissza a metódus. Mivel ez az időpont egy időbélyegen található, ezért megbízhatónak tekinthető.

    Visszatérési érték

    Az aláírást követő időbélyegben szereplő dátum.

    A dátum formátuma: „yyyy-MM-dd’T’HH:mm:ss’Z’”. Pl.: 2007-07-18T13:06:11Z

    Ha nincs aláírást követő időbélyeg, akkor üres stringet ad vissza. (Tehát nem dob kivételt, és nem null a visszatérési érték.)

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public boolean isQualified();

    Megadja, hogy az aláírói tanúsítvány minősített-e.

    Visszatérési érték

    True érték esetén minősített, false érték esetén nem minősített tanúsítvánnyal készült az aláírás.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getSignaturePolicy();

    Az aláíráskor használt aláírási szabályzat URL-jét adja vissza a metódus.

    Visszatérési érték

    Az aláírási szabályzat URL-jét tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getCertificateChainInfo();

    Az aláíráshoz tartozó tanúsítványlánc szöveges információját adja vissza a függvény.

    Visszatérési érték

    A tanúsítványlánc szöveges információját tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getSignerAlternativeName();

    Az aláíró alternatív nevét adja vissza a függvény.

    Visszatérési érték

    Az aláíró alternatív nevét tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getSignerApplication();

    Az aláírást létrehozó alkalmazás nevét adja vissza a függvény.

    Visszatérési érték

    Az aláírás létrehozó alkalmazás nevét tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public boolean isDocumentSafeViewed();

    A kliens oldali e-Szignó lehetőséget biztosít néhány fájl formátum esetén arra, hogy aláírás előtt biztonságos megjelenítővel megtekintsük azt. Ez a metódus megadja, hogy ilyen biztonságos megjelenítővel megtekintették-e az aláírt dokumentumot.

    Visszatérési érték

    True érték esetén az aláírás előtt biztonságos megjelenítővel megtekintették az aláírandó dokumentumot, false érték esetén nem tekintették meg.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public boolean isDocumentSignedByAServer();

    Az aláírást készítheti természetes személy vagy automata. Ez a metódus megadja, hogy az adott aláírást automaták számára kiállított tanúsítvánnyal készítették-e.

    Visszatérési érték

    True érték esetén az aláírást szerver készítette, false érték esetén nem.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getCertificateInBase64();

    Az aláírói tanúsítványt adja vissza BASE64 kódolva.

    Visszatérési érték

    Az aláírói tanúsítványt BASE64 kódolt formában tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getCertificateChainInBase64();

    Az aláírói tanúsítvány láncát alkotó tanúsítványokat adja vissza BASE64 kódolva.

    Visszatérési érték

    A tanúsítványlánc elemeit képező tanúsítványokat BASE64 kódolt formában tartalmazó String tömb.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getSignatureAlgorithm();

    E metódus visszaadja az aláírás létrehozásához használt algoritmus nevét.

    Visszatérési érték

    Az algoritmus nevét tartalmazó String.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. Az XSRException leírása a 3.1-es fejezetben található.

    public String getSignatureKeyDescription();

    E metódus visszaadja az aláíráshoz használt kulcs típusának szöveges leírását.

    Visszatérési érték

    Az aláíró kulcs típusának leírása.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. Az XSRException leírása a 3.1-es fejezetben található.

    public String getCertSignAlgorithm();

    E metódus visszaadja az aláíró tanúsítvány aláírásához használt algoritmus nevét.

    Visszatérési érték

    Az aláírói tanúsítványt aláíró algoritmus nevét tartalmazó String.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. Az XSRException leírása a 3.1-es fejezetben található.

    public long getXAdESVersion();

    E metódus visszaadja, hogy az aláírás mely XAdES típusnak felel meg, Session.XAdESVersion szerint.

    Visszatérési érték

    A XAdES típust tartalmazó long érték (Session.XAdESVersion szerint).

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. Az XSRException leírása a 3.1-es fejezetben található.

    public String getAfterFirstValidationTime();

    E metódus visszaadja az aláírás első ellenőrzése utáni megbízható időpontot (a *RefsTimeStamp elem alapján).

    Visszatérési érték

    Az aláírás első ellenőrzése utáni megbízható időpontot tartalmazó String.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. Az XSRException leírása a 3.1-es fejezetben található.

    public String getLastArchiveTSTime();

    E metódus visszaadja az utolsó archív időbélyeg időpontját.

    Visszatérési érték

    Az utolsó archív időbélyeg időpontját tartalmazó String.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. Az XSRException leírása a 3.1-es fejezetben található.

    public String getLastArchiveTSValidityEnd();

    E metódus visszaadja az utolsó archív időbélyegző tanúsítványának lejárati időpontját.

    Visszatérési érték

    Az utolsó archív időbélyegző tanúsítványának lejárati időpontját tartalmazó String.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. Az XSRException leírása a 3.1-es fejezetben található.

    public SignProperties getSignProperties();

    E metódus visszaadja az aláíráshoz tartozó további aláírói tulajdonságokat egy SignProperties objektumban.

    Visszatérési érték

    További aláírói tulajdonságok egy SignProperties objektumban.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. Az XSRException leírása a 3.1-es fejezetben található.

    public QCResult getQCResult();

    E metódus hasznos információkat szolgáltat az aláírói tanúsítvány minősítésével kapcsolatban.

    Visszatérési érték

    Minősítési információk egy QCResult objektumban.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob.

    public String GetOrganizationIdentifier();

    E metódus visszaadja, aláírói tanúsítvány szervezeti azonosítóját.

    Visszatérési érték

    Az aláírói tanúsítvány szervezeti azonosítóját tartalmazó string.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob.

    public Signature[] getCounterSignedSignatures();

    Lehetőség van arra, hogy nem csak dokumentumot, hanem a dokumentumot aláíró aláírást is aláírjuk, azaz ellenjegyezzük az aláírást. Ez a metódus visszaadja az adott aláíráson található ellenjegyzéseket.

    Visszatérési érték

    Az aláíráshoz tartozó ellenjegyzéseket tartalmazó tömb. Mivel az ellenjegyzés is aláírás, így a tömb Signature objektumokat tartalmaz.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public AttachedPKIItem[] getAttachedPKIItems();

    Egy aláíráshoz több PKI elem is tartozhat, mint például időbélyegek, OCSP válaszok, CRL-ek, tanúsítványok. Ez a metódus az aláíráshoz tartozó PKI elemek listáját adja vissza. A PKI elemekről részletesen a AttachedPKIItem című fejezetben olvashat részletesen.

    Visszatérési érték

    Az aláíráshoz tartozó PKI elemeket tartalmazó tömb. A tömb objektumai az AttachedPKIItem leszármazott osztályaiból kerülnek ki.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    Példa:

    Signature signature = dossier.getSignatures()[0];
    AttachedPKIItem[] attachedPKIItems = signature.getAttachedPKIItems();
    for (int i = 0; i < attachedPKIItems.length; i++) {
        if (attachedPKIItems[i] != null) {
            System.out.println("\nattachedPKIItems["+i+"]:");
            System.out.println("IssuerDN: "+attachedPKIItems[i].getIssuerDN());
            try {
                AttachedTS ats = (AttachedTS)(attachedPKIItems[i]);
                System.out.println("attachedPKIItems["+i+"] is TS");
                System.out.println("MessageImprint: "+ats.getMessageImprint());
                System.out.println("TimeString: "+ats.getTimeString());
            } catch (ClassCastException cce) {
                System.out.println("attachedPKIItems["+i+"] isn't TS");
            }
            try {
                AttachedOCSP aocsp = (AttachedOCSP)(attachedPKIItems[i]);
                System.out.println("attachedPKIItems["+i+"] is OCSP");
                System.out.println("ProducedAt: "+aocsp.getProducedAt());
                for (int j = 0; j < aocsp.getSingleResponses().length; j++) {
                    System.out.println("SingleResponeses["+j+"]:");
                    System.out.println("-->CertificateStatus: "+aocsp.getSingleResponses()[j].getCertificateStatus());
                }
            } catch (ClassCastException cce) {
                System.out.println("attachedPKIItems["+i+"] isn't OCSP");
            }
            try {
                AttachedCRL acrl = (AttachedCRL)(attachedPKIItems[i]);
                System.out.println("attachedPKIItems["+i+"] is CRL");
                System.out.println("CRLInDER length: "+acrl.getCRLInDER().length);
            } catch (ClassCastException cce) {
                System.out.println("attachedPKIItems["+i+"] isn't CRL");
            }
            try {
                AttachedCertificate ac = (AttachedCertificate)(attachedPKIItems[i]);
                System.out.println("attachedPKIItems["+i+"] is certificate");
                System.out.println("SubjectCN: "+ac.getSubjectCN());
            } catch (ClassCastException cce) {
                System.out.println("attachedPKIItems["+i+"] isn't certificate");
            }
        }
    }
    

    public byte[] getCommentDoc();

    Egy aláíráshoz tartozhat csatolt megjegyzés dokumentum. Magát a beillesztett dokumentumot adja vissza a metódus.

    Visszatérési érték

    A dokumentumot tartalmazó bájttömb.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public CommentDocument getCommentDocument();

    Egy az aláíráshoz csatolt megjegyzés dokumentumot reprezentáló CommentDocument objektumot ad vissza.

    Visszatérési érték

    CommentDocument objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public HashMap getCustomMetaData();

    Az aláírás metaadatait adja vissza.

    Visszatérési érték

    HashMap osztály, mely kulcs, érték párokat tartalmaz. A kulcs String objektumban tartalmazza a metaadat megnevezését. Az érték String objektumban tartalmazza a metaadat értékét.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void getCustomMetaData(ArrayList customMetaDataList);

    Az aláírás metaadatait adja vissza.

    Paraméter:

    • ArrayList customMetaDataList – Ki- és bemeneti paraméter. A listát először kiüríti, majd feltölti az aláírás metaadatait reprezentáló CustomMetaData típusú objektumokkal.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public SignatureReference[] getReferences();

    Az aláírás által hivatkozott aláírt adatokról ad vissza információt.

    Visszatérési érték

    SignatureReference tömb, melynek elemei az egyes referenciákat reprezentáló példányok.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getUnsignedHash();

    Ez a metódus a félig kész aláírásból kinyeri az aláíratlan lenyomatot, melyre elosztott (kétmenetes) aláírás készítésekor van szükség.

    Az elosztott aláírás készítés részleteiről a Dossier.setSignedHash() függvény leírásában olvashat.

    Visszatérési érték

    A base64 kódolt aláíratlan lenyomatot tartalmazó string.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setSignedHash(String hash);

    Ez a metódus a félig kész aláírásba illeszti az aláírt lenyomatot

    Az elosztott aláírás készítés részleteiről a Dossier.setSignedHash() függvény leírásában olvashat.

    Paraméterek:

    • String hash – Bemeneti paraméter. A base64 kódolt aláírt lenyomat.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getSignerRole();

    Az aláíró szerepét adja vissza a függvény.

    Visszatérési érték

    Az aláíró szerepét tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    class AttachedPKIItem

    Egy aláírásban több PKI elem is található. Ilyen PKI elemek:

    • OCSP válasz
    • CRL
    • időbélyeg
    • tanúsítvány

    Ez az osztály az egyes speciális PKI elemek szülője. Ennek segítségével elérhetjük azokat a funkciókat, melyek minden PKI elemhez tartoznak.

    Tagfüggvények

    public String getXmlIdentifier();

    A PKI elem XML-ben található azonosítóját adja vissza.

    Visszatérési érték

    Azonosító string formában.

    public String getIssuerDN();

    A PKI elemhez tartozó tanúsítvány kiadójának DN-je. OCSP esetén a válaszadó tanúsítványáról, CRL és időbélyeg esetén az aláíró tanúsítványáról ad információt a metódus.

    Visszatérési érték

    A tanúsítvány kiadójának DN-je string formában.

    class AttachedTS

    Az aláíráshoz tartozó időbélyeg objektumról kérdezhetünk le információkat az osztály segítségével.

    Tagfüggvények

    public int getAccuracy_s();

    Az időbélyeg szolgáltató pontosságát kérdezhetjük le.

    Visszatérési érték

    Az időbélyeg szolgáltató pontosságát tartalmazó érték másodpercben megadva.

    public int getAccuracy_ms();

    Az időbélyeg szolgáltató pontosságát kérdezhetjük le.

    Visszatérési érték

    Az időbélyeg szolgáltató pontosságát tartalmazó érték miliszekundum megadva.

    public int getAccuracy_us();

    Az időbélyeg szolgáltató pontosságát kérdezhetjük le.

    Visszatérési érték

    Az időbélyeg szolgáltató pontosságát tartalmazó érték mikroszekundumban megadva.

    public int getVersion();

    Az időbélyeg protokoll verziószámát adja vissza.

    Visszatérési érték

    Az időbélyeg protokoll verziószáma.

    public String getHashAlgorithm();

    Az időbélyegzés során használt lenyomatképző algoritmus megnevezését adja vissza a metódus.

    Visszatérési érték

    A lenyomatképző algoritmus megnevezése string formában.

    public String getMessageImprint();

    Az időbélyegben szereplő lenyomatot adja vissza hexadecimális formában. Az AttachedTS.getHashAlgorithm() függvénnyel olvashatjuk ki, hogy milyen algoritmussal készült a lenyomat.

    Visszatérési érték

    Lenyomatot tartalmazó String objektum.

    public String getNonce();

    Az időbélyeg kérés session azonosítóját adja vissza. Ezt az értéket az RFC 3161 definiálja.

    Visszatérési érték

    Session azonosító string.

    public String getPolicyIdentifier();

    Az időbélyegzési szabályzat azonosítóját adja vissza.

    Visszatérési érték

    Szabályzatot azonosító string.

    public String getSerialNumber();

    Az időbélyeg sorozatszámát kérdezhetjük le.

    Visszatérési érték

    Az időbélyeg sorozatszámát tartalmazó string.

    public String getStatusText();

    Az időbélyeg kérésre adott válasz státuszát adja meg a metódus.

    Visszatérési érték

    Az időbélyeg státuszát tartalmazó string.

    public String getTimeString();

    Az időbélyeg dátumát kérdezhetjük le.

    Visszatérési érték

    Az időbélyeg dátumát tartalmazó String objektum. A dátum formátuma: „yyyyMMddHHmmssz”. Pl.: 20080119132759Z

    public byte[] getTSACertificateInDER();

    Az időbélyeg-szolgáltató ASN.1 DER kódolt tanúsítványát adja vissza.

    Visszatérési érték

    A tanúsítványt tartalmazó byte tömb.

    public String getItemName();

    Az időbélyeget tartalmazó XML elem nevét adja vissza.

    Visszatérési érték

    Az időbélyeget tartalmazó XML elem neve string formátumban.

    class AttachedCRL

    Az aláíráshoz tartozó visszavonási lista (CRL) objektumról kérdezhetünk le információkat az osztály segítségével.

    Tagfüggvények

    public byte[] getCRLInDER();

    Magát a CRL választ adja vissza DER kódolt formában.

    Visszatérési érték

    A CRL-t tartalmazó byte tömb.

    class AttachedOCSP

    Ezen az interfészen keresztül tudjuk az egyes OCSP válaszok részleteit lekérdezni. Egy OCSP tranzakción belül több OCSP válasz is érkezhet, ezeknek az egyedi OCSP válaszoknak az interfésze az AttachedOCSPSingleResponse.

    Tagfüggvények

    public byte[] getCertificateInDER();

    Az OCSP válaszadó ASN.1 DER formátumban kódolt tanúsítványát adja vissza.

    Visszatérési érték

    A DER kódolt tanúsítványt tartalmazó byte tömb.

    public String getCertificateSubjectCN();

    Az OCSP válaszadó tanúsítványában szereplő tulajdonosi CN (Common Name) mező értékét adja vissza.

    Visszatérési érték

    A CN-t tartalmazó string.

    public AttachedExtension[] getExtensions();

    Az egy OCSP tranzakcióban kapott egyedi OCSP válaszokhoz tartozó AttachedExtension típusú objektumokat kérhetjük le a metódus segítségével.

    Visszatérési érték

    Az AttachedExtension objektumokat tartalmazó tömb.

    public String getProducedAt();

    A metódus az OCSP válasz létrehozásának időpontját (producedAt mezőt) adja meg szöveges formában.

    Visszatérési érték

    Az időpontot tartalmazó String objektum.

    public String getResponderIdentifier();

    Az OCSP válaszadó egyedi azonosítóját (DN) adja meg.

    Visszatérési érték

    Az egyedi azonosítót tartalmazó String objektum.

    Például: „CN=Microsec e-Szigno Test OCSP Responder, OU=e-Szigno CA, O = Microsec Ltd., L=Budapest, C=HU”.

    public String getResponseStatus();

    A metódus az OCSP válasz státuszát adja vissza szöveges formában.

    Visszatérési érték

    Az státusz információt tartalmazó String objektum.

    public String getResponseType();

    Az OCSP válasz típusát adja meg.

    Visszatérési érték

    A típust tartalmazó String objektum.

    public String getSignature();

    Az OCSP válaszon lévő aláírást adja vissza hexadecimális formában.

    Visszatérési érték

    Az aláírás string formátumban.

    public AttachedOCSPSingleResponse[] getSingleResponses();

    Az egy OCSP tranzakcióban kapott egyedi OCSP válaszokhoz tartozó AttachedOCSPSingleResponse típusú objektumokat kérhetjük le a metódus segítségével.

    Visszatérési érték

    Az AttachedOCSPSingleResponse objektumokat tartalmazó tömb.

    public int getVersion();

    Az OCSP válasz verzióját adja meg.

    Visszatérési érték

    A verzió információt tartalmazó szám.

    class AttachedOCSPSingleResponse

    Ezen interfészen keresztül tudjuk az egyes egyedi OCSP válaszok részleteit lekérdezni.

    Tagfüggvények

    public String getCertificateStatus();

    A kérdezett tanúsítvány állapotát adja vissza szöveges formátumban.

    Visszatérési érték

    A tanúsítvány állapota string formában.

    public String getCurrentUpdate();

    A válasz érvényességének a kezdetét (thisUpdate mező) adja meg.

    Visszatérési érték

    Az érvényesség kezdetét jelző időpontot tartalmazó String objektum.

    public AttachedExtension[] getExtensions();

    Az egyedi OCSP válaszokhoz tartozó AttachedExtension típusú interfészeket kérhetjük le a metódus segítségével. A több kiterjesztés közül egy index segítségével választhatunk.

    Visszatérési érték

    AttachedExtension objektumokat tartalmazó vektor.

    public String getHashAlgorithm();

    A használt lenyomatképző algoritmus nevét adja vissza.

    Visszatérési érték

    A lenyomatképző algoritmus nevét tartalmazó String objektum.

    public String getIssuerKey();

    A kérdezett tanúsítványt kibocsátó hitelesítés-szolgáltató nyilvános kulcsának lenyomata hexadecimális formában.

    Visszatérési érték

    A kulcs lenyomatát tartalmazó String objektum.

    public String getIssuerName();

    A kérdezett tanúsítványt kibocsátó hitelesítés-szolgáltató DN mezőjének tartalma.

    Visszatérési érték

    A DN mezőt tartalmazó String objektum.

    public String getNextUpdate();

    A válasz érvényességének a végét (nextUpdate) adja meg.

    Visszatérési érték

    Az érvényesség végét jelző időpontot tartalmazó String objektum.

    public boolean isNotGood();

    A kérdezett tanúsítvány „jó” állapotát jelzi.

    Visszatérési érték

    true érték esetén a kérdezett tanúsítvány nem érvényes (visszavonták, felfüggesztették), false érték esetén jó a tanúsítvány.

    public String getSerialNumber();

    A kérdezett tanúsítvány sorozatszáma hexadecimális formában.

    Visszatérési érték

    A sorozatszámot tartalmazó String objektum.

    class AttachedExtension

    Ezen interfészen keresztül tudjuk az egyedi OCSP válaszokhoz tartozó kiterjesztések részleteit lekérdezni.

    Tagfüggvények

    public boolean isCriticality();

    Megadja, hogy az adott kiterjesztés kritikus-e.

    Visszatérési érték

    True érték esetén a kiterjesztés kritikus.

    public String getName();

    Az adott kiterjesztés nevét adja vissza.

    Visszatérési érték

    A nevet tartalmazó String objektum.

    public String getOID();

    Az adott kiterjesztés OID-jét adja vissza.

    Visszatérési érték

    Az OID-et tartalmazó String objektum.

    public String getValue();

    Az adott kiterjesztés értékét adja vissza.

    Visszatérési érték

    Az értéket tartalmazó String objektum.

    class AttachedCertificate

    Ezen interfészen keresztül tudjuk az egyes tanúsítványok részletes tulajdonságait lekérdezni.

    Tagfüggvények

    public byte[] getCertificateInDER();

    Az adott tanúsítványt ASN.1 DER kódolt formában adja vissza.

    Visszatérési érték

    A DER kódolt tanúsítványt tartalmazó byte tömb.

    public String getEmailAddress();

    A kiválasztott tanúsítványban szereplő tulajdonosi e-mail címet adja vissza.

    Visszatérési érték

    Az e-mailt tartalmazó string formátumban.

    public String getSubjectCN();

    A kiválasztott tanúsítványban szereplő tulajdonosi CN (Common Name) mező tartalmát adja vissza.

    Visszatérési érték

    A CN-t tartalmazó String objektum.

    public String getSubjectDN();

    A kiválasztott tanúsítványban szereplő tulajdonosi DN (Distinguished Name) mező tartalmát adja vissza.

    Visszatérési érték

    A DN-t tartalmazó String objektum.

    class RecipientInfo

    Ezen interfészen keresztül tudjuk az egyes titkosított dokumentum cimzettjeinek adatait lekérni.

    Tagfüggvények

    public String getCertificate();

    Az adott címzett tanúsítványát base64 kódolt formában adja vissza.

    Visszatérési érték

    Az adott címzett tanúsítványát base64 kódolva.

    public String getEncodedKey();

    Az adott címzett privát kulcsát base64 kódolt formában adja vissza.

    Visszatérési érték

    Az adott címzett privát kulcsát base64 kódolva.

    class PDFDocument

    PDF dokumentumok kezelését teszi lehetővé.

    Tagfüggvények

    public PDFDocument(String path);

    Ez a konstruktor egy PDF fájl elérési útját kapja paraméterül, abból hozza létre a PDFDocument objektumot.

    Paraméter:

    • String path – A megnyitandó PDF dokumentum elérési útja.

    public PDFDocument(String path, String password);

    Ez a konstruktor egy titkosított PDF fájl elérési útját kapja paraméterül, abból hozza létre a PDFDocument objektumot.

    Paraméter:

    • String path – A megnyitandó PDF dokumentum elérési útja.
    • String password - Jelszó a titkosított PDF kezeléséhez.

    public PDFDocument(String path, boolean validatePDF);

    Ez a konstruktor egy PDF fájl elérési útját kapja paraméterül, abból hozza létre a PDFDocument objektumot.

    Paraméter:

    • String path – A megnyitandó PDF dokumentum elérési útja.
    • boolean validatePDF – A paraméter megmondja, hogy megnyitáskor az alkalmazás ellenőrizze-e a teljes pdf formázottságát. False érték esetén nem tölti be a teljes pdf dokumentumot a memóriába.

    public PDFDocument(String path, boolean validatePDF, String password);

    Ez a konstruktor egy titkosított PDF fájl elérési útját kapja paraméterül, abból hozza létre a PDFDocument objektumot.

    Paraméter:

    • String path – A megnyitandó PDF dokumentum elérési útja.
    • boolean validatePDF – A paraméter megmondja, hogy megnyitáskor az alkalmazás ellenőrizze-e a teljes pdf formázottságát. False érték esetén nem tölti be a teljes pdf dokumentumot a memóriába.
    • String password - Jelszó a titkosított PDF kezeléséhez.

    public PDFSignature[] verify();

    Ellenőrzi a PDF dokumentumban lévő aláírásokat, és visszatér az ellenőrzött PDF aláírás objektumokkal.

    Visszatérési érték

    Az ellenőrzött PDF aláírás (PDFSignature) objektumok tömbje.

    public PDFSignature[] verify(boolean ignoreUnknownSubFilters);

    Ellenőrzi a PDF dokumentumban lévő aláírásokat, és visszatér az ellenőrzött PDF aláírás objektumokkal. Megadható, hogy mit tegyen abban az esetben, ha ismeretlen subFilter értékkel találkozik. Az XSign4Java a leggyakrabban előforduló subFiltereket ismeri, nevezetesen:

    • adbe.pkcs7.detached
    • adbe.pkcs7.sha1
    • ETSI.CAdES.detached

    Paraméter:

    • boolean ignoreUnknownSubFilters – Amennyiben értéke true, az XSign4Java átlépi az ismeretlen subFilter értékkel rendelkező aláírásokat, tehát nem is rakja bele a kimeneti tömbbe azokat. A false érték esetén hibát jelez ismeretlen subFilter esetén.

    public native void save(String path);

    Elmenti a PDF dokumentumot a megadott elérési útra.

    Paraméter:

    • String path – Az elmentendő PDF elérési útja.

    public void free();

    Felszabadítja az objektumhoz tartozó memóriaterületet (az objektumhoz tartozó PDFSignature objektumokkal együtt).

    public PDFSignature sign();

    Aláírja a PDF dokumentumot és visszatér az újonnan létrehozott PDF aláírás objektummal. Alapértelmezésként 20 KB helyet hagy szabadon a PDF dokumentumban az aláírás számára. Amennyiben ez nem elég (nem sikerül emiatt az aláírás), használjuk a következő metódust (sign(int preserveSize)), amelyben már megadható a szabadon hagyott hely mérete.

    Visszatérési érték

    Az újonnan létrehozott PDFSignature objektum.

    public PDFSignature sign(int preserveSize);

    Aláírja a PDF dokumentumot és visszatér az újonnan létrehozott PDF aláírás objektummal.

    Paraméter:

    • int preserveSize – A PDF dokumentumban az aláírás számára szabadon hagyandó hely mérete bájtokban. Ld. még sign() metódus.

    Visszatérési érték

    Az újonnan létrehozott PDFSignature objektum.

    public PDFSignature[] getSignatures();

    A PDF dokumetumon található összes aláírást visszaadja egy tömbben.

    Visszatérési érték

    Az aláírásokat tartalmazó PDFSignature tömb.

    public void setPDFSignImg(java.lang.String inputImgPath);

    Látható PDF aláírás létrehozásakor megadható kép fájl elérési útja, amelyet elhelyezhetünk a PDF dokumentum törzsében. A megadott képfájlnak a következő kép formátumok egyikének kell megfelelnie: png,jpg,tif. Ez a beállítás felülbírálja a korábban Session.setPDFSignImg-val beállított értéket.

    Paraméter:

    • String inputImgPath - Elérési út.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setPDFSignImgPage(int pageNum);

    Megadható, hogy a látható PDF aláírást melyik oldalán helyezzük el a dokumentumnak. Alapértelmezett értéke: 1 – amely a dokumentum legelső oldalát jelenti. A dokumentum oldalainak számánál nagyobb érték esetén is az alapértelmezett értéket veszi fel. Ha az értéke -1 akkor az utolsó oldalt jelenti.

    Ez a beállítás felülbírálja a korábban Session.setPDFSignImgPage-val beállított értéket.

    Paraméter:

    • int pageNum – Oldal száma.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setPDFSignImgAlign(long align);

    A látható PDF aláírás igazítása a megadott sarokba. Ez a beállítás felülbírálja a korábban Session.setPDFSignImgAlign-val beállított értéket.

    Paraméter:

    • long align - A lap sarkának azonosítója. Lehetséges értékei:
      • PDFDocument.PDFSignImgAlignMode.RIGHT_TOP

        - Igazítás a jobb felső sarokba.

      • PDFDocument.PDFSignImgAlignMode.RIGHT_BOTTOM

        - Igazítás a jobb alsó sarokba.

      • PDFDocument.PDFSignImgAlignMode.LEFT_TOP

        - Igazítás a bal felső sarokba.

      • PDFDocument.PDFSignImgAlignMode.LEFT_BOTTOM

        - Igazítás a bal alsó sarokba.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    void setPDFSignImgSize(long size, boolean percent, long mode);

    A látható PDF aláírás létrehozásánál megadhatjuk a megadott kép átméretezésre vonatkozó paramétereket. Ez a beállítás felülbírálja a korábban Session.setPDFSignImgSize-val beállított értéket.

    Paraméter:

    • long size – Képméret.
    • boolean percent – Ha az értéke true, akkor a size paraméter értéke képpontban értelmezett érték, ellenkező esetben a dokumentum vonatkozó méretének százalékos értékét jelenti. Például ha a dokumentum szélessége 600 képpont, size = 10 és a percent = true, akkor az új szélesség 60 képpont lesz.
    • long mode – Az átméretezés módja. Átméretezéskor minden esetben arányosan csökkentjük, ill. növeljük a megadott kép függőleges és vízszintes méretét. Tehát az átméretezés után a magasság-szélesség aránya változatlan marad. Így a megadott size értéket többféle módon értelmezhetjük. Lehetséges értékei:
      • PDFDocument.PDFSignImgResizingMode.MAX

        - Ha a kép magassága nagyobb, mint a szélessége akkor ugyanaz, mint a PDFDocument.PDFSignImgResizingMode.HEIGHT, különben a PDFDocument.PDFSignImgResizingMode.WIDTH módot használjuk. Ez az alapértelmezett üzemmód.

      • PDFDocument.PDFSignImgResizingMode.WIDTH

        - A size-al megadott érték lesz az új szélessége az átméretezett képnek.

      • PDFDocument.PDFSignImgResizingMode.HEIGHT

        - A size-al megadott érték lesz az új magassága az átméretezett képnek.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setPDFSignImgPadding(long x, boolean x_percent, long y, boolean y_percent)

    Megadhatjuk a látható PDF aláírás vízszintes távolságát a lap széleitől. Ez a beállítás felülbírálja a korábban Session.setPDFSignImgPadding-val beállított értéket.

    Paraméter:

    • long x - Vízszintes behúzás. Megadhatjuk a látható aláírás vízszintes távolságát a lap szélétől, a SetPDFSignImgSize paraméterezésénél leírt módon, képpontban vagy lapméret százalékban.
    • boolean x_percent – Értéke true ha a padding_x értéke százalékban értendő.
    • long – Függőleges behúzás. Megadhatjuk a látható aláírás függőleges távolságát a lap szélétől, a SetPDFSignImgSize paraméterezésénél leírt módon, képpontban vagy lapméret százalékban.
    • boolean y_percent – Értéke true ha a padding_y értéke százalékban értendő.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setPDFSignImgMode(int mode)

    Beállítható a látható PDF aláírás megjelenítésének módja. Ez a beállítás felülbírálja a korábban Session.setPDFSignImgMode-val beállított értéket.

    Paraméter:

    • int mode - Bemeneti paraméter. A paraméterben következő értékek szerepelhetnek:
      • PDFDocument.PDFSignImgDisplayMode.ENABLED

        - Legyen látható az aláírás képe a dokumentumban.

      • PDFDocument.PDFSignImgDisplayMode.DISABLED

        - Legyen rejtett az aláírás képe a dokumentumban.

    • Kivétel:

      Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

      public void setPDFSignImgTitleMode(int mode)

      A látható PDF aláíráson elhelyezett felirat megjelenítés módja. Ez a beállítás felülbírálja a korábban Session.setPDFSignImgTitleMode-val beállított értéket.

      Paraméter:

    • int mode - Bemeneti paraméter. A paraméterben következő értékek szerepelhetnek:
      • PDFDocument.PDFSignImgTitleDisplayMode.ENABLED

        - Legyen látható az aláírás szövege, tartalma pedig legyen az aláíró tanúsítványában szereplő Subject.CN mező, ha nincs megadva a SetPDFSignImgTitle.

      • PDFDocument.PDFSignImgTitleDisplayMode.DISABLED

        - Ne legyen látható szöveg a látható aláírás fölött.

    • Kivétel:

      Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setPDFSignImgTitleAlign(int align)

    A látható PDF aláíráson elhelyezett felirat igazítása valamelyik élhez.

    Paraméter:

  • int align - Bemeneti paraméter. A paraméterben következő értékek szerepelhetnek:
    • PDFDocument.PDFSignImgTitleAlign.TOP

      - Az aláírás szövege az aláírás képének felső éléhez lesz igazítva.

    • PDFDocument. PDFSignImgTitleAlign.BOTTOM

      - Az aláírás szövege az aláírás képének alsó éléhez lesz igazítva.

  • Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setPDFSignImgTitle(java.lang.String title)

    A látható PDF aláíráson opcionálisan elhelyezhető szöveg. Alapértelmezett értéke az aláíró tanúsítványában szereplő Subject.CN értéke. Ez a beállítás felülbírálja a korábban Session.setPDFSignImgTitle-val beállított értéket.

    Paraméter:

    • String title - Tetszőleges szöveg.

    A szövegbe elhelyezhetőek az aláírás időpontjához vagy az aláírói tanúsítványhoz kapcsolódó adatok is:

    • %TSD% - Aláírás dátuma %Y-%m-%d formátumban (lokális idő).
    • %TSH% - Aláírás időpontja %H:%M:%SZ formátumban (lokális idő).
    • %CN% - Aláírói tanúsítványban szereplő Subject.CN (common name) mező értéke.
    • %OU% - Aláírói tanúsítványban szereplő Subject.OU (organization unit) mező értéke.
    • %O% - Aláírói tanúsítványban szereplő Subject.O (organization) mező értéke.
    • %L% - Aláírói tanúsítványban szereplő Subject.L (locality) mező értéke.
    • %T% - Aláírói tanúsítványban szereplő Subject.T (title) mező értéke.
    • %SERIAL% - Aláírói tanúsítvány sorozatszáma.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setPDFSignImgTitleFontSize(int size)

    A látható PDF aláíráson megjelenített szöveg betűmérete. Alapértelmezett értéke: 22 Ez a beállítás felülbírálja a korábban Session.setPDFSignImgTitleFontSize-val beállított értéket.

    Paraméter:

    • int size – Betűméret.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setPDFSignImgTitlePadding(long x, long y)

    A látható PDF aláíráson elhelyezett szöveg, név távolsága a látható aláírás képének szélétől. Ez a beállítás felülbírálja a korábban Session.setPDFSignImgTitlePadding-val beállított értékeket.

    Paraméter:

    • long x - A látható aláíráson elhelyezett szöveg, név vízszintes irányú távolsága a látható aláírás képének szélétől. Ha nincs megadva a látható aláírás képe és nincs is tiltva a megjelenítése, akkor ennek a paraméternek nincs hatása.
    • long y - A látható aláíráson elhelyezett szöveg, név függőleges irányú távolsága a látható aláírás képének szélétől. Ha nincs megadva a látható aláírás képe és nincs is tiltva a megjelenítése, akkor ennek a paraméternek nincs hatása.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    LONG setPDFSignImgAdjPosDisable (boolean adjPosDisable);

    A látható aláírások egymást elfedő takarását megakadályozó korrekciónak az engedélyezése, ill. tiltása. Alapértelmezett értéke: true

    Paraméter:

    • boolean adjPosDisable – Ha az értéke true és az újonnan létrehozni kívánt aláírás képe eltakarna egy már a dokumentumon szereplő aláírást, akkor az új aláírást automatikusan eltolja úgy, hogy a takarás megszűnjön.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setPAdES(long pades)

    ETSI (TS 102 778) szabványnak megfelelő PAdES aláírás készítését teszi lehetővé. Alapértelmezett értéke: kikapcsolva.

    Paraméter:

    • long pades – Bemeneti paraméter. A paraméterben a következő értékek szerepelhetnek:
      • PDFDocument.PAdES.ENABLED

        - Engedélyezve

      • PDFDocument.PAdES.DISABLED

        - Kikapcsolva

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    void setSignaturePolicy(java.lang.String sigPolicyURI, java.lang.String sigPolicyOID)

    A PDF aláíráson értelmezett aláírási szabályzat URI-ja és OID-ja (ha szükséges), XAdES-EPES létrehozásához. Nincs alapértelmezett értéke.

    Paraméter:

    • String sigPolicyURI - Aláírási szabályzat URI-ja. Nincs alapértelmezett értéke.
    • String sigPolicyOID - Aláírási szabályzat OID-ja, akkor szükséges megadni, ha a szabályzat nem ASN1 formátumú.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    void setCommitmentType(java.lang.String commitmentTypeOID)

    A PDF aláíráson értelmezett kötelezettség-vállalás, OID-ként megadva. Nincs alapértelmezett értéke.

    Paraméter:

    • String commitmentTypeOID - Az aláíró kötelezettség-vállalása. CAdES szabvány szerinti lehetséges értékek:
      • 1.2.840.113549.1.9.16.6.1 – eredet igazolása
      • 1.2.840.113549.1.9.16.6.2 – átvételi elismervény
      • 1.2.840.113549.1.9.16.6.3 – kézbesítés igazolása
      • 1.2.840.113549.1.9.16.6.4 – elküldés igazolása
      • 1.2.840.113549.1.9.16.6.5 – jóváhagyás
      • 1.2.840.113549.1.9.16.6.6 – létrehozás igazolása

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    void setContentHint(java.lang.String contentHintDescription, java.lang.String contentHintType)

    A PDF aláíráshoz megadható paraméter, amely multi-layer message esetén a belső tartalom típusát jelöli. Nincs alapértelmezett értéke.

    Paraméter:

    • String contentHintDescription - Multi-layer message esetén a belső tartalom típusát írja le. Értéke jellemzően mime típus. Nincs alapértelmezett értéke. Részletes leírás az RFC 2634 [5] dokumentumban és az ETSI TS 101 733 leírásban található.
    • String contentHintType - Multi-layer message esetén a belső tartalom típusát megadó OID. Nincs alapértelmezett értéke. Részletes leírás az RFC 2634 [5] dokumentumban és az ETSI TS 101 733 leírásban található.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void AddTimeStamp(boolean ignoreUnknownSubFilters);

    Időbélyeggel látja el a PDF dokumentumot. Amennyiben a PDF már tartalmaz aláírásokat, úgy az összeset leellenőrzi az időbélyegzés előtt. Figyelem! A metódus akkor is elhelyez egy időbélyeget a PDF-en, ha nincs aláírva! Amennyiben a dokumentum tartalmaz adbe.x509.rsa_sha1 SubFilter értékű aláírásokat, akkor a PAdES-LTV szintű aláírás nem támogatott.

    Paraméter:

    • boolean ignoreUnknownSubfilters – Bemeneti paraméter. Amennyiben értéke true, az XSign4Java átlépi az ismeretlen subFilter értékkel rendelkező aláírásokat, tehát nem is rakja bele a kimeneti tömbbe azokat. A false érték esetén hibát jelez ismeretlen subFilter esetén.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void deleteLastVersion();

    Visszaállítja a legutolsó aláírás vagy időbélyegzés előtti PDF dokumentumot. Teljes archív aláírás esetén a teljes aláírás törléséhez két hívás szükséges (első hívás az archív időbélyegre, második hívás az aláírásra).

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void addAttachment(String attachmentPath, String description);

    PDF fájlba csatolt dokumentum beillesztése.

    Paraméterek:

    • String attachmentPath – Bemeneti paraméter. A csatolmány elérési útja.
    • String description - Bemeneti paraméter. A csatolmány leírása.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void addAttachment(String attachmentName, String description, byte[] attachmentData);

    PDF fájlba csatolt dokumentum beillesztése.

    Paraméterek:

    • String attachmentName – Bemeneti paraméter. A csatolmány neve.
    • String description - Bemeneti paraméter. A csatolmány leírása.
    • byte[] attachmentData - Bemeneti paraméter. A csatolmány egy byte tömbben.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void addMetadata(HashMap metadataMap);

    Saját metaadatok csatolása a PDF dokumentumhoz.

    Paraméterek:

    • HashMap metadataMap – Metaadatok, kulcs-érték párokként tárolva.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    class PDFSignature

    Egy PDF dokumentumban lévő aláírást szimbolizál. A PDF dokumentum felszabadítása (PDFDocument.free()) után már nem használhatók a rajta lévő aláírás objektumok sem.

    Tagfüggvények

    public PDFDocument getSignedPDF();

    Visszaadja az aláírás által aláírt PDF dokumentum verziót. A visszaadott PDF dokumentum nem feltétlenül azonos azzal a dokumentummal, amelyben a PDF aláírás található, mert a dokumentumon az aláírás után egyéb változtatások (pl. további aláírások elhelyezése) történhettek. Ez a metódus az utólagos változtatások nélküli verziót adja vissza, amit az aláírás véd (amire „vonatkozik”).

    Visszatérési érték

    Az aláírás által védett PDF dokumentum verzió (új PDFDocument objektum).

    public void verify(boolean ignoreUnknownSubFilters);

    Az adott PDF aláírást ellenőrzi le. Az XSign4Java által ismert PDF aláírás SubFilter értékek: „adbe.pkcs7.detached”, „adbe.pkcs7.sha1” és „ETSI.CAdES.detached”

    Paraméter:

    • boolean ignoreUnknownSubFilters – Amennyiben értéke „true”, az ellenőrzési folyamat átugorja az ismeretlen SubFilter értékkel rendelkező PDF aláírásokat. Ellenkező esetben ismeretlen aláírás típus esetén kivételt dob.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public byte[] getSignerCert();

    Visszaadja az aláíráshoz tartozó aláírói tanúsítványt.

    Visszatérési érték

    Az aláírói tanúsítvány DER kódolt fromátumú byte tömbje.

    public String getUnsignedHash();

    Visszaadja az aláíratlan lenyomatot.

    Visszatérési érték

    A BASE64 kódolt aláíratlan lenyomatot tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setSignedHash(String signedHash);

    Beilleszti az aláírt lenyomatot. Szükség esetén kiterjeszti az aláírást a megadott típusúra.

    Paraméter:

    • String signedHash – A BASE64 kódolt aláírt lenyomatot tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    Tagváltozók

    public String signerDN;

    Az aláírói tanúsítvány signer.DN mezőjének az értékét tartalmazza.

    public String name;

    A PDF aláírás name mezőjének értékét tartalmazza.

    public String signTime;

    A PDF aláírás létrehozásának időpontját tartalmazza "yyyy-MM-dd'T'HH:mm:ss'Z'" formátumban (GMT:00).

    public boolean signatureCoversWholeDocument;

    A változó értéke jelzi, hogy az aláírás az egész dokumentumot védi-e. Értéke true, ha az aláírás az egész dokumentumot védi, különben értéke false.

    public String revision;

    Az aláírás revíziójának azonosítóját tartalmazza „N of N” alakban.

    public boolean hasSignatureTimeStamp;

    Értéke true, ha az aláíráson van az időpontját igazoló időbélyeg.

    public long getPadesType();

    A változó értéke jelzi a PDF aláírás PAdES típusát.

    Visszatérési érték

    • UNDEF = -1
    • PADES_BES = 1
    • PADES_EPES = 2
    • PADES_T = 3
    • PADES_C = 4
    • PADES_X = 5
    • PADES_X_L = 6
    • PADES_A = 7

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public boolean isLTVEnabled();

    Megadja,hogy az adott PDF aláírás LTV (Long Term Validation) támogató-e, azaz tartalmaz-e DSS (Document Security Store) elemet és Document Timestamp elemet.

    Visszatérési érték

    true ha LTV támogató, különben false.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getCommitmentType();

    Visszaadja a kötelezettségvállalás típusának OID-ját. A lehetséges OID-ok leírása a PDFDocument osztály SetCommitmentType függvényének leírásánál található.

    Visszatérési érték

    Kötelezettségvállalás típusának OID-ja.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getSignaturePolicy();

    Az aláíráskor használt aláírási szabályzat URL-jét adja vissza a metódus.

    Visszatérési érték

    Az aláírási szabályzat URL-jét tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    class CommentDocument

    Egy aláíráshoz csatolt megjegyzés dokumentumot szimbolizál, amelyet a Signature osztály getCommentDocument metódusa ad vissza.

    Tagfüggvények

    public String getTitle();

    Visszaadja az aláíráshoz csatolt dokumentum címét.

    Visszatérési érték

    Az aláíráshoz csatolt megjegyzés dokumentum címét tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getMimeType();

    Visszaadja az aláíráshoz csatolt dokumentum MIME típusát.

    Visszatérési érték

    Az aláíráshoz csatolt megjegyzés dokumentum MIME típusát tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getExtension();

    Visszaadja az aláíráshoz csatolt dokumentum fájlkiterjesztését.

    Visszatérési érték

    Az aláíráshoz csatolt megjegyzés dokumentum fájlkiterjesztését tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public long getDocLength();

    Visszaadja az aláíráshoz csatolt dokumentum fájlméretét.

    Visszatérési érték

    Az aláíráshoz csatolt megjegyzés dokumentum eredeti fájlmérete.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public byte[] getDocument();

    Magát a beillesztett dokumentumot adja vissza a metódus. A metódus egyenértékű a Signature osztály getCommentDoc használatával.

    Visszatérési érték

    A dokumentumot tartalmazó bájttömb.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    Class SignatureReference

    Egy aláírás egy általa hivatkozott objektumról ad információkat. a Signature osztály getReferences metódusa visszaadja az aláírás által tartalmazott összes referenciát egy tömbben.

    Tagfüggvények

    public String getUri();

    Visszaadja az aláírt dokumentum URI-ját.

    Visszatérési érték

    Az aláírt dokumentum URI-ja.

    public String getMimeType();

    Visszaadja az aláírt dokumentum MIME típusát.

    Visszatérési érték

    Az aláírt dokumentum mime típusa. Például: text/plain.

    public String getReferenceType();

    A referencia típusa.

    Visszatérési érték

    A referencia típusa.

    public String getDigestMethod();

    A hivatkozott adatról szerepel az adatból képezett hash érték a referenciában. A metódus visszaadja, melyik hash algoritmust használták.

    Visszatérési érték

    A hash algoritmus URL-je. Például: http://www.w3.org/2001/04/xmlenc#sha256

    public String getDigestValue();

    A hivatkozott adatból képzett hash érték. A metódus visszaadja ezt az értéket egy byte tömbben.

    Visszatérési érték

    Hash érték byte tömbben.

    Class CustomMetaData

    A dosszié/dokumentum/aláírás metaadatait reprezentáló objektum.

    public CustomMetaData(String key, String displayName, String value);

    Konstruktor, beállítja a metaadat megnevezését, megjelenítendő nevét és értékét.

    Paraméter:

    • String key – A metaadat megnevezése.
    • String displayName – A metaadat megjelenítendő neve.
    • String value – A metaadat értéke.

    public String getKey();

    Visszaadja a metaadat megnevezését.

    A metaadat megnevezése.

    public String getDisplayName();

    Visszaadja a metaadat megjelenítendő nevét. A metaadat megjelenítendő neve.

    public String getValue();

    Visszaadja a metaadat értékét. A metaadat értéke.

    public void setKey(String key);

    Beállítja a metaadat megnevezését.

    Paraméter:

    • String key – A metaadat megnevezése.

    public void setDisplayName(String displayName);

    Beállítja a metaadat megjelenítendő nevét.

    Paraméter:

    • String displayName – A metaadat megjelenítendő neve.

    public void setValue(String value);

    Beállítja a metaadat értékét.

    Paraméter:

    • String value – A metaadat értéke.

    Class SignProperties

    További aláírási tulajdonságokat reprezentáló osztály.

    public String getSignaturePolicy();

    Visszaadja az aláírási szabályzat elnevezését.

    public String getSigPlacePostalCode();

    Visszaadja az irányítószámot (aláírás helye).

    public String getSigPlaceSettlement();

    Visszaadja a települést (aláírás helye).

    public String getSigPlaceProvince();

    Visszaadja a megyét (aláírás helye).

    public String getSigPlaceCountry();

    Visszaadja az országot (aláírás helye).

    public String getSignerRole();

    Visszaadja az aláíró szerepét.

    public String getCommitmentType();

    Visszaadja a kötelezettségvállalás típusának URI-ját.

    public long getCommentType();

    Visszaadja az aláíráshoz írt megjegyzés típusát.

    Lehetséges értékek:

    • SignProperties.CommentType.COMMENT_TYPE_CLAUSE - záradék
    • SignProperties.CommentType.COMMENT_TYPE_GLOSS - széljegyzet
    • SignProperties.CommentType.COMMENT_TYPE_COMMENT - megjegyzés
    • SignProperties.CommentType.COMMENT_TYPE_OPINION - vélemény

    Class QCResult

    Ez az osztály a tanúsítvány minősítésével kapcsolatos információkat tartalmazza.

    public long getQualification();

    Visszaadja a tanúsítvány minősítésének az azonosítóját, melynek lehetséges értékei:

    • QCResult.Qualification.QUALIFICATION_NON_QUALIFIED - nem minősített
    • QCResult.Qualification.QUALIFICATION_BASED_ON_QUALIFIED - minősített, de nem MALÉ-n van a kulcs
    • QCResult.Qualification.QUALIFICATION_QUALIFIED - minősített, és MALÉ-n van a kulcs

    public long getStatement();

    Visszaadja a tanúsítványban szereplő qcStatements-re vonatkozó információkat.

    Lehetséges visszatérési értékek:

    • QCResult.Statement.QC_STATEMENT_CRITICAL_FAILURE - a qcStatements kritikusnak van jelölve, és hibás
    • QCResult.Statement.QC_STATEMENT_NONE - hiányzó qcStatements
    • QCResult.Statement.QC_STATEMENT_PRESENT - a qcStatements jelen van, és helyes
    • QCResult.Statement.QC_STATEMENT_CRITICAL - a qcStatements jelen van, és kritikusnak van jelölve

    public double getLimitValue();

    Visszaadja a tranzakciós limit értékét.

    public String getLimitValueCurrency();

    Visszaadja a tranzakciós limit pénznemét.

    public long getRetentionPeriod();

    Visszaadja a megőrzési időt években.

    public long getTypes();

    Visszaadja a tanúsítvány típusát.

    A következő bitekből több is szerepelhet VAGY kapcsolatban:

    • QCResult.Type.QC_TYPE_NONE - nincs semmi sem beállítva (0)
    • QCResult.Type.QC_TYPE_SIGN - aláírás
    • QCResult.Type.QC_TYPE_SEAL - bélyegző
    • QCResult.Type.QC_TYPE_WEB - webszerver

    public Map getPDSList();

    Visszaadja a PKI Disclosure Statement-ek (PDS-ek) listáját egy Map<String, List<String>> objektumban, ahol a kulcsok a nyelveket képviselik (kétbetűs kóddal), az értékek pedig az adott nyelvhez tartozó PDS-ek listáját tartalmazzák

    public PSD2QCType getPSD2QCType();

    Vissza ad egy PSD2QCType objektumot, ami PSP szerepkörökkel és NCA-val kapcsolatos információkat tartalmaz.

    Class PSD2QCType

    Ez az osztály a tanúsítvány PSP szerepkörökkel kapcsolatos információkat tartalmazza.

    public String getNCAName();

    Visszaadja az NCA nevét.

    public String getNCAId();

    Visszaadja az NCA azonosítóját.

    public RoleOfPSP[] getRolesOfPSP();

    Visszaadja a PSP szerepköröket.

    Class RoleOfPSP

    Ez az osztály a tanúsítvány PSP szerepkörökkel kapcsolatos információkat tartalmazza.

    public String getRoleOFPSPOid();

    A PSP szerepkör OID-ját adja vissza.

    public String getRoleOfPSPName();

    A PSP szerepkör rövidített nevét adja vissza.

    ESign

    Ez az osztály az ESign protokoll futtatására használható. A Session osztály createESign tagfüggvénye segítségével példányosítható.

    Tagfüggvények

    void startSession(String startURL, ESignDocument[] docsToSign, String spName, String spMessage, String uriScheme, String filters)

    Új ESign munkamenet indítása. Jelenleg a parancs segítségével egy dokumentum kétmenetes aláírásához lehet munkamenetet indítani. Használat előtt szükséges lehet az ESign központi szerverrel való biztonságos kommunikációhoz szükséges egyéb paraméterek (pl. authentikációs adatok) beállítása is.

    Paraméterek:

    • String startURL – A központi szerver URL-je, amelyhez a munkamenet indítási kérelmet intézzük.
    • String docsToSign – docsToSign Document names and download URLs in an array.
    • String spName – Kiszolgáló neve, amit a másik fél aláíró alkalmazása megjelenít.
    • String spMessage – Aláírói üzenet, amit a másik fél aláíró alkalmazása megjelenít.
    • String uriScheme – Opcionálisan megadható URI séma, értéke lehet null, ekkor az alapértelmezett "esign" lesz beállítva.
    • String filters – String, ami JSON formátumban tartalmazza a protokoll során használt tanúsítványhoz támasztott szűrőfeltételeket (további információkért lásd az ESign protokoll dokumentációját). Opcionális, értéke lehet null.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    void startSession(String startURL, ESignDocument[] docsToSign, String spName, String spMessage, String uriScheme, String filters, boolean documentStateProvided)

    Új ESign munkamenet indítása. Jelenleg a parancs segítségével egy dokumentum kétmenetes aláírásához lehet munkamenetet indítani. Használat előtt szükséges lehet az ESign központi szerverrel való biztonságos kommunikációhoz szükséges egyéb paraméterek (pl. authentikációs adatok) beállítása is.

    Paraméterek:

    • String startURL – A központi szerver URL-je, amelyhez a munkamenet indítási kérelmet intézzük.
    • String docsToSign – docsToSign Document names and download URLs in an array.
    • String spName – Kiszolgáló neve, amit a másik fél aláíró alkalmazása megjelenít.
    • String spMessage – Aláírói üzenet, amit a másik fél aláíró alkalmazása megjelenít.
    • String uriScheme – Opcionálisan megadható URI séma, értéke lehet null, ekkor az alapértelmezett "esign" lesz beállítva.
    • String filters – String, ami JSON formátumban tartalmazza a protokoll során használt tanúsítványhoz támasztott szűrőfeltételeket (további információkért lásd az ESign protokoll dokumentációját). Opcionális, értéke lehet null.
    • boolean documentStateProvided - True érték esetén jelzi az e-Szignó a közvetítő szervernek, hogy támogatjuk a dokumentumok állapotának beállítását (lásd: setDocumentState parancs). Alapértelmezett értéke: false.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    String getSessionJSON()

    Visszaadja a létrehozott session paramétereit JSON formátumban (session ID, session URL, dokumentum paraméterei). Adatfeldolgozás céljából használható függvény, a protokoll futásához közvetlen nem szükséges. Csak startSession hívás után használható.

    Visszatérési érték:

    JSON formátumú szöveg.

    Kivétel:

    Elindított session (startSession hívás) hiányában a metódus XSRException-t dob.

    byte[] getQRCode(String customURIScheme, long formatQR)

    Visszaad egy mobilos applikáció számára felhasználható QR kódot - ennek segítségével az aláírást intéző kliens is futtathatja a protokollt. Csak startSession hívás után használható.

    Paraméterek:

    • String uriScheme – Opcionálisan megadható URI séma, értéke lehet null, ekkor az alapértelmezett "esign" lesz beállítva.
    • long formatQR – A később lekérhető QR kód képformátuma. Lehetséges értékei: 0 (.bmp), 1 (.png). Nincs alapértelmezett értéke.

    Visszatérési érték:

    QR kód, a formatQR paraméterben megadott formátumban.

    Kivétel:

    Elindított session (startSession hívás) hiányában a metódus XSRException-t dob.

    void setPollSettings(long pollDelay, double pollTimeout)

    Beállítja a polling során használatos hálózati paramétereket.

    Paraméterek:

    • long pollDelay – Két lekérdezés közötti időköz másodpercben megadva.
    • double pollTimeout – Időtúllépés másodpercben megadva - figyelem, ez nem a szerver válaszidejére vonatkozik, hanem a polling időtartamára.

    Kivétel:

    Ha a bemeneti paraméterek egyike is 0 értékű, XSRException-t dob.

    void cancelSession()

    ESign munkamenet törlése. Erre akkor lehet szükség például, ha a kétmenetes aláírás első fázisához lejárt tanúsítványt kaptunk az aláíró klienstől. Csak startSession hívás után használható.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    byte[] getCertificate(String certURL)

    Aláírói tanúsítvány lekérése az ESign központi szervertől. A kétmenetes aláírás első feléhez szükséges. Csak startSession hívás után használható.

    Paraméterek:

    • String certURL – Az ESign központi szerver tanúsítvány lekéréshez tartozó URL-je.

    Visszatérési érték:

    A tanúsítványt tartalmazó byte tömb.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    String[] getSignedHashes(String unsignedHashURL, String signedHashURL, String[] unsignedHash, boolean usePKCS7)

    Aláírt hash lekérése az ESign központi szervertől. A kétmenetes aláírás második feléhez szükséges. Ugyanezen parancson belül megtörténik az aláíratlan hashek felküldése is (ezt írja majd alá a kliens). Csak startSession hívás után használható.

    Paraméterek:

    • String unsignedHashURL – Az ESign központi szerver aláiratlan hash felküldéséhez tartozó URL-je
    • String signedHashURL – Az ESign központi szerver aláírt hash lekéréshez tartozó URL-je
    • String[] unsignedHash – Az aláiratlan lenyomatok base64 kódolva, amelyet a másik fél alá fog írni
    • boolean usePKCS7 – "Igaz" érték esetén az ESign szervernek PKCS7 aláírással együtt küldi fel az aláíratlan hash-t az e-szignó (lásd ESign protokoll leírás). Megjegyzés: a Microsec ESign központi szerver a nem teszt felhasználóknál a setUnsignedHashes kérést csak aláírva fogadja el, ilyenkor tehát az opció értéke XS_TRUE kell, hogy legyen és be kell állítani egy megfelelő aláírói tanúsítványt is.

    Visszatérési érték:

    Az aláírt lenyomatokat tartalmazó String tömb.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    void setDocumentState(String setDocumentStateURL, String[] docStates, String[] docStateComments)

    A dokumentumok állapotának közvetítő szerver felé történő megadását szolgáló függvény. Az állapotok megadásával lehet jelezni a közvetítő szervernek, hogy sikerült-e az aláírás, vagy esetleg valami hiba történt. Csak StartSession hívás után használható.

    Paraméterek:

    • String setDocumentStateURL – Az ESign központi szerver dokumentum állapotok felküldéséhez tartozó URL-je
    • String[] docStates – A startSession hívásnál megadott dokumentumok állapotait tartalmazó lista. Minden dokumentumhoz kötelező állapotot megadni, pontosan a dokumentumok sorrendjében. Lehetséges értékek: signed (a dokumentumot sikerült aláírni), can_not_be_signed (hiba történt az aláírási folyamat közben), unsigned (aláírás folyamatban, ez a dokumentumok eredeti állapota a session kezdetekor, ha nincs állapotváltozás, ezt kell megadni).
    • String[] docStateComments – A dokumentumok állapotaihoz tartozó szöveges megjegyzés. Opcionális paraméter, megadásakor azonban minden dokumentumhoz kötelező megjegyzést megadni (akár egy üres szöveg formájában), pontosan a dokumentumok sorrendjében.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    ASiCContainer

    Ez az osztály ASiC konténerek létrehozásához és kezeléséhez használható.

    Tagfüggvények

    void save(String containerPath)

    ASiC konténer mentése egy megadott elérési útvonalra.

    Paraméterek:

    • String containerPath – Bemeneti paraméter. A konténer elérési útja. Kötelező paraméter, alapértelmezett értéke nincs.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    void free()

    Felszabadítja az ASiC konténerrel kapcsolatos memóriaterületeket az XSign DLL-en belül. Figyelem! A függvény hatására mind az ASiCContainer, mind az abban található dokumentumokat ill. aláírásokat jelentő ASiCDocument és ASiCSignature objektumok használhatatlanná válnak. Metódusaik meghívása nem definiált működéshez vezet!

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    ASicDocument insertDocument(String documentPath, String documentURI)

    Fájlrendszerből beilleszt egy dokumentumot a konténerbe. Windows operációs rendszeren az alkalmazás automatikusan felismeri a fájl MIME típusát, ha az be van regisztrálva a Windowsba.

    Paraméterek:

    • String documentPath – Bemeneti paraméter. A beillesztendő dokumentum elérési útja. Kötelező paraméter, alapértelmezett értéke nincs.
    • String documentURI – Bemeneti paraméter. A dokumentum címe. Opcionális paraméter, ha nem adjuk meg, a dokumentum eredeti fájlneve lesz a cím.

    Visszatérési érték:

    Egy új példány az ASiCDocument osztályból. Ennek a segítségével érhetjük el a dokumentumhoz tartozó funkcionalitást.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    ASiCDocument[] getDocuments()

    Visszaadja a konténerben található dokumentumokat.

    Visszatérési érték:

    Dokumentumokat tartalmazó tömb. A tömb egyes elemei az ASiCDocument osztály példányai. Ennek részlets leírása az ASiCDocument fejezetben található.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    ASiCSignature[] getSignatures()

    Visszaadja a konténerben található aláírásokat.

    Visszatérési érték:

    Az aláírásokat tartalmazó tömb. A tömb egyes elemei az ASiCSignature osztály példányai, egy-egy aláíráshoz több dokumentum is tartozhat.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    ASiCSignature sign(ASiCDocument[] docs)

    A megadott dokumentum listában található dokumentumokat írja alá. A GetDocuments függvénnyel lekért tömböt közvetlenül átadva a konténer minden dokumentumát aláírhatjuk egyszerre. Ha nem a konténerhez tartozó dokumentumokat akarunk aláírni, hibával tér vissza.

    Paraméterek:

    • ASiCDocument[] docs – Bemeneti paraméter. Az aláírandó dokumentumok tömbje, egyes elemei az ASiCDocument osztály példányai.

    Visszatérési érték:

    Egy új példány az ASiCSignature osztályból. Ennek a segítségével érhetjük el az aláíráshoz tartozó funkcionalitást.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    ASiCSignature signWithProperties(ASiCDocument[] docs, String signaturePolicyURL, String signaturePlacePostalCode, String signaturePlaceSettlement, String signaturePlaceProvince , String signaturePlaceCountry , String signerRole, String commitmentType);

    A megadott dokumentum listában található dokumentumokat írja alá és hozzáadja a paraméterben szereplő adatokat aláírási tulajdonságként.

    Paraméterek:

    • ASiCDocument[] docs – Bemeneti paraméter. Az aláírandó dokumentumok tömbje, egyes elemei az ASiCDocument osztály példányai.
    • String signaturePolicyURL – Bemeneti paraméter. Az aláírási szabályzat URI-ja. Nincs alapértelmezett értéke.
    • String signaturePlacePostalCode – Bemeneti paraméter. Az aláírás helye: irányítószám. Nincs alapértelmezett értéke.
    • String signaturePlaceSettlement – Bemeneti paraméter. Az aláírás helye: város. Nincs alapértelmezett értéke.
    • String signaturePlaceProvince – Bemeneti paraméter. Az aláírás helye: megye. Nincs alapértelmezett értéke.
    • String signaturePlaceCountry – Bemeneti paraméter. Az aláírás helye: ország. Nincs alapértelmezett értéke.
    • String signerRole – Bemeneti paraméter. Az aláaró szerepe. Nincs alapértelmezett értéke.
    • String commitmentType – Bemeneti paraméter. Az aláíró kötelezettség-vállalása. Nincs alapértelmezett értéke. A XAdES szabvány szerinti lehetséges értékei a CommitmentType osztályban vannak definiálva.

    Visszatérési érték

    Egy ASiCSignature osztály új példánya. Ezen példány segítségével érhetjük el az aláíráshoz tartozó funkcionalitást.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    ASiCSignature[] getUnsignedSignatures()

    Visszaadja a konténerben található félkész aláírásokat. Kétmenetes aláírás esetén használható.

    Visszatérési érték:

    A konténer félkész aláírásait tartalmazó tömb. A tömb egyes elemei az ASiCSignature osztály példányai, egy-egy aláíráshoz több dokumentum is tartozhat.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    short getMainType()

    Visszaadja a konténer belső típusát.

    A visszatérési értékek a következők lehetnek:

    • 0 - ismeretlen
    • 1 - ASiC-S
    • 2 - ASiC-E

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    short getSubType()

    Visszaadja a konténer belső altípusát (a benne található aláírások függvényében).

    A visszatérési értékek a következők lehetnek:

    • 0 - ismeretlen (ha még nincs aláírás benne)
    • 1 - XAdES
    • 2 - CAdES

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    long getDocumentSizeLimit()

    Visszaadja a nagy dokumentumok méretkorlátját (a méretkorlát feletti dokumentumok nem a memóriában vannak tárolva, hanem a fájlrendszeren keresztül használja őket az e-Szignó).

    Visszatérési érték:

    Méretkorlát (bájtban).

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    String getMIMEType()

    Visszaadja a konténer MIME típusát.

    Visszatérési érték:

    A MIME típus. Például: application/zip

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    String getHeaderComment()

    Visszaadja a konténer ZIP fejléc kommentjét (bővebb információért lásd a ZIP fájl formátum specifikációját).

    Visszatérési érték:

    ZIP fejléc komment.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    ASiCDocument

    Ez az osztály ASiC dokumentumok kezeléséhez használható. Ezen az osztályon keresztül végezhetők el a dokumentumokkal kapcsolatos műveletek, mint például a dokumentum aláírása. Ezen az osztályon keresztül érhetjük el a dokumentumok tulajdonságait. ASiC dokumentumot az ASiCContainer::InsertDocument függvényén keresztül célszerű létrehozni.

    Tagfüggvények

    void save(String containerPath)

    ASiC dokument mentése egy megadott elérési útvonalra.

    Paraméterek:

    • String containerPath – Bemeneti paraméter. A dokument elérési útja a konténerben. Kötelező paraméter, alapértelmezett értéke nincs.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    void delete()

    Törli az ASiC dokumentumot a konténerből. A művelet után a dokumentumon egyik olyan művelet sem értelmezhető, amelyhez konténer szükséges (pl. Sign).

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    ASiCSignature[] getSignatures()

    Visszaadja a dokumentumhoz tartozó aláírásokat.

    Visszatérési érték:

    A dokumentum aláírásait tartalmazó tömb. A tömb minden eleme egy ASiCSignature osztályú példány.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    String getPathInContainer()

    Visszaadja a dokumentum elérési útját a konténerben.

    Visszatérési érték:

    Az elérési út.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    String getMainMimeType()

    A beillesztett dokumentum fő MIME típusát adja vissza.

    Visszatérési érték:

    A dokumentum fő MIME típusát tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    String getSubMimeType()

    A beillesztett dokumentum al MIME típusát adja vissza.

    Visszatérési érték:

    A dokumentum al MIME típusát tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    String getTitle()

    Visszaadja a dokumentum címét a konténerben.

    Visszatérési érték:

    A dokumentum címe.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    ASiCSignature sign()

    Aláírja a dokumentumot és visszaadja az elkészült aláírást reprezentáló objektumot.

    Visszatérési érték:

    Egy új példány az ASiCSignature osztályból. Ennek a segítségével érhetjük el az aláíráshoz tartozó funkcionalitást.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    ASiCSignature signWithProperties(String signaturePolicyURL, String signaturePlacePostalCode, String signaturePlaceSettlement, String signaturePlaceProvince , String signaturePlaceCountry , String signerRole, String commitmentType);

    Aláírja a dokumentumot és hozzáadja a paraméterben szereplő adatokat aláírási tulajdonságként.

    Paraméterek:

    • String signaturePolicyURL – Bemeneti paraméter. Az aláírási szabályzat URI-ja. Nincs alapértelmezett értéke.
    • String signaturePlacePostalCode – Bemeneti paraméter. Az aláírás helye: irányítószám. Nincs alapértelmezett értéke.
    • String signaturePlaceSettlement – Bemeneti paraméter. Az aláírás helye: város. Nincs alapértelmezett értéke.
    • String signaturePlaceProvince – Bemeneti paraméter. Az aláírás helye: megye. Nincs alapértelmezett értéke.
    • String signaturePlaceCountry – Bemeneti paraméter. Az aláírás helye: ország. Nincs alapértelmezett értéke.
    • String signerRole – Bemeneti paraméter. Az aláaró szerepe. Nincs alapértelmezett értéke.
    • String commitmentType – Bemeneti paraméter. Az aláíró kötelezettség-vállalása. Nincs alapértelmezett értéke. A XAdES szabvány szerinti lehetséges értékei a CommitmentType osztályban vannak definiálva.

    Visszatérési érték

    Egy ASiCSignature osztály új példánya. Ezen példány segítségével érhetjük el az aláíráshoz tartozó funkcionalitást.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    byte[] getDocument()

    Visszaadja a beillesztett dokumentumot.

    Visszatérési érték:

    A dokumentumot tartalmazó bájttömb.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    int getLength()

    A dokumentum méretét adja meg.

    Visszatérési érték:

    A dokumentum mérete.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    String getExtension()

    Az eredeti dokumentum fájl kiterjesztését adja vissza.

    Visszatérési érték:

    A dokumentum kiterjesztését tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    ASiCSignature

    Ez az osztály ASiC aláírások kezeléséhez használható. Ezen az osztályon keresztül végezhetők el az aláírásokkal kapcsolatos műveletek, mint például az aláírás ellenőrzése. Ezen az osztályon keresztül érhetjük el az ASiC aláírások tulajdonságait. Az ASiCContainer vagy ASiCDocument sign, illetve getSignatures metódusaival célszerű létrehozni ASiCSignature objektumokat.

    Tagfüggvények

    public void validate();

    Az aláírás ellenőrzését végzi a metódus, melynek menete függ a session-ben beállított paraméterektől. Tehát a visszavonás ellenőrzés módját és az esetleges hozzáférési információkat mindenképpen be kell állítani az Session interfészen keresztül.

    A funkció ellenőrzi az aláírás sértetlenségét, az aláírói tanúsítvány visszavonási állapotát és az aláíráson elhelyezett időbélyegeket is, tehát elvégzi a komplett aláírás ellenőrzést. Az ellenőrzés az időbélyegek esetén is hasonlóan történik.

    Az ellenőrzés során lehetőség van arra, hogy az aláírás típusát megváltoztassuk, kibővítsük visszavonási információkkal és időbélyegekkel. Akár alap aláírásból is készíthetünk archív aláírást, ehhez az Session interfészen keresztül be kell állítani a megfelelő paramétereket.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található. Az INCOMPLETE_VALIDATION hibakód azt jelenti, hogy az ellenőrzés során a valamely tanúsítvány állapotát nem sikerült ellenőrizni. Ez nem jelenti azt, hogy az aláírás nem volt érvényes; ennek leggyakrabban az az oka, hogy egy tanúsítványhoz tartozó visszavonási információból nem áll rendelkezésre a legfrissebb verzió.

    public void delete();

    Törli az aktuális aláírást. A törlés után az aláírás objektum érvénytelen lesz és minden rajta végrehajtott művelet hibára fut.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getIdentifier();

    Az aláírás azonosítóját adja vissza a metódus.

    Visszatérési érték

    Az aláírás azonosítóját tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getSignerName();

    Az aláíró nevét adja vissza. Automata aláírói tanúsítvány használata esetében is az automata aláírói tanúsítványban szereplő nevet adja meg a metódus.

    Visszatérési érték

    Az aláíró nevét tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getType();

    Az aláírás típusát adja vissza a metódus.

    Visszatérési érték

    Az aláírás tartalmazó String objektum.

    Lehetséges értékei:

    • „aláírás”
    • „ellenjegyzés”
    • „időbélyeg”

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getCreationDate();

    Az aláírás készítésének az időpontját adja vissza a függvény. Ez az időpont a számítógép rendszerórája szerinti időpont, ezért nem tekinthető megbízható időpontnak.

    Visszatérési érték

    Az aláírás létrehozásának dátumát tartalmazó String objektum. A dátum formátuma: „yyyy-MM-dd’T’HH:mm:ss’Z’”. Pl.: 2007-07-18T13:06:11Z

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public int getAdesType();

    Az aláírás CAdES/XAdES típusát adja vissza a metódus.

    Visszatérési érték

    A CAdES/XAdES típus, lehetséges értékeket lásd a Signature::getXadesType leírásánál. A CAdES típusokhoz rendelt számértékek megegyeznek a XAdES típusokkal.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public boolean isQualified();

    Megadja, hogy az aláírói tanúsítvány minősített-e.

    Visszatérési érték

    True érték esetén minősített, false érték esetén nem minősített tanúsítvánnyal készült az aláírás.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getSignaturePolicy();

    Az aláíráskor használt aláírási szabályzat URL-jét adja vissza a metódus.

    Visszatérési érték

    Az aláírási szabályzat URL-jét tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getCertificateChainInfo();

    Az aláíráshoz tartozó tanúsítványlánc szöveges információját adja vissza a függvény.

    Visszatérési érték

    A tanúsítványlánc szöveges információját tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getSignerAlternativeName();

    Az aláíró alternatív nevét adja vissza a függvény.

    Visszatérési érték

    Az aláíró alternatív nevét tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getCertificateInBase64();

    Az aláírói tanúsítványt adja vissza BASE64 kódolva.

    Visszatérési érték

    Az aláírói tanúsítványt BASE64 kódolt formában tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getCertificateChainInBase64();

    Az aláírói tanúsítvány láncát alkotó tanúsítványokat adja vissza BASE64 kódolva.

    Visszatérési érték

    A tanúsítványlánc elemeit képező tanúsítványokat BASE64 kódolt formában tartalmazó String tömb.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getSignatureAlgorithm();

    E metódus visszaadja az aláírás létrehozásához használt algoritmus nevét.

    Visszatérési érték

    Az algoritmus nevét tartalmazó String.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. Az XSRException leírása a 3.1-es fejezetben található.

    public String getSignatureKeyDescription();

    E metódus visszaadja az aláíráshoz használt kulcs típusának szöveges leírását.

    Visszatérési érték

    Az aláíró kulcs típusának leírása.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. Az XSRException leírása a 3.1-es fejezetben található.

    public String getCertSignAlgorithm();

    E metódus visszaadja az aláíró tanúsítvány aláírásához használt algoritmus nevét.

    Visszatérési érték

    Az aláírói tanúsítványt aláíró algoritmus nevét tartalmazó String.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. Az XSRException leírása a 3.1-es fejezetben található.

    public long getAdESVersion();

    E metódus visszaadja, hogy az aláírás mely AdES típusnak felel meg.

    Visszatérési érték

    Az AdES típust tartalmazó long érték.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. Az XSRException leírása a 3.1-es fejezetben található.

    public SignProperties getSignProperties();

    E metódus visszaadja az aláíráshoz tartozó további aláírói tulajdonságokat egy SignProperties objektumban.

    Visszatérési érték

    További aláírói tulajdonságok egy SignProperties objektumban.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. Az XSRException leírása a 3.1-es fejezetben található.

    public QCResult getQCResult();

    E metódus hasznos információkat szolgáltat az aláírói tanúsítvány minősítésével kapcsolatban.

    Visszatérési érték

    Minősítési információk egy QCResult objektumban.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob.

    public String GetOrganizationIdentifier();

    E metódus visszaadja, aláírói tanúsítvány szervezeti azonosítóját.

    Visszatérési érték

    Az aláírói tanúsítvány szervezeti azonosítóját tartalmazó string.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob.

    public AttachedPKIItem[] getAttachedPKIItems();

    Egy aláíráshoz több PKI elem is tartozhat, mint például időbélyegek, OCSP válaszok, CRL-ek, tanúsítványok. Ez a metódus az aláíráshoz tartozó PKI elemek listáját adja vissza. A PKI elemekről részletesen a AttachedPKIItem című fejezetben olvashat részletesen.

    Visszatérési érték

    Az aláíráshoz tartozó PKI elemeket tartalmazó tömb. A tömb objektumai az AttachedPKIItem leszármazott osztályaiból kerülnek ki.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    Példa:

    public String getUnsignedHash();

    Ez a metódus a félig kész aláírásból kinyeri az aláíratlan lenyomatot, melyre elosztott (kétmenetes) aláírás készítésekor van szükség.

    Az elosztott aláírás készítés részleteiről a Dossier.setSignedHash() függvény leírásában olvashat.

    Visszatérési érték

    A base64 kódolt aláíratlan lenyomatot tartalmazó string.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public void setSignedHash(String hash);

    Ez a metódus a félig kész aláírásba illeszti az aláírt lenyomatot

    Az elosztott aláírás készítés részleteiről a Dossier.setSignedHash() függvény leírásában olvashat.

    Paraméterek:

    • String hash – Bemeneti paraméter. A base64 kódolt aláírt lenyomat.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public String getSignerRole();

    Az aláíró szerepét adja vissza a függvény.

    Visszatérési érték

    Az aláíró szerepét tartalmazó String objektum.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    public ASiCDocument[] getSignedDocuments();

    Visszaadja az aláírás által aláírt dokumentumok listáját.

    Visszatérési érték

    Az aláírt dokumentumok reprezentáló ASiCDocument tömb.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    String getPathInContainer()

    Visszaadja az aláírást reprezentáló XML elérési útját a konténerben.

    Visszatérési érték:

    Az elérési út.

    Kivétel:

    Hiba esetén a metódus XSRException-t dob. A kivételhez tartozó hibakódok leírása az XSRException fejezetben található.

    Az interfészek leírása

    static interface Session.StatusCallback

    A Session.setStatusCallback(StatusCallback statusCallback) metódussal megadhatunk egy Session.StatusCallback interfészt implementáló objektumot. Az XSign4Java modul ennek az objektumnak a status(String sStatus, long lHandle) metódusát hívja meg, amikor státuszüzenetet küld.

    Tagfüggvények

    public int status(String sStatus, long lHandle);

    Ez a függvény hívódik meg, ha az XSign4Java modul státuszüzenetet küld. A függvény első paramétere a státuszüzenet. A második paraméter segítségével a többszálú aláírás/ellenőrzés esetén el lehet dönteni, melyik szálból érkezik a státuszüzenet. (Ne feledkezzünk meg a szál elején a Session.forkInstance(long handle) metódus meghívásáról.)

    Paraméterek:

    • String sStatus – A státuszüzenet.
    • long lHandle – A státuszüzenetet forrása.

    Visszatérési érték

    Amennyiben nem nulla, a feldolgozási folyamat megszakad.

    Használat

    XSign4Java használata többszálú környezetben

    A fő szálban kell létrehozni új microsec.xsign4java.Session objektumot Session.getInstance() metódushívással. Szintén a fő szálban kell meghívni a Session.initialize() és a Session.unInitalize() metódusokat.

    Ha a Session.getInstance() által visszaadott objektumot új szálban akarjuk használni, akkor a Session.forkInstance(long lHandle) tagfüggvényt kell meghívni, a műveletek végrehajtása előtt (szálba történő belépés után) és a Session.releaseInstance(long lHandle) tagfüggvényt kell meghívni, a műveletek végrehajtása után (szálból történő kilépés előtt).

    XSign4Java memória használata

    Ha egy Dossier objektumra már nincs szükség, akkor a Dosseier.free() metódust kell meghívni, hogy a Dossier objektumhoz tartozó memória felszabadításra kerüljön.

    Példák:

    Új akta létrehozása, dokumentum beillesztése, aláírás

    import microsec.xsign4java.*;
    public class func_000001
    {
        public static void main(String args[])
        {
            try
            {
                Session session = Session.getInstance();
                session.setLocale("hun");
                session.setLogFilePath("xsign4java_log.txt");
                session.initialize(".", "server_reg.xml");
                session.setUseWindowsCertStore(false);
                session.setSigningPFX("peterke.pfx", "12345");
                session.setTrustedCertDir("trusted_certs");
                session.setIntermediateCertDir("intermediate_certs");
                session.setTimeStampURLs("http://teszt.e-szigno.hu/tsa");
                session.setSignatureLevel(Session.SignatureLevel.SIGLEVEL_B_T);
                session.setXAdESVersion(Session.XAdESVersion.XADES_VERSION_EN_1_0_0);        
                session.setWorkSilent(Session.HowSilent.SILENT);
                Dossier dossier = session.newDossier();
                Document doc = dossier.insertDocument("tests.doc");
                Signature sig = doc.sign();
                dossier.save("new.es3");
                session.unInitialize();
            }
            catch (XSRException ex)
            {
                System.err.println("hiba történt: " + ex.getErrorCode() + "!");
                ex.printStackTrace();
                System.exit((int)ex.getErrorCode());
            }
        }
    }
    

    Létező e-akta megnyitása, aláírás ellenőrzése

    import microsec.xsign4java.*;
    public class func_000001
    {
        public static void main(String args[])
        {
            try
            {
                Session session = Session.getInstance();
                session.setLocale("hun");
                session.setLogFilePath("xsign4java_log.txt");
                session.initialize(".", "server_reg.xml");
                session.setUseWindowsCertStore(false);
                session.setSigningPFX("peterke.pfx", "12345");
                session.setTrustedCertDir("trusted_certs");
                session.setIntermediateCertDir("intermediate_certs");
                session.setTimeStampURLs("http://teszt.e-szigno.hu/tsa");
                session.setSignatureLevel(Session.SignatureLevel.SIGLEVEL_B_T);
                session.setXAdESVersion(Session.XAdESVersion.XADES_VERSION_EN_1_0_0);
                session.setWorkSilent(Session.HowSilent.SILENT);
                Dossier dossier = session.openDossier("new.es3");
                Signature[] sigs = dossier.getSignatures();
                sigs[0].validate();
                session.unInitialize();
            }
            catch (XSRException ex)
            {
                System.err.println("an error occurred: " + ex.getErrorCode() + "!");
                ex.printStackTrace();
                System.exit((int)ex.getErrorCode());
            }
        }
    }
    

    Kétmenetes PDF aláírás

    import java.io.ByteArrayOutputStream;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import microsec.xsign4java.*;
    public class TestTwoStepSigning
    {
        public static void main(String[] argv)
        {
            try
            {
                // initialization
                Session session = Session.getInstance();
                session.setLocale("hun");
                session.setLogFilePath("xsign4java_log.txt");
                session.initialize("", "");
                session.setUseWindowsCertStore(false);
                session.setTrustedCertDir("trusted_certs");
                session.setIntermediateCertDir("intermediate_certs");
                session.setWorkSilent(Session.HowSilent.SILENT);
                if (argv[0].equals("step1")) {
                    System.out.print("Step1... ");
                    session.setSigningCertificate(0, "tests/cer/tesztelo_peterke.cer");
                    PDFDocument doc = new PDFDocument("tests/in/sample.pdf");
                    PDFSignature sig = doc.sign();
                    String sUnsignedHash = sig.getUnsignedHash();
                    doc.save("tests/half_signed.pdf");
                    doc.free();
                    System.out.println("OK!");
                    System.out.println("Unsigned hash: " + sUnsignedHash);
                    FileOutputStream fos = new FileOutputStream("tests/unsigned_hash.b64");
                    fos.write(sUnsignedHash.getBytes());
                    fos.close();
                }
                else if (argv[0].equals("step2")) {
                    ByteArrayOutputStream baos = new ByteArrayOutputStream();
                    FileInputStream fis = new FileInputStream("tests/signed_hash.b64");
                    int off = 0;
                    int len = 0;
                    byte[] b = new byte[1024];
                    while ((len = fis.read(b)) != -1)
                        baos.write(b, off, len);
                    fis.close();
                    baos.close();
                    String sSignedHash = new String(baos.toByteArray());
                    System.out.println("Signed hash: " + sSignedHash);
                    System.out.print("Step2... ");
                    session.setTimeStampURLs("http://teszt.e-szigno.hu/tsa");
                    session.setSignatureLevel(Session.SignatureLevel.SIGLEVEL_B_T);
                    session.setXAdESVersion(Session.XAdESVersion.XADES_VERSION_EN_1_0_0);  
                    PDFDocument doc = new PDFDocument("tests/half_signed.pdf");
                    PDFSignature sigs[] = doc.getSignatures();
                    PDFSignature sig = sigs[sigs.length - 1];
                    sig.setSignedHash(sSignedHash);
                    doc.save("tests/signed.pdf");
                    doc.free();
                    System.out.println("OK!");
                }
                System.exit(0);
            }
            catch (XSRException ex1)
            {
                ex1.printStackTrace();
                System.exit(1);
            }
            catch (Exception ex2)
            {
                ex2.printStackTrace();
                System.exit(2);
            }
        }
    }
    

    Használat:

    java TestTwoStepSigning step1
    openssl base64 -d -in tests/unsigned_hash.b64 -out unsigned_hash.bin
    eszigno3 sign_hash -in unsigned_hash.bin} -keyform pfx -signer_key tests/pfx/tesztelo_peterke.pfx 
      -signer_pass 12345 -out signed_hash.bin
    openssl base64 -e -in signed_hash.bin -out tests/unsigned_hash.b64
    java TestTwoStepSigning step2