2.3.5. fejezet, XML titkosítás és digitális aláírás

A digitális aláírás, az iratok hitelesítése az iratkezelésben igen fontos tényező. Szükséges az államigazgatásban működő alkalmazásokban az irat azonosítására.

A Sun Java honlapjáról az Other Downloads szakaszban (lap alján) letölthető a Java Cryptography Extension. Ezt, és a "The Legion of the Bouncy Castle" Java honlapjáról letölthető JCE/JCA implementációt alkalmazva AES, DES és egyéb erős titkosítás és digitális aláírás készíthető.

A JCE beállítása a következő módon történik:

Csomagoljuk ki a jce_policy-6.zip fájlt a telepített JRE /lib/security és a JDK jre/lib/security könyvtárba. Ezek a Java beépített algoritmusainál nagyobb kódolást engedélyező policy fájlok, amik szükségesek a Bouncy Castle implementáció lehetőségeinek teljes kihasználásához. Ne felejtsük el a JRE és a JDK könyvtáraiba is kitömöríteni, hogy biztos engedélyezve legyen akármely Java környezetben. Ha pontosan meghatározzuk a futtatókörnyezet beállításait környezeti változókkal, ez a redundancia szükségtelen. A local_policy.jar és a US_export_policy.jar felülírásra kerül a kicsomagolással.

Szerkesszük a lib/security/java.security fájlt. Adjuk hozzá a következő sort:

security.provider.10=org.bouncycastle.jce.provider.BouncyCastleProvider

Fontos megjegyezni, hogy a 10-es helyett az utolsó sorszám legyen a felsorolásban. Ezek után a JAVACLASSPATH környezeti változóba soroljuk fel a Bouncy Castle csomagokat.

  • %1_BOUNCY_PATH%\bcprov-jdk16-139.jar
  • %1_BOUNCY_PATH%\bctsp-jdk16-139.jar
  • %1_BOUNCY_PATH%\bcmail-jdk16-139.jar
  • %1_BOUNCY_PATH%\bcpg-jdk16-139.jar

Teszteljük a titkosítást az Apache xml-security csomagjával. Az xml-security-1_4_1\libs könyvtárba töltsük le a következő fájlokat:

  • bc-jce-jdk13-129.jar
  • commons-logging.jar
  • commons-logging-api.jar
  • jce-jdk13-139.jar
  • serializer.jar
  • xalan.jar
  • xercesImpl.jar

Teszteléshez az Apache Ant szükséges még. Az xml-security-1_4_1 könyvtárban adjuk ki az ant sign parancsot, ami sikeres telepítés esetén létrehozza a signature.xml fájlt a könyvtárba.