Autor Téma: Podpora OpenSSL 1.1.1 pro Indy je na obzoru  (Přečteno 560 krát)

Offline Radek Červinka

  • Administrátoři
  • Padawan
  • *****
  • Příspěvků: 2766
  • Karma: 105
    • Verze Delphi: D2007, DXE + 2 poslední
    • O Delphi v češtině
Podpora OpenSSL 1.1.1 pro Indy je na obzoru
« kdy: 02-12-2020, 08:46:39 »
Pár poznámek co jsem včera vypotil, mám radost. https://delphi.cz/post/Indy-OpenSSL-111-IO-Handler-podpora-TLS-13.aspx
Embarcadero MVP - Czech republic

Offline pepak

  • Padawan
  • ******
  • Příspěvků: 1537
  • Karma: 37
    • Pepak.net
Re:Podpora OpenSSL 1.1.1 pro Indy je na obzoru
« Odpověď #1 kdy: 03-12-2020, 06:46:16 »
Excellent
Rated 1 time
Abych se přiznal, nerozumím tomu, proč to tak dlouho trvalo. Chápal bych, kdyby Indy implementoval celý protokol čistě v Delphi, ale jestli to chápu dobře (nepoužívám Indy), tak celá SSL část je odlifrovaná do OpenSSL. A když jsem to před rokem řešil v Synapsi, tak veškerá změna spočívala v tom, že jsem musel doimplementovat podporu jiných názvů souborů knihovny. Jakmile jsem místo libeay32.dll začal používat libcrypto-1_1.dll, tak se automaticky přeplo na TLS 1.3. Co je v Indy implementaci tak speciální?

Offline Radek Červinka

  • Administrátoři
  • Padawan
  • *****
  • Příspěvků: 2766
  • Karma: 105
    • Verze Delphi: D2007, DXE + 2 poslední
    • O Delphi v češtině
Re:Podpora OpenSSL 1.1.1 pro Indy je na obzoru
« Odpověď #2 kdy: 03-12-2020, 10:35:52 »
Mám taky raději Synapsi.
Přiznám se, že tomu moc nerozumím, ale pro 1.1.1 jsou znovu vygenerovany headery a myslím si, že podpora je přepsána tak, že splňuje to co chtějí, tj. nepřímý přístup k členům struktur.
https://wiki.openssl.org/index.php/OpenSSL_1.1.0_Changes

Kdyby to byla tak jednoduché, tak proč jak píší: OpenSSH does not compile against OpenSSL 1.1.0

Ale opravdu si nejsem jist, jen si vybavuji, že na začátku roku Remy řekl, že plná podporu OpenSSL 1.1.x je v nedohlednu.
Embarcadero MVP - Czech republic

Offline pepak

  • Padawan
  • ******
  • Příspěvků: 1537
  • Karma: 37
    • Pepak.net
Re:Podpora OpenSSL 1.1.1 pro Indy je na obzoru
« Odpověď #3 kdy: 03-12-2020, 12:20:17 »
To by mohlo být - Synapse od začátku používala nepřímý přístup, takže v tom nebyl problém.

Druhá věc je "plná" podpora OpenSSL - tam je nepochybně spousta věcí, které se musí předělat. Mě stačí "jakž takž funkční" :-)

Offline Radek Červinka

  • Administrátoři
  • Padawan
  • *****
  • Příspěvků: 2766
  • Karma: 105
    • Verze Delphi: D2007, DXE + 2 poslední
    • O Delphi v češtině
Re:Podpora OpenSSL 1.1.1 pro Indy je na obzoru
« Odpověď #4 kdy: 04-12-2020, 21:59:38 »
Tak jsem to u synapse zkusil a zatim OK, diky - skoda ze o tom nikdo moc nemá páru, dival jsem se i do https://sourceforge.net/p/synalist/code/HEAD/tree/trunk/
« Poslední změna: 19-12-2020, 17:30:21 od Radek Červinka »
Embarcadero MVP - Czech republic

Offline geby

  • Plnoletý
  • ***
  • Příspěvků: 227
  • Karma: 16
    • Verze Delphi: 7, 2007, XE2, 10.2
    • Synapse
Re:Podpora OpenSSL 1.1.1 pro Indy je na obzoru
« Odpověď #5 kdy: 07-12-2020, 16:06:19 »
Já vím, Synapsi poslední roky dosti zanedbavam...

Nicméně na jednoduché klientské veci, jako připojit se k serveru tím nejlepším protokolem, co je k dispozici, a neřešit certifikáty, tak s tím není problém.

Co určitě nefunguje, to je třeba automatické generování self-signed certifikátu u serverového socketu.

Nejraději bych to vyřešil novým SSL pluginem  pro OpenSSL 1.1, ale ten čas, to je prevít. Teď navíc v kombinaci s okupací výpočetní techniky online výukou mládeže...

Offline pepak

  • Padawan
  • ******
  • Příspěvků: 1537
  • Karma: 37
    • Pepak.net
Re:Podpora OpenSSL 1.1.1 pro Indy je na obzoru
« Odpověď #6 kdy: 07-12-2020, 18:27:02 »
Geby: Ani s certifikáty (myšleno použitím nebo ověřením, vytváření jsem nepotřeboval) není problém. Dokonce po menší úpravě ani s certifikáty v úložišti Windows. Aktuální verze mých úprav se najdou třeba v https://update.pepak.net/far/filters/src v adresáři Source\Lib\Synapse, kdyby to někdo chtěl použít (ať už pro své aplikace nebo pro aktualizaci Synapse ;-)).