Ticket #36876

OpenSSL 1.1.1 対応

Eröffnet am: 2016-12-14 23:51 Letztes Update: 2019-12-10 19:04

Auswertung:
(del#24082)
Verantwortlicher:
(del#24082)
Status:
Geschlossen
Komponente:
Priorität:
7
Schweregrad:
7
Lösung:
Gefixt
Datei:
Keine
Vote
Score: 0
No votes
0.0% (0/0)
0.0% (0/0)

Details

OpenSSL 1.0.2から1.1.0になって、APIのインターフェイスが変更されており、
OpenSSL 1.1.0系をリンクするためには、TTSSHとTTProxyの実装を改修する必要がある。

●●●OpenSSL 1.1.1●●●

ブランチ

https://osdn.net/projects/ttssh2/scm/svn/tree/head/branches/openssl_1_1_1_v2/

進捗状況(r7980)

ライブラリビルド (OpenSSL 1.1.1c)

  • VS2017とVS2019ではビルドが通った。
  • VS2005ではビルドが通らない(*1) → 解決(r7688)

(*1) OpenSSL GitHubにも問い合わせ中→クローズ https://github.com/openssl/openssl/issues/8948

全体ビルド

  • TTSSH→OK
  • TTProxy→OK(*2)

(*2) TTProxyのSSL/TLS通信は未サポートなので、実質OpenSSLは使われない。

単体テスト

  • 修正箇所(約1100個)の単体テストはほぼ完了。
  • "blowfish-ctr"と"cast128-ctr"の単体テストが未完了。

レガシーWindowsサポート状況

Tera Termの起動確認

  • Windows98以降OK
  • Windows95 NG(*3)→解決(r7980)

(*3) 阻害要因のAPIは下記の通り。

CryptAcquireContextW
InitializeCriticalSectionAndSpinCount
InterlockedCompareExchange
InterlockedExchangeAdd

Tera Termの疎通確認(SSH通信)

  • WindowsXP OK
  • Windows2000 OK
  • WindowsNT4.0 OK(*4)
  • WindowsMe OK(*5)
  • Windows98 OK
  • Windows95 OK(*6)

(*4) r7975で処置した。

(*5) r7957, r7959, r7973で処置した。r7957は必須ではない。

(*6) r7980で処置した。

libresslサポート

  • libresslはOpenSSL 1.1 APIをサポートしているため、libresslをリンクすることもできるはず。→ NG(*6)

(*6) libressl 2.9.2(stable)と3.0.0(development)いずれもビルドエラー。ただし、libresslは目下1.1 API対応中なので、将来ビルドできるようになると思われる。

OpenSSL 3.0.0サポート

  • openssl-SNAP-20190808.tar.gz でお試し。
  • VS2005ではビルドエラー。VS2019では問題なし。
  • VS2019を使って3.0.0を組み込んだTTSSHで導通した。

●●●OpenSSL 1.1.0●●●

ブランチ

https://osdn.net/projects/ttssh2/scm/svn/tree/head/branches/openssl_1_1_0/

進捗状況

ビルド

  • VS2015でビルドが通るところまで到達(r6557 - r6576)
  • VS2005では未確認。→ 済み(r6577 - r6578)
  • TTProxyはビルドが通らない。→ 済み(r6580 - r6581)

動作テスト

(*1) dumpbin /dependents コマンドで見ると、 ttxssh.dll が「libcrypto-1_1.dll」に 依存関係を持っているのが原因。当該DLLを格納すれば起動はできた。 r6576 で処置済み。

調査結果

TTSSHがリンクしているOpenSSLの関数

http://ttssh2.osdn.jp/tmp/openssl_api_list/ func_list.txt

参考

OpenSSLのAPIマニュアル

https://www.openssl.org/docs/manpages.html

OpenSSLのサポート期限

https://www.openssl.org/policies/releasestrat.html

https://www.openssl.org/source/

  • OpenSSL 1.0.2 2019-12-31 (LTS)
  • OpenSSL 1.1.0 2018-08-31
  • OpenSSL 1.1.1 2023-09-11 (LTS)

Ticket-Verlauf (3/38 Historien)

2016-12-14 23:51 Aktualisiert von: (del#24082)
  • New Ticket "OpenSSL 1.1.0 対応" created
2016-12-14 23:55 Aktualisiert von: (del#24082)
  • Details Updated
2016-12-15 00:07 Aktualisiert von: None
Kommentar

こういう話があるようですね

http://echo.2ch.net/test/read.cgi/unix/1398419457/377-

2016-12-15 00:15 Aktualisiert von: (del#24082)
Kommentar

None への返信

こういう話があるようですね http://echo.2ch.net/test/read.cgi/unix/1398419457/377-

情報ありがとうございます。

2chスレからリンク先のOpenSSHのMLも見てみましたが、それなりの規模のパッチを

書かないといけないようですね。

2017-01-03 21:50 Aktualisiert von: (del#24082)
  • Details Updated
  • Verantwortlicher Update from (Keine) to yutakapon
2017-01-10 21:30 Aktualisiert von: (del#24082)
  • Details Updated
2017-01-15 16:19 Aktualisiert von: (del#24082)
  • Details Updated
2017-01-15 19:28 Aktualisiert von: (del#24082)
  • Details Updated
2017-01-15 22:56 Aktualisiert von: (del#24082)
  • Details Updated
2017-01-16 00:34 Aktualisiert von: (del#24082)
  • Details Updated
2017-01-16 22:38 Aktualisiert von: (del#24082)
  • Details Updated
2017-01-18 00:11 Aktualisiert von: (del#24082)
  • Details Updated
2017-02-19 00:49 Aktualisiert von: (del#24082)
  • Details Updated
2017-02-19 00:50 Aktualisiert von: (del#24082)
  • Details Updated
2018-11-27 01:54 Aktualisiert von: doda
  • Typ Update from Supportanfragen to Funktionsanfragen
  • Schweregrad Update from 5 - Mittel to 7
  • Priorität Update from 5 - Mittel to 7
  • Details Updated
  • Summary Updated
  • Lösung Update from Keine to Accepted
2018-11-27 01:57 Aktualisiert von: doda
Kommentar

OpenSSL 1.1.1系が出たので情報を追加しました。

また、ターゲットを1.1.1とすべきだと思われるので概要を変更しました。

2019-05-16 23:18 Aktualisiert von: (del#24082)
  • Details Updated
2019-05-17 19:21 Aktualisiert von: (del#24082)
  • Details Updated
2019-05-17 23:28 Aktualisiert von: (del#24082)
  • Details Updated
2019-05-18 18:06 Aktualisiert von: (del#24082)
  • Details Updated
2019-05-26 16:36 Aktualisiert von: (del#24082)
  • Details Updated
2019-06-21 20:21 Aktualisiert von: (del#24082)
  • Details Updated
2019-06-23 12:50 Aktualisiert von: (del#24082)
2019-06-28 14:52 Aktualisiert von: (del#1144)
2019-07-12 00:21 Aktualisiert von: (del#24082)
  • Details Updated
2019-08-02 20:14 Aktualisiert von: (del#24082)
  • Details Updated
2019-08-04 10:27 Aktualisiert von: (del#24082)
  • Details Updated
2019-08-04 10:27 Aktualisiert von: (del#24082)
  • Lösung Update from Accepted to Postponed
2019-08-04 10:28 Aktualisiert von: (del#24082)
2019-08-08 22:56 Aktualisiert von: (del#24082)
  • Details Updated
2019-08-15 23:24 Aktualisiert von: (del#24082)
  • Details Updated
2019-08-15 23:46 Aktualisiert von: (del#24082)
  • Details Updated
2019-08-16 00:02 Aktualisiert von: (del#24082)
  • Details Updated
2019-08-17 16:26 Aktualisiert von: (del#24082)
  • Details Updated
2019-08-17 16:26 Aktualisiert von: (del#24082)
  • Lösung Update from Postponed to Accepted
2019-10-16 21:14 Aktualisiert von: (del#24082)
2019-12-08 09:01 Aktualisiert von: None
2019-12-10 19:04 Aktualisiert von: (del#24082)
  • Status Update from Offen to Geschlossen
  • Lösung Update from Accepted to Gefixt

Dateianhangliste

Keine Anhänge

Bearbeiten

You are not logged in. I you are not logged in, your comment will be treated as an anonymous post. » Anmelden