Wie können wir helfen?

Funktionsweise der REDDCRYPT API-Integration mit dem REDDCRYPT Gateway

Sie sind hier:

Zu kompliziert, zu aufwendig, nicht bedienbar – Die Gründe, warum man weder S/MIME noch PGP einsetzt, sind vielfältig. Wir erläutern in diesem Artikel die Funktionsweise von REDDCRYPT und zeigen auf, wie Sie REDDCRYPT mit nur zwei HTTP API-Calls in Ihre Lösung integrieren.

Probleme klassischer E-Mail-Verschlüsslung

Klassische E-Mail-Verschlüsselung mit S/MIME und PGP basieren auf Schlüsselpaaren, bestehend aus einem privaten und einem öffentlichen Schlüssel. Damit zwei Seiten verschlüsselt miteinander kommunizieren können, müssen diese Schlüsselpaare erzeugt und öffentliche Schlüssel mit den Kommunikationspartnern ausgetauscht werden. 

Die größten Hürden dieser Ansätze:

  • Das Erzeugen von Schlüsselpaaren ist aufwendig und für den „normalen“ Anwender eine technische Überforderung
  • Der Austausch von öffentlichen Zertifikaten muss zwingend vor der Kommunikation erfolgen
  • Diese öffentlichen Zertifikate müssen für die zukünftige Verwendung in Mailclients (z.B. Microsoft Outlook und Smartphones) installiert werden, was erneut ein hohes technisches Verständnis voraussetzt 
  • Wenn einer der beiden Kommunikationspartner keine Zertifikate hat, kann nicht verschlüsselt werden

Daraus resultiert, dass E-Mails mit klassischer Verschlüsselung nicht

  • zwischen Jedermann und Jederfrau, 
  • zu jeder Zeit und
  • auf einfache Art und Weise

übermittelt werden können. Es ist immer ein hohes Maß an technischem Verständnis notwendig – und zwar zwingend beim Absender und Empfänger.

(Technische) Funktionsweise von REDDCRYPT

Obwohl auch REDDCRYPT auf dem PGP-Standard basiert, gehören aufwendiges Erstellen und Austauschen von Zertifikaten der Vergangenheit an. REDDCRYPT automatisiert die größten Hürden und ermöglicht darüber hinaus eine Adhoc-Verschlüsselung mit jeder beliebigen Empfängeradresse.

Mit der kostenfreien Registrierung bei REDDCRYPT wird automatisch ein PGP-Schlüsselpaar erzeugt, ohne dass dies für den Nutzer ersichtlich wird. Die Nutzung von REDDCRYPT erfolgt ausschließlich über einen zentralen Login, basierend auf E-Mail-Adresse und Passwort. Damit unterscheidet sich REDDCRYPT in der Handhabung und der Komplexität für den Anwender nicht von anderen E-Mail-Anbietern oder dem Einkaufen bei Amazon. 

Der gesamte Ver- und Entschlüsselungsprozess erfolgt automatisch im Hintergrund. Nachfolgend gehen wir in Kurzform auf die Technologie hinter REDDCRPYT ein, die komplette Beschreibung finden Sie unter https://www.reddcrypt.com/technologie/

Die Verschlüsselung von E-Mails

Nach der erfolgreichen Authentifizierung (= Login) über eine der vorhandenen REDDCRYPT Apps wird auf dem Gerät des Nutzers ein zufälliger Sitzungsschlüssel generiert, mit dem die E-Mail ein erstes Mal verschlüsselt wird. Um sicherzustellen, dass außer dem Empfänger niemand anderes Zugriff auf die Inhalte erhält, wird der Sitzungsschlüssel nun ebenfalls verschlüsselt. Hierbei wird unterschieden, ob der Empfänger ebenfalls ein REDDCRYPT Konto hat oder nicht.

Empfänger ist bereits REDDCRYPT User
Bei Eingabe der E-Mailadresse des Empfängers wird automatisch der Schlüsselserver von REDDCRYPT angefragt. Nutzt der Empfänger bereits REDDCRYPT, liegt dessen öffentlicher Schlüssel auf unseren Servern und wird in diesem Moment heruntergeladen, um den Sitzungsschlüssel zu verschlüsseln.

Empfänger ist noch kein REDDCRYPT User
Liegt für die eingegebene E-Mail-Adresse kein öffentlicher Schlüssel vor, definiert der Absender einen Verschlüsselungscode, mit dem der Sitzungsschlüssel verschlüsselt wird.

Versendet der REDDCRYPT Nutzer nun die E-Mail, wird die verschlüsselte E-Mail gemeinsam mit dem verschlüsselten Sitzungsschlüssel in einem Container zusammengefasst und auf die REDDCRYPT Server übertragen. 

Die Entschlüsselung von E-Mails

Auch die Entschlüsselung findet lokal auf dem Endgerät des Nutzers statt. 

Der Empfänger ist bereits REDDCRYPT Nutzer
Nach der erfolgreichen Authentifizierung des Empfängers an der REDDCRYPT App (=Login) werden im Hintergrund der private Schlüssel und der Container heruntergeladen. Der private Schlüssel wird mit dem bei der Authentifizierung eingegebenen Passwort entschlüsselt und wird nun dafür genutzt, um den Sitzungsschlüssel zu entschlüsseln.

Der entschlüsselte Sitzungsschlüssel wird nun dafür eingesetzt, die verschlüsselte E-Mail zu entschlüsseln. Der gesamte Vorgang erfolgt im Hintergrund und die E-Mail öffnet sich automatisch beim Anklicken.

Der Empfänger ist kein REDDCRYPT Nutzer
Da der Sitzungsschlüssel nicht mit einem öffentlichen Schlüssel, sondern mit einem vom Absender definierten Verschlüsselungscode verschlüsselt wurde, benötigt er diese nun zum Entschlüsseln. Nachdem der Verschlüsselungscode erfolgreich eingegeben wurde, wird der entschlüsselte Sitzungsschlüssel dafür genutzt, die E-Mail zu entschlüsseln. 

Der Empfänger kann die E-Mail nun lesen und beantworten. Möchte der Empfänger proaktiv E-Mails versenden, ist eine kostenfreie Registrierung notwendig.

Integration von REDDCRYPT in Ihre Client- oder Server-Applikation

REDDCRYPT ist so konzipiert worden, dass es mühelos in Drittsoftware integriert werden kann. Aktuell stehen hierfür eine Komponente für Clients (REDDCRYPT Desktop), sowie ein zentraler Service (REDDCRYPT Gateway) zur Verfügung. Die eigentliche Integration und Anbindung erfolgt in beiden Fällen identisch. 

REDDCRYPT Desktop

REDDCRYPT Desktop eignet sich ideal, wenn Ihre Anwendung lokal auf dem Endgerät betrieben wird und eine Interaktion durch den Nutzer notwendig bzw. gewünscht ist. Ein Beispiel hierfür ist die Integration von REDDCRYPT in bestehende E-Mail-Clients. Das von uns bereitgestellte Outlook Plugin agiert nach dem identischen Prinzip. Das Outlook Plugin selber hat keinerlei Verschlüsselungslogik, sondern interagiert mit dem REDDCRYPT Desktop, welcher die gesamte Ver- und Entschlüsselung übernimmt.

Die API Dokumentation für den REDDCRYPT Desktop finden Sie hier (in Arbeit)

REDDCRYPT Gateway 

REDDCRYPT Gateway ist für Einsatzzwecke gedacht, in denen beispielsweise keine Nutzerinteraktion gewünscht oder möglich ist. Ein Beispiel hierfür ist etwa der Versand von Gehaltsabrechnungen per E-Mail an die eigenen Mitarbeiter. Hier handelt es sich klassischerweise um einen Automatismus aus der Software der Lohnbuchhaltung und nicht um einen manuellen E-Mailversand durch Nutzer. 

Darüber hinaus ist REDDCRYPT Gateway konzipiert worden, um eine Integration in zentrale Serverapplikationen wie etwa CRM-, DMS-, ERP- oder Ticket-Systeme zu ermöglichen. Ein anderes Beispiel ist die Integration in unser zentrales E-Mail-Gateway, die REDDOXX Appliance.

Download REDDCRYPT Gateway for Windows

Unter Windows (Download) wird der REDDCRYT Gateway Service einfach per MSI-Setup installiert. Die Installation erfolgt im Verzeichnis: 

%ProgramFiles%\REDDCRYPT Gateway

Download REDDCRYPT Gateway for Linux

Unter Linux (Download TGZ oder Debian) wird dieser Installationspfad verwendet:

/opt/reddoxx/reddcrypt-gateway

Einfache Installation:

curl -o /tmp/ReddcryptGateway.tgz https://URL/ReddcryptGateway.tgz

rm -Rf /opt/reddcrypt-gateway/bin
mkdir -p /opt/reddcrypt-gateway/bin
cd /opt/reddcrypt-gateway/bin
tar xzf /tmp/ReddcryptGateway.tgz

Starten (Als Vordergrundprozess):

cd /opt/reddoxx/reddcrypt-gateway
bin/ReddcryptGateway

API, um die E-Mail zu verschlüsseln

Es gibt verschieden Möglichkeiten, E-Mails mit dem REDDCRYPT Gateway verschlüsselt zu versenden. In der einfachsten Variante wird die E-Mail durch das Gateway verschlüsselt und direkt über den REDDCRYPT Cloud Service an die Empfänger versendet. Das Gateway kann die E-Mails allerdings auch nur verschlüsseln und dabei eine Transport-Mail erzeugen, welche dann durch Ihren Service per SMTP versendet werden kann.

Die zu verschlüsselnde Mail wird entweder über einen einfachen Multipart Form-Data HTTP-Request an das Gateway übertragen oder als Dateiname. Letzteres setzt voraus, dass das Gateway auf die Datei zugreifen kann.

Verschlüsseln und direkt versenden

In dieser Variante wird die übergebene E-Mail durch das Gateway verschlüsselt und anschließen direkt an den REDDCRYPT Cloud Service übertragen. Der REDDCRYPT Cloud Service übernimmt dann den Versand an die eigentlichen Empfänger. Innerhalb der REDDCRYPT Applikationen (Web App, Mobile App, REDDCRYPT Desktop) ist die E-Mail direkt nach dem übertragen an den REDDCRYPT Cloud Service sichtbar.

Verschlüsseln für den SMTP-Transport

In dieser Variante wird die übergebene E-Mail nur durch das Gateway verschlüsselt, allerdings nicht versendet. Die verschlüsselt E-Mail (Transport-Mail), kann in diesem Fall ganz normal per SMTP versendet werden.

SMTP-Versand über den REDDCRYPT Cloud Service

Der SMTP-Versand über den REDDCRYPT Cloud Service ist die empfohlene Variante. In diesem Fall wird die Transport-Mail per SMTP an den REDDCRYPT Cloud Service versendet. Der REDDCRYPT Cloud Service übernimmt dann den Versand an die eigentlichen Empfänger. Vorteil dieser Variante ist, dass die Empfänger die Mail auch in allen REDDCRYPT Applikationen wieder finden und direkt darauf zugreifen können.

SMTP-Versand direkt an die Empfänger

Der SMTP-Versand direkt an die Empfänger ist nur für bestimmten Umgebungen sinnvoll, z. B. wenn der Empfänger ebenfalls ein REDDCRYPT Gateway einsetzt. Der Nachteil dieser Variante ist, dass weder der Absender, noch die Empfänger über die REDDCRYPT Applikationen auf die E-Mails zugreifen können.

HTTP-Requests

Has Public Key

Mit Hilfe der API HasPublicKey kann die Applikation ermitteln, ob für einen bestimmten Empfänger ein Public-Key (bzw. ein REDDCRYPT Account) für die Verschlüsselung vorhanden ist. Wenn ein Public-Key vorhanden ist, kann die E-Mail für den Empfänger direkt verschlüsselt werden. Falls für den Empfänger kein Public-Key vorhanden ist, muss beim Verschlüsseln der E-Mail ein One Time Encryption Key mit übergeben werden. Optional kann auch das REDDCRYPT Gateway einen zufälligen One Time Encryption Key beim Verschlüsseln erzeugen.

Request:

  • Url: /v1/public-keys/exists
  • Method: POST
  • Parameter:
{
  "address": "recipient@mail.com"
}

Response:

{
  "hasKey": true
}

Encrypt Mail

Um eine E-Mail zu verschlüsseln, wird sie mit Hilfe eines Multipart Form Data Request an das REDDCRYPT Gateway gesendet. Dabei können weitere Felder mit optionalen Parametern übergeben werden. Wenn die Applikation und das REDDCRYPT Gateway auf ein gemeinsames File-System zugreifen können, kann die Übergabe der Mails auch über das File-System erfolgen (siehe API Beispiel).

Request:

  • Url: /v1/mails/encrypt
  • Method: POST
  • Parameter:
    • OneTimeEncryptionKey
      Falls für einen Empfänger kein Public Key für die Verschlüsselung verfügbar ist, kann mit diesem Parameter ein One Time Encryption Key übergeben werden, mit dem das REDDCRYPT Gateway die E-Mail verschlüsseln soll.
    • EnableOtekGeneration
      Wenn dieser Parameter auf true gesetzt ist, wird beim Verschlüsseln der E-Mail ein Zufälliger One Time Encryption Key generiert, falls für einen Empfänger kein Public Key für die Verschlüsselung verfügbar ist und kein One Time Encryption Key übergeben wurde.
    • SendAfterEncryption
      Wenn dieser Parameter auf true gesetzt ist, wird die E-Mail nach dem Verschlüsseln direkt an den REDDCRYPT Cloud Service übertragen und an die Empfänger versendet. Für alle Empfänger ist die Mail dann sofort in den REDDCRYPT Applikationen sichtbar.

Response:

{
  "transactionId": "eed81c40-eb9c-4453-a6b4-c40e4e12194e",
  "recipientAddress": "C07B806E33D42EEF@smtp.staging.reddcrypt.com"
}

Download Transaction

Für die Übertragung per SMTP muss die verschlüsselte E-Mail vom REDDCRYPT Gateway über einen einfachen Download abgerufen und anschließend via SMTP an den REDDCRYPT Cloud Service gesendet werden.

Wichtig: Für jede Transaktion ist der Download nur ein einziges mal möglich. Die verschlüsselte E-Mail wird nach dem ersten Download vom REDDCRYPT Gateway gelöscht.

Request:

  • Url: /v1/download/transacion/{TRANSACTION_ID}
  • Method: GET

Response:

  • File-Download der REDDCRYPT Transport Mail.

API, um die E-Mail zu entschlüsseln

Das Entschlüsseln von mit REDDCRYPT verschlüsselten E-Mails ist mit dem REDDCRYPT Gateway sehr einfach.
Die verschlüsselte E-Mail wird entweder über einen einfachen Multipart Form-Data HTTP-Request oder als Dateiname an das Gateway übertragen. Letzteres setzt voraus, dass das Gateway auf die Datei zugreifen kann.

HTTP-Requests

Decrypt Mail

Um eine E-Mail zu entschlüsseln, kann eine REDDCRYPT Transport Mail oder eine redddcrypt.securemail Datei einfach mit Hilfe eines Multipart Form Data Request an das REDDCRYPT Gateway gesendet werden. Dabei können weitere Felder mit optionalen Parametern übergeben werden. Wenn die Applikation und das REDDCRYPT Gateway auf ein gemeinsames File-System zugreifen können, kann die Übergabe der Mails auch über das File-System erfolgen (siehe API Beispiel).

Request:

  • Url: /v1/mails/encrypt
  • Method: POST
  • Parameter:
    • OneTimeEncryptionKey
      Mit diesem Parameter kann ein One Time Encryption Key übergeben werden, welchen das REDDCRYPT Gateway zum Entschlüsseln der E-Mail verwenden kann. Für die meisten Anwendung wird dieser Parameter nicht benötigt. 

Response:

{
  "transactionId": "d602519a-d420-41fb-bd6b-305c05099684",
  "signatureStatus": "Valid"
}

Download Transaction

Die entschlüsselte E-Mail kann vom REDDCRYPT Gateway über einen einfachen Download abgerufen werden.

Wichtig: Für jede Transaktion ist der Download nur ein einziges mal möglich. Die verschlüsselte E-Mail wird nach dem ersten Download vom REDDCRYPT Gateway gelöscht.

Request:

  • Url: /v1/download/transacion/{TRANSACTION_ID}
  • Method: GET

Response: 

  • File-Download der entschlüsselten E-Mail.

API-Beispiele für die Verwendung von der REDDCRYPT Gateway API

Die Beispiele sind zur Veranschaulichung alle mit dem Kommandozeilen-Programm curl beschrieben. In diesen Beispielen werden die Request per HTTP an das REDDCRYPT Gateway gesendet. In einem Produktionsumfeld sollte unbedingt HTTPS verwendet werden.

Allgemeines

Einfach API Request werden als JSON-Web-Request ausgeführt. Als Content-Type muss hierbei application/json angegeben werden.

Content-Type: application/json

Nur das Übertragen von E-Mails zum ver- bzw. entschlüsseln erfolgt mittels Multipart Form Data. In diesem Fall muss als Content-Type multipart/form-data angegeben werden.

Content-Type: multipart/form-data

Authentifizierung

Die Authentifizierung am REDDCRYPT Gateway erfolgt durch einen API-Key. Wenn mehrere Anwendungen ein REDDCRYPT Gateway verwenden, wird empfohlen, für jede Anwendung einen eigenen API-Key zu verwenden. Die API-Keys können einfach über die WEB-UI des REDDCRYPT Gateway erzeugt werden.

API-Key als Bearer Token übergeben

Die empfohlene Variante ist die Verwendung des API-Keys als Bearer Token. Hierbei wird der API-Key einfach als HTTP-Header Feld bei jedem Request zur Authentifizierung mit übergeben.

Beispiel:

Authorization: Bearer sJYCmwaWaGPY4c0gOFECT99jUZkWvvbX

Basic Authentication mit API-Key

Alternativ kann die Authentifizierung mit API-Key auch per Basic Authentication erfolgen. In diesem Fall wird als Benutzername der API-Key übergeben, das Password bleibt leer.

Beispiel-Requests zur Verschlüsselung

Für jeden Empfänger einer E-Mail sollte die Applikation vor dem Verschlüsseln prüfen, ob ein Public Key verfügbar ist. Wenn für einen Empfänger der E-Mail kein Public Key vorhanden ist, wird beim Verschlüsseln der Mail ein One Time Encryption Key benötigt.

Prüfen ob für eine Empfänger Adresse ein Public Key verfügbar ist:

curl -s -X POST \
    -H 'Authorization: Bearer sJYCmwaWaGPY4c0gOFECT99jUZkWvvbX' \
    -H 'Content-Type: application/json' \
    -d '{"Address":"recipient@mail.com"}' \
    http://localhost:8025/v1/public-keys/exists

Response:

{
  "hasKey": false
}

E-Mail verschlüsseln und senden

Das REDDCRYPT Gateway kann die E-Mail direkt nach dem Verschlüsseln automatisch an den REDDCRYPT Cloud Service übertragen. In diesem Fall ist wird die E-Mail durch den REDDCRYPT Cloud Service an die Empfänger versendet. Dies ist die einfachste Möglichkeit, E-mails verschlüsselt zu versenden.

In diesem Beispiel wird die Mail per Multipart Form Data an das REDDCRYPT Gateway übergeben.

curl -s -X POST \
    -H 'Authorization: Bearer sJYCmwaWaGPY4c0gOFECT99jUZkWvvbX' \
    -H 'Content-Type: multipart/form-data' \
    -F 'sendAfterEncryption=true' \
    -F 'message=@plain.eml' \
    http://localhost:8025/v1/mails/encrypt

Response:

{
  "transactionId": "740f3c1f-67c1-45cf-8ee4-73672f3e61ad"
}

E-Mail nur verschlüsseln, nicht senden

Wenn das Versenden per SMTP durch die Appliaktion selbst erfolgen soll, ist das auch möglich.

curl -s -X POST \
    -H 'Authorization: Bearer sJYCmwaWaGPY4c0gOFECT99jUZkWvvbX' \
    -H 'Content-Type: multipart/form-data' \
    -F 'message=@plain.eml' \
    http://localhost:8025/v1/mails/encrypt

Response:

{
  "transactionId": "740f3c1f-67c1-45cf-8ee4-73672f3e61ad",
  "recipientAddress": "C07B806E33D42EEF@smtp.staging.reddcrypt.com"
}

Verschlüsselte E-Mail abrufen

Mit der Transaction-ID kann die verschlüsselte E-Mail direkt vom Gateway abgerufen werden.

curl -s -X GET \
    -H 'Authorization: Bearer sJYCmwaWaGPY4c0gOFECT99jUZkWvvbX' \
    -o 'encrypted.eml' \
    http://localhost:8025/v1/mails/encrypt

Als Response wird die REDDCRYPT Transport Mail zurückgegeben, welche dann durch die Applikation selbst per SMTP versendet werden muss.

Verschlüsseln mit OTEK

Wenn die E-Mail für einen Empfänger verschlüsselt werden muss, der noch kein REDDCRYPT Konto – und somit auch keinen Public Key – besitzt, wird diese E-Mail für diese Empfänger mit einem One Time Encryption Key (Einmal-Kennwort) verschlüsselt. Der One Time Encryption Key kann dabei entweder von der Applikation vorgegeben oder vom REDDCRYPT Gateway generiert werden.

Verschlüsseln mit vorgegebenem One Time Encryption Key

curl -s -X POST \
    -H 'Authorization: Bearer sJYCmwaWaGPY4c0gOFECT99jUZkWvvbX' \
    -H 'Content-Type: multipart/form-data' \
    -F 'oneTimeEncryptionKey=S0m3S3cr3tK3y' \
    -F 'message=@plain.eml' \
    http://localhost:8025/v1/mails/encrypt

Reponse:

{
  "transactionId": "740f3c1f-67c1-45cf-8ee4-73672f3e61ad",
  "recipientAddress": "C07B806E33D42EEF@smtp.staging.reddcrypt.com"
}

Verschlüsseln mit zufälligem One Time Encryption Key

curl -s -X POST \
    -H 'Authorization: Bearer sJYCmwaWaGPY4c0gOFECT99jUZkWvvbX' \
    -H 'Content-Type: multipart/form-data' \
    -F 'enableOtekGeneration=true' \
    -F 'message=@plain.eml' \
    http://localhost:8025/v1/mails/encrypt

Reponse:

{
  "transactionId": "740f3c1f-67c1-45cf-8ee4-73672f3e61ad",
  "recipientAddress": "C07B806E33D42EEF@smtp.staging.reddcrypt.com",
  "oneTimeEncryptionKey": "S0m3S3cr3tK3y"
}

E-Mail mit Dateinamen übergeben

Es ist möglich, die zu verschlüsselnde E-Mail als Datei-Referenz zu übergeben. In diesem Fall wird dem REDDCRYPT Gateway nur ein Dateiname mit vollständigem Pfad übergeben, um eine Mail zu verschlüsseln.

Falls die E-Mail nicht direkt durch das REDDCRYPT Gateway, sondern durch die Applikation versendet werden soll, muss zusätzlich ein zweiter Dateiname übergeben werden. In dieser Datei speichert das REDDCRYPT Gateway dann die REDDCRYPT Transport Mail.

Wichtig: Die Dateien werden vom REDDCRYPT Gateway nicht gelöscht. Die Applikation muss dafür sorgen, dass die Dateien nach dem Verarbeiten gelöscht werden.

curl -s -X POST \
    -H 'Authorization: Bearer sJYCmwaWaGPY4c0gOFECT99jUZkWvvbX' \
    -H 'Content-Type: application/json' \
    -F 'sendAfterEncryption=false' \
    -F 'inFileName=/path/to/plain.eml' \
    -F 'outFileName=/path/to/encrypted.eml' \
    http://localhost:8025/v1/mails/encrypt

Response:

{
  "transactionId": "740f3c1f-67c1-45cf-8ee4-73672f3e61ad"
}

Beispiel-Requests zur Entschlüsselung

Nachfolgend finden Sie einige Beispiele, um E-Mails mit dem REDDCRYPT Gateway Service zu entschlüsseln.

E-Mail entschlüsseln

Zum Entschlüsseln wird eine REDDCRYPT Transport Mail oder eine reddcrypt.securemail Datei einfach mit Hilfe eines Multipart Form Data Request an das REDDCRYPT Gateway gesendet.

In diesem Beispiel wird die E-Mail per Multipart Form Data an das REDDCRYPT Gateway übergeben.

curl -s -X POST \
    -H 'Authorization: Bearer sJYCmwaWaGPY4c0gOFECT99jUZkWvvbX' \
    -H 'Content-Type: multipart/form-data' \
    -F 'message=@encrypted.eml' \
    http://localhost:8025/v1/mails/decrypt

Reponse:

{
  "transactionId": "99db0101-160b-45e2-af8c-5830589c651e",
  "signature": "Valid"
}

E-Mail mit Dateinamen übergeben

Es ist möglich, die zu entschlüsselnde E-Mail als Datei-Referenz zu übergeben. In diesem Fall wird dem REDDCRYPT Gateway nur ein Dateiname mit vollständigem Pfad übergeben, um eine Mail zu entschlüsseln.

Zusätzlich wird ein zweiter Dateiname benötigt, mit dem das REDDCRYPT Gateway die entschlüsselte speichert.

Wichtig: Die Dateien werden vom REDDCRYPT Gateway nicht gelöscht. Die Applikation muss dafür sorgen, dass die Dateien nach dem Verarbeiten gelöscht werden.

curl -s -X POST \
    -H 'Authorization: Bearer sJYCmwaWaGPY4c0gOFECT99jUZkWvvbX' \
    -H 'Content-Type: application/json' \
    -F 'inFileName=/path/to/encrypted.eml' \
    -F 'outFileName=/path/to/plain.eml' \
    http://localhost:8025/v1/mails/decrypt

Response:

{
  "transactionId": "99db0101-160b-45e2-af8c-5830589c651e",
  "signature": "Valid"
}

Entschlüsseln mit OTEK

Falls die verschlüsselte E-Mail mit einem One Time Encryption Key verschlüsselt wurde und das REDDCRYPT Gateway keinen passenden Private Key zum entschlüsseln der E-Mail hat, kann der One Time Encryption Key zum entschlüsseln mit übergeben werden. Dieses Szenario wird für normalen Anwendungen nicht benötigt.

curl -s -X POST \
    -H 'Authorization: Bearer sJYCmwaWaGPY4c0gOFECT99jUZkWvvbX' \
    -H 'Content-Type: multipart/form-data' \
    -F 'oneTimeEncryptionKey=S0m3S3cr3tK3y' \
    -F 'message=@encrypted.eml' \
    http://localhost:8025/v1/mails/decrypt

Response:

{
  "transactionId": "99db0101-160b-45e2-af8c-5830589c651e",
  "signature": "Valid"
}