Hoppa till innehåll

47-dagarscertifikat kommer. Är du redo?

Agera nu →

Signera XML-filer med XMLSec-verktyget med hjälp av PKCS#11-biblioteket

Signera xml-filer med xmlsec-verktyget

Enligt en femårsprognos för IDC Global DataSphere, 2024-2028, förutspås det att mängden data som skapas, distribueras, samlas in och konsumeras kommer att nå 175 Zettabyte (ZB) år 2025. För att förstå det bättre motsvarar 1 ZB en biljon gigabyte (GB). Merparten av denna data är ostrukturerad och behöver något som ger den mening. Det är här XML-filer kommer in i bilden.

eXtensible Markup Language eller XML är ett markupspråk som etablerar regler och organiserar all data. Det anger också hur data ska lagras och transporteras över internet. XML använder markupsymboler eller taggar, som moderna webbläsare och databehandlingsprogram använder för att bearbeta informationen.

XML-signering

XML-filer används i stort antal, vilket gör dem till en integrerad del av våra webbaserade applikationer och teknik. Men ska man lita på vilken XML-fil som helst? Hur kan man utveckla förtroende för XML-filens äkthet? Du behöver ett digitalt bevis eller namnteckning att autentisera och verifiera dess källa. 

XML-signering hjälper dig att bifoga dina digitala inloggningsuppgifter, vilket hjälper mottagaren att lita fullt ut på filens innehåll. För att förenkla processen, Krypteringskonsulting ger dig med PKCS # 11 Wrapper, ett programbibliotek som tillhandahåller ett Java-gränssnitt för att interagera med PKCS#11-kompatibla enheter som Hårdvarusäkerhetsmoduler (HSM), smartkort eller andra nyckelvalv. 

Tillsammans med PKCS#11 Wrapper kommer vi att använda XMLSec-verktyget, ett kommandoradsverktyg för signering, verifiering, krypteringsoch dekryptering XML-dokument.

Konfiguration av PKCS#11 Wrapper på Ubuntu

Förutsättningar

Innan vi tittar på processen för XML-signering med XMLSec Tool och vår PKCS11 Wrapper i Linux (Ubuntu) maskin, se till att följande är klart:

  • Ubuntu-version: Ubuntu version 22.04 eller senare (testmiljön är Ubuntu 24.02)  
  • beroenden: Installera liblog4cxx12 och curl. 

För att installera beroendena, kör följande kommandon

  • sudo apt-get installera curl 
  • sudo apt-get install liblog4cxx12 

Installera EC:s PKCS#11-omslag 

Steg 1: Gå till EC CodeSign Secures v3.01Signeringsverktyg avsnittet och ladda ner PKCS#11 Wrapper för Ubuntu.  

Ladda ner PKCS#11 från Codesign Secure

Steg 2: Generera sedan ett P12-autentiseringscertifikat från Systeminställningar > Användare > Generera autentiseringscertifikat falla ner.

Generera P12-certifikat

Steg 3: Gå till ditt Ubuntu-klientsystem och redigera konfigurationsfilerna (ec_PKCS#11client.ini och PKCS#11properties.cfg) laddades ner i PKCS#11 Wrapper. 

Redigera konfigurationsfiler på Ubuntu

Installera XMLSec-verktyget

Steg 1: Installera den senaste versionen av XMLSec Tool (xmlsectool-3.0.0-bin.zip) med hjälp av detta länken.  

Ladda ner senaste XMLsec

Steg 2: Du kan extrahera zip-filen till en valfri katalog. 

Extrahera zippad XMLsec

Ladda ner och installera Java på din Ubuntu-maskin.

Steg 1: Ladda ner Amazon Corretto 17 Java  (Du kan kontrollera andra Java-versioner som stöds med XMLSec Tool) här.

wget -O – https://apt.corretto.aws/corretto.key | sudo gpg –dearmor -o /usr/share/keyrings/corretto-keyring.gpg && \ echo “deb [signed-by=/usr/share/keyrings/corretto-keyring.gpg] https://apt.corretto.aws stable main” | sudo tee /etc/apt/sources.list.d/corretto.list

Steg 2: Installera Java-paketet

sudo apt-get update; sudo apt-get install -y java-17-amazon-corretto-jdk 

Steg 3: Kontrollera om Java har installerats korrekt eller inte 

java -version

Kontrollera Java-versionen

Lägg till Java till miljövariabel 

Steg 1: Ställ in Amazon Corretto 17 Java som aktiv version 

uppdateringsalternativ –konfiguration java

ställ in corretto17 java

Steg 2: Lägg till variabeln "JAVA_HOME" i filen ~/.bashrc 

echo “exportera JAVA_HOME=/usr/lib/jvm/java-17-amazon-corretto” >> ~/.bashrc

Lägg till Java-startvariabel

Steg 3: Kontrollera ~/.bashrc-filen 

svans -3 ~/.bashrc 

Kontrollera BashRc-filen

Steg 4: Ladda om miljövariablerna 

källa ~ / .bashrc 

Ladda om miljövariabler

Steg 5: Kontrollera JAVA_HOME-variabelns värde 

echo $JAVA_HOME 

Kontrollera Java-startvariabeln

Signering 

Steg 1: Ändra terminalens arbetskatalog till den mapp som innehåller din "ec_pkcs11client.ini"-fil.

Ändra arbetskatalog

Steg 2: Kör signeringskommandot från den här katalogen. 

–signera –pkcs11Konfigurera –nyckelAlias –nyckellösenord INGET –ifil –utfil 

Ett exempelkommando ges nedan:

../xmlsectool-3.0.0-bin/xmlsectool-3.0.0/xmlsectool.sh –sign –pkcs11Config pkcs11properties.cfg –keyAlias ​​DemoCertificate –keyPassword INGA –inFile ../xmlSample.xml –outFile ../out-xmlSample.xml 

Verifiering 

Kör verifieringskommandot

–verifieraSignatur –pkcs11Konfiguration –nyckelAlias –nyckellösenord INGET –ifil 

Ett exempelkommando ges nedan: 

../xmlsectool-3.0.0-bin/xmlsectool-3.0.0/xmlsectool.sh –verifySignature –pkcs11Config pkcs11properties.cfg –keyAlias ​​gpg2 –keyPassword INGEN –inFile ../out-sample.xml 

Lösning för företagskodsignering

Få en lösning för alla dina behov av kodsignering och kryptografi för mjukvara med vår kodsigneringslösning.

Konfiguration av PKCS#11 Wrapper på MacOS

Förutsättningar 

Innan vi tittar på processen för XML-signering med XMLSec Tool och vår PKCS#11 Wrapper i MacOS-maskiner, se till att följande är klart: 

  • MacOS-version: MacOS version 13 (Ventura) eller senare (testmiljön är MacOS 15.1 Sequoia)  
  • beroenden: Installera liblog4cxx och curl.  

För att installera beroendena, kör följande kommandon 

  • brygginstallationslog4cxx 
  • brygga installera curl 

Installera EC:s PKCS#11-omslag

Steg 1: Gå till EC CodeSign Secures v3.01Signeringsverktyg avsnittet och ladda ner PKCS#11 Wrapper för Mac.  

Ladda ner PKCS#11 för Mac

Steg 2: Generera sedan ett P12-autentiseringscertifikat från Systeminställningar > Användare > Generera autentiseringscertifikat falla ner. 

Generera P12-certifikat

Steg 3: Gå till ditt MacOS-klientsystem och redigera konfigurationsfilerna (ec_PKCS#11client.ini och PKCS#11properties.cfg) laddades ner i PKCS#11 Wrapper. 

Redigera konfigurationsfilen

Installera XMLSec-verktyget

Steg 1: Ladda ner den senaste versionen av XMLSec Tool (xmlsectool-3.0.0-bin.zip) med hjälp av detta länken.  

Installera XMLsec-verktyget

Du behöver den här shell-filen för att utföra XML-signeringen

XMLsectool.sh-filen efter nedladdning

Ladda ner och installera Java på din MacOS-maskin.

Steg 1: Ladda ner Amazon Corretto 17 Java (Du kan kontrollera andra Java-versioner som stöds med XMLSec Tool) här. ). 

Du kan använda detta länk för att ladda ner .pkg-filen för MacOS-miljön 

Steg 2: Installera Java-paketet 

Börja installationen med den nedladdade filen. 

Installera XMLsectool

Steg 3: Kontrollera om Java har installerats korrekt eller inte 

java -version 

Kontrollera Java-versionen

Lägg till Java till miljövariabel 

Steg 1: Hämta den fullständiga installationssökvägen för Amazon Corretto 17 Java 

/usr/libexec/java_home -Mångordig 

Hämta den fullständiga installationssökvägen för Corretto 17

Steg 2: Lägg till variabeln “JAVA_HOME” i filen ~/.zshrc 

echo 'exportera JAVA_HOME="/Bibliotek/Java/JavaVirtualMachines/amazon-corretto-17.jdk/Innehåll/Hem"' >> ~/.zshrc 

Lägg till Java-startvariabel

Steg 3: Ladda om miljövariablerna 

källa ~/.zshrc 

Ladda om miljövariabeln

Steg 4: Kontrollera JAVA_HOME-variabelns värde 

echo $JAVA_HOME 

Kontrollera Java-startvariabeln

Signering

Steg 1: Ändra terminalens arbetskatalog till den mapp som innehåller din "ec_pkcs11client.ini"-fil. 

Ändra arbetskatalog

Steg 2: Kör signeringskommandot från den här katalogen. 

–signera –pkcs11Konfigurera –nyckelAlias –nyckellösenord INGET –ifil –utfil 

Ett exempelkommando ges nedan: 

../xmlsectool-3.0.0/xmlsectool.sh –sign –pkcs11Config pkcs11properties.cfg –keyAlias ​​DemoCertificate –keyPassword INGA –inFile ../xmlSample.xml –outFile ../SignedSample.xml 

Verifiering 

Kör verifieringskommandot

–verifieraSignatur –pkcs11Konfiguration –nyckelAlias –nyckellösenord INGET –ifil 

Ett exempelkommando ges nedan: 

../xmlsectool-3.0.0/xmlsectool.sh –verifySignature –pkcs11Config pkcs11properties.cfg –keyAlias ​​gpg2 –keyPassword INGA –inFile ../Signedsample.xml 

Lösning för företagskodsignering

Få en lösning för alla dina behov av kodsignering och kryptografi för mjukvara med vår kodsigneringslösning.

Slutsats 

Med ostrukturerad data på uppgång, XML-dokument signering är dagens behov. Den sömlösa integrationen av vår PKCS#11 Wrapper och XMLSec-verktyget erbjuder en flexibel och effektiv lösning för XML-dokumentsignering.  

Använda krypteringskonsulttjänster CodeSign Secure lösningen kan du bygga upp och öka ditt kundförtroende. Den erbjuder funktioner som klientsidig hashing, rollbaserad åtkomst och applikationshantering för att säkra dina data. Den låter dig integrera olika DevOps-funktioner. CI / CD pipelines för handsfree, automatiserad kodsignering.