A5:SQL Mk-2 Version 2.12.0 beta 39から、SSH経由接続で使うためのライブラリをバージョンアップしました。
Devart社のSecureBridge 7.0 → 7.3 です。
Historyに「Elliptic Curve Cryptography cipher suites is supported」とか書いてあったので、ヨッシャECDSAとかED25519の楕円暗号形式とか対応したのかな?と思ってバージョンアップしてみたのですが、楕円暗号対応していたのはTLS(SSL)の方みたいでSSHでは関係ありませんでした。ぜひ、Version 7.4とかでは対応してほしいです。(春くらいに新しいバージョンでるのかな?)
あとは、TLS 1.2対応とか書かれていたのでヨシヨシと思っていたのですが、SSHプロトコルって内部的にTLSを使うわけじゃないのでこれも関係ないですね。この辺少し知識がフワフワしてます。
あと、「Support for the Diffie-Hellman Group and Key Exchange algorithm is added」とか書いてあって、多分SSHの鍵交換も何か進歩したらしいはずだけどよくわからず。
よくわからずといえば、よくあるSSH関連のソフトウエアでは、鍵交換アルゴリズムやら利用可能な暗号化アルゴリズムやらを選択できたり優先順位をつけたりできますが、この辺もやや知識がフワフワしていて、知識不足&ライブラリの使い方がよくわからないなと感じています。データベース接続のソフトウェアでSSHのあまり細かい設定ができても、なんだかなという気もしなくもないですが…。
ただ、少しうれしかったのが、7.2からのようですが、PuTTY形式の鍵ファイルを取り込めるようになったこと。これまでは、PuTTY形式の鍵ファイルを扱うときは、PuTTYに同梱のPLINKに接続して…とかやっていたので、A5:SQL Mk-2の内部で完結するのはありがたいです。
最後に、A5:SQL Mk-2で扱えるSSHの秘密鍵ファイルの形式は、OpenSSH, SecSH, PuTTY の各形式ですが、これらの形式でも扱えたり扱えなかったりするものがあるので、ここに扱える形式を書いておきます。秘密鍵ファイルのヘッダが次のうちのどれかであれば、扱えるはずです。
—–BEGIN RSA PRIVATE KEY—–
—–BEGIN DSA PRIVATE KEY—–
—–BEGIN PRIVATE KEY—–
—–BEGIN ENCRYPTED PRIVATE KEY—–
—- BEGIN SSH2 ENCRYPTED PRIVATE KEY —-
PuTTY-User-Key-File-2 ← Version 2.11系まではPLINK.exeを呼び出して処理します。