Erstellt vor 5 Jahren

Geschlossen vor 4 Jahren

#2426 closed addition (fixed)

OpenSSL - ECC Support

Erstellt von: albundy118 Verantwortlicher: er13
Priorität: low Meilenstein: freetz-next
Komponente: packages Version: devel
Stichworte: Beobachter:
Product Id: Firmware Version:

Beschreibung

Hallo,

nachdem ich festgestellt habe, dass openssl mit "no-ec" konfiguriert ist, ich aber nach ciphers mit ECC gesucht habe, habe ich diese "no-ec" als option in menuconfig eingebaut.
Default bleibt mit dem angeängten Patch "no-ec", kann jetzt aber abgewählt werden wenn benötigt z.B. für lighttp, haproxy, stunnel oder andere packages welche auf die openssl lib zugreifen.

zusätzlich stehen jetzt folgende ciphers zur Verfügung:

root@fritz:/var/mod/root# openssl ciphers -v | grep EC
ECDHE-RSA-AES256-GCM-SHA384 TLSv1.2 Kx=ECDH     Au=RSA  Enc=AESGCM(256) Mac=AEAD
ECDHE-ECDSA-AES256-GCM-SHA384 TLSv1.2 Kx=ECDH     Au=ECDSA Enc=AESGCM(256) Mac=AEAD
ECDHE-RSA-AES256-SHA384 TLSv1.2 Kx=ECDH     Au=RSA  Enc=AES(256)  Mac=SHA384
ECDHE-ECDSA-AES256-SHA384 TLSv1.2 Kx=ECDH     Au=ECDSA Enc=AES(256)  Mac=SHA384
ECDHE-RSA-AES256-SHA    SSLv3 Kx=ECDH     Au=RSA  Enc=AES(256)  Mac=SHA1
ECDHE-ECDSA-AES256-SHA  SSLv3 Kx=ECDH     Au=ECDSA Enc=AES(256)  Mac=SHA1
ECDH-RSA-AES256-GCM-SHA384 TLSv1.2 Kx=ECDH/RSA Au=ECDH Enc=AESGCM(256) Mac=AEAD
ECDH-ECDSA-AES256-GCM-SHA384 TLSv1.2 Kx=ECDH/ECDSA Au=ECDH Enc=AESGCM(256) Mac=AEAD
ECDH-RSA-AES256-SHA384  TLSv1.2 Kx=ECDH/RSA Au=ECDH Enc=AES(256)  Mac=SHA384
ECDH-ECDSA-AES256-SHA384 TLSv1.2 Kx=ECDH/ECDSA Au=ECDH Enc=AES(256)  Mac=SHA384
ECDH-RSA-AES256-SHA     SSLv3 Kx=ECDH/RSA Au=ECDH Enc=AES(256)  Mac=SHA1
ECDH-ECDSA-AES256-SHA   SSLv3 Kx=ECDH/ECDSA Au=ECDH Enc=AES(256)  Mac=SHA1
ECDHE-RSA-DES-CBC3-SHA  SSLv3 Kx=ECDH     Au=RSA  Enc=3DES(168) Mac=SHA1
ECDHE-ECDSA-DES-CBC3-SHA SSLv3 Kx=ECDH     Au=ECDSA Enc=3DES(168) Mac=SHA1
ECDH-RSA-DES-CBC3-SHA   SSLv3 Kx=ECDH/RSA Au=ECDH Enc=3DES(168) Mac=SHA1
ECDH-ECDSA-DES-CBC3-SHA SSLv3 Kx=ECDH/ECDSA Au=ECDH Enc=3DES(168) Mac=SHA1
ECDHE-RSA-AES128-GCM-SHA256 TLSv1.2 Kx=ECDH     Au=RSA  Enc=AESGCM(128) Mac=AEAD
ECDHE-ECDSA-AES128-GCM-SHA256 TLSv1.2 Kx=ECDH     Au=ECDSA Enc=AESGCM(128) Mac=AEAD
ECDHE-RSA-AES128-SHA256 TLSv1.2 Kx=ECDH     Au=RSA  Enc=AES(128)  Mac=SHA256
ECDHE-ECDSA-AES128-SHA256 TLSv1.2 Kx=ECDH     Au=ECDSA Enc=AES(128)  Mac=SHA256
ECDHE-RSA-AES128-SHA    SSLv3 Kx=ECDH     Au=RSA  Enc=AES(128)  Mac=SHA1
ECDHE-ECDSA-AES128-SHA  SSLv3 Kx=ECDH     Au=ECDSA Enc=AES(128)  Mac=SHA1
ECDH-RSA-AES128-GCM-SHA256 TLSv1.2 Kx=ECDH/RSA Au=ECDH Enc=AESGCM(128) Mac=AEAD
ECDH-ECDSA-AES128-GCM-SHA256 TLSv1.2 Kx=ECDH/ECDSA Au=ECDH Enc=AESGCM(128) Mac=AEAD
ECDH-RSA-AES128-SHA256  TLSv1.2 Kx=ECDH/RSA Au=ECDH Enc=AES(128)  Mac=SHA256
ECDH-ECDSA-AES128-SHA256 TLSv1.2 Kx=ECDH/ECDSA Au=ECDH Enc=AES(128)  Mac=SHA256
ECDH-RSA-AES128-SHA     SSLv3 Kx=ECDH/RSA Au=ECDH Enc=AES(128)  Mac=SHA1
ECDH-ECDSA-AES128-SHA   SSLv3 Kx=ECDH/ECDSA Au=ECDH Enc=AES(128)  Mac=SHA1
ECDHE-RSA-RC4-SHA       SSLv3 Kx=ECDH     Au=RSA  Enc=RC4(128)  Mac=SHA1
ECDHE-ECDSA-RC4-SHA     SSLv3 Kx=ECDH     Au=ECDSA Enc=RC4(128)  Mac=SHA1
ECDH-RSA-RC4-SHA        SSLv3 Kx=ECDH/RSA Au=ECDH Enc=RC4(128)  Mac=SHA1
ECDH-ECDSA-RC4-SHA      SSLv3 Kx=ECDH/ECDSA Au=ECDH Enc=RC4(128)  Mac=SHA1

Gruß
Albundy

Anhänge (2)

openssl_ecc.patch (1.3 KB) - hinzugefügt von albundy118 vor 5 Jahren.
openssl_ecc-rebuild.patch (1.4 KB) - hinzugefügt von albundy118 vor 5 Jahren.

Alle Anhänge herunterladen als: .zip

Änderungshistorie (7)

Geändert vor 5 Jahren durch albundy118

comment:1 Geändert vor 5 Jahren durch oliver

Und gleich mit Patch. Super. :-)

Kannst du bitte mal nachschauen wie sich die Option in der Größe niederschlägt?

comment:2 Antwort: Geändert vor 5 Jahren durch albundy118

Habe make jetzt nochmal mit & ohne ECC durchlaufen lassen.
Ich habe openssl als external package und das *.external file ist mit ECC ca 159kB größer.

Noch schnell ne blöde Frage dazu… ist es normal dass ich immer erst das package clean muss damit es durch die Änderung dann neu kompiliert wird? Oder kann man das in der Config noch irgendwie erzwingen wenn da was geändert wird?

comment:3 als Antwort auf: ↑ 2 Geändert vor 5 Jahren durch er13

Replying to albundy118:

Oder kann man das in der Config noch irgendwie erzwingen wenn da was geändert wird?

Füge folgende Zeile zu der .mk hinzu:

$(PKG)_REBUILD_SUBOPTS += FREETZ_OPENSSL_NO_EC

Und benenne die Option bitte in FREETZ_PACKAGE_OPENSSL_NO_EC um.

comment:4 Geändert vor 5 Jahren durch albundy118

Super, danke für den Tipp mit dem Rebuild, wieder was gelernt.
Hab es nochmal probiert und lief mit und ohne ECC durch.

Geändert vor 5 Jahren durch albundy118

comment:5 Geändert vor 4 Jahren durch er13

  • Lösung auf fixed gesetzt
  • Status von new nach closed geändert
  • Verantwortlicher auf er13 gesetzt

In 11957:

openssl:

  • add optional support for elliptic curve cryptography (by albundy118)
  • fixes #2426
  • refs #2435
Hinweis: Hilfe zur Verwendung von Tickets finden Sie in TracTickets.