ANTRAX Datentechnik GmbH / MultiBox-pro LAN+
Seite 35
· TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
· TLS_ECDH_RSA_WITH_AES_128_GCM_SHA256
· TLS_RSA_WITH_AES_128_CCM
· TLS_RSA_WITH_AES_256_CCM
· TLS_DHE_RSA_WITH_AES_128_CCM
· TLS_DHE_RSA_WITH_AES_256_CCM
· TLS_RSA_WITH_AES_128_CCM_8
· TLS_RSA_WITH_AES_256_CCM_8
· TLS_DHE_RSA_WITH_AES_128_CCM_8
· TLS_DHE_RSA_WITH_AES_256_CCM_8
· TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
· TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256
· TLS_DHE_RSA_WITH_CHACHA20_POLY1305_SHA256
Erstellen eigener Zertifikate
Der SSL Stack wird mit einem eigens neu generierten Zertifikat ausgeliefert. Es gibt keine Funktion,
um das lokale Zertifikat auf Knopfdruck neu zu erzeugen, da die benötigten Zufallszahlen in einem
Embedded Device meist nicht unabhängig genug sind. Man kann jedoch selbst neue Zertifikate
erzeugen und auf das Gerät importieren. Der Server akzeptiert RSA (1024/2048/4096) und ECC
(Elliptic Curve Cryptography) Zertifikate.
Zum Erstellen eines SSL-Zertifikats wird meist OpenSSL verwendet. Für Windows gibt es z.B. die
Light-Version von
Shinning Light
Productions. Dort eine Eingabeaufforderung öffnen, in das
Verzeichnis "C:\OpenSSL-Win32\bin" wechseln und diese Environment Variablen setzen:
set openssl_conf=C:\OpenSSL-Win32\bin\openssl.cfg
set RANDFILE=C:\OpenSSL-Win32\bin\.rnd
Hier einige Beispiele zur Generierung mit OpenSSL:
Erstellung eines RSA 2048-Bit self-signed Zertifikats
openssl genrsa -out server.key 2048
openssl req -new -x509 -days 365 -key server.key -out server.crt
RSA 2048-Bit Zertifikat mit Sign Request:
openssl genrsa -out server.key 2048
openssl req -new -key server.key -out server.csr
openssl req -x509 -days 365 -key server.key -in server.csr -out server.crt
Die Server Keys sollten mit "openssl genrsa" erzeugt werden. Wenn in der erzeugten
Schlüsseldatei nicht "-----BEGIN RSA PRIVATE KEY-----" sondern nur "-----BEGIN PRIVATE KEY-----"
steht, wird der Schlüssel nicht erkannt.
ECC Zertifikat mit Sign Request:
openssl ecparam -genkey -name prime256v1 -out server.key
openssl req -new -key server.key -out server.csr
openssl req -x509 -days 365 -key server.key -in server.csr -out server.crt
Hat man Schlüssel und Zertifikat erstellt, werden beide Dateien zu einer Datei aneinandergehängt:
Linux:
cat server.crt server.key > server.pem