Develop and Download Open Source Software

Browse Subversion Repository

Log of /trunk/ttssh2/ttxssh/key.c

Parent Directory Parent Directory | Revision Log Revision Log


Links to HEAD: (view) (download) (as text) (annotate)
Sticky Revision:

Revision 9255 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed May 19 14:11:26 2021 UTC (2 years, 9 months ago) by nmaya
File length: 62063 byte(s)
Diff to previous 9048
SSH2 暗号化方式 chacha20-poly1305@openssh.com をサポート

merge from branches/ssh_chacha20poly1305
r9209, r9210, r9211, r9212, r9217, r9229, r9248, r9249, r9250, r9251, r9252, r9253

Revision 9048 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Dec 16 12:24:13 2020 UTC (3 years, 2 months ago) by nmaya
File length: 62606 byte(s)
Diff to previous 8553
ソースファイルの著作権表記の "最後の発行の年" を削除

ticket #40996

Revision 8553 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Feb 19 17:59:21 2020 UTC (4 years ago) by doda
File length: 62610 byte(s)
Diff to previous 8316
RSA署名が不正でも正しい署名だとみなす可能性が有ったのを修正

問題:
  メモリが不足気味な環境な時、KEXのRSAホスト鍵での署名検証で不正な
  署名を正しい署名だと判断する可能性が有った。

原因:
  malloc() が失敗した時に return している値(1)が、正しい署名の時と
  同じだった

対処:
  malloc() が失敗した時は、署名が不正な時と同じ値(0)を返すようにした

Revision 8316 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Oct 16 13:19:25 2019 UTC (4 years, 4 months ago) by yutakapon
File length: 62610 byte(s)
Diff to previous 7896
- TTSSHとTTProxyを OpenSSL 1.1.1 に対応した。
  ※OpenSSL 1.0.2ではビルドできません
- Win32 APIのWindows依存チェックツール(installer/checksymbol)を追加した。

branches/openssl_1_1_1_v3からリビジョン8258をマージ:
/branches/openssl_1_1_1_v2 ブランチの r7785 - r8256 をマージした。


........


Revision 7896 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Jul 29 15:04:08 2019 UTC (4 years, 7 months ago) by zmatsuo
File length: 59806 byte(s)
Diff to previous 7703
Merge branch 'x64' into trunk

Revision 7703 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue May 21 14:27:30 2019 UTC (4 years, 9 months ago) by zmatsuo
File length: 59856 byte(s)
Diff to previous 7592
ttssh 無効化していたフォント関連のソースを削除

Revision 7592 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Apr 17 15:08:42 2019 UTC (4 years, 10 months ago) by zmatsuo
File length: 61404 byte(s)
Diff to previous 7560
ダイアログを親(vtwin)の中央に表示するよう修正

Revision 7560 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Apr 8 17:12:02 2019 UTC (4 years, 11 months ago) by zmatsuo
File length: 61366 byte(s)
Diff to previous 7536
ttssh 高DPI対応

Revision 7536 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Apr 1 12:45:02 2019 UTC (4 years, 11 months ago) by zmatsuo
File length: 61136 byte(s)
Diff to previous 6841
MinGWでビルドできるよう調整

Revision 6841 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Jul 4 15:02:28 2017 UTC (6 years, 8 months ago) by doda
File length: 61146 byte(s)
Diff to previous 6817
TeraTerm Project としてのライセンス表記を追加

・Tera Term 本体分を横 80 桁に収まるように改行位置を調整
・ttssh 関連の分を追加

Revision 6817 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Jun 23 14:58:54 2017 UTC (6 years, 8 months ago) by maya
File length: 61099 byte(s)
Diff to previous 6809
関数を移動

Revision 6809 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Jun 19 12:50:42 2017 UTC (6 years, 8 months ago) by doda
File length: 59465 byte(s)
Diff to previous 6801
ログ関連を見直し。

・_snprintf_s() + notify_verbose_message() を logprintf() に置き換え。
・固定メッセージの notify_verbose_message() を logputs() に置き換え。

pvar を渡す必要が無くなったので、pvar が使えない状況でもログ出力が行える。

全体的に LOGLEVEL を見直したい……

Revision 6801 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Jun 13 10:30:12 2017 UTC (6 years, 8 months ago) by doda
File length: 60686 byte(s)
Diff to previous 6286
eliminate FAR keyword.

Revision 6286 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Feb 1 15:14:14 2016 UTC (8 years, 1 month ago) by yutakapon
File length: 60715 byte(s)
Diff to previous 6229
チケット #35744 VS2015の警告除去

下記ブランチからマージした。
svn+ssh://yutakapon@svn.sourceforge.jp/svnroot/ttssh2/branches/vs2015_warn
リビジョン6194 - 6260


Revision 6229 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Jan 1 11:06:37 2016 UTC (8 years, 2 months ago) by yutakapon
File length: 60683 byte(s)
Diff to previous 6158
チケット #35870 ゼロクリアの削除

memset()やZeroMemory()は、コンパイラの最適化で削除されることがあるため、
セキュリティ上削除されると困る箇所に関しては SecureZeroMemory() に置き換える。
SecureZeroMemory() はインライン関数のため、Windows95 でも動作する。


Revision 6158 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Nov 19 10:54:12 2015 UTC (8 years, 3 months ago) by maya
File length: 60600 byte(s)
Diff to previous 6152
SSH fingerprint が取得できないときの対策を入れた

Revision 6152 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Nov 18 13:11:56 2015 UTC (8 years, 3 months ago) by maya
File length: 60496 byte(s)
Diff to previous 6147
鍵の置き換え・Hostkey Rotationの更新後に About TTSSH ダイアログを表示すると落ちる問題を修正
  hosts_state.hostkey を known_hosts の読み込みテンポラリに使っているのをやめた

Revision 6147 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Nov 17 09:31:03 2015 UTC (8 years, 3 months ago) by maya
File length: 60279 byte(s)
Diff to previous 6145
key_init() 関数を追加
  key_free() はポインタでないと使えないため

Revision 6145 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Nov 17 04:37:00 2015 UTC (8 years, 3 months ago) by maya
File length: 60229 byte(s)
Diff to previous 6135
鍵のコピーを関数化

Revision 6135 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Nov 15 13:27:58 2015 UTC (8 years, 3 months ago) by maya
File length: 59249 byte(s)
Diff to previous 6132
About TTSSH と Hostkey rotation ダイアログのテキスト追加方法を変更
  EM_REPLACESEL で細かく追加するのをやめ、WM_SETTEXT でまとめてセットする

Revision 6132 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Nov 15 10:25:50 2015 UTC (8 years, 3 months ago) by maya
File length: 59046 byte(s)
Diff to previous 6129
SSH ホスト鍵の fingerprint の表示を、MD5 形式か SHA256 形式か選択できるようにした
  https://osdn.jp/ticket/browse.php?group_id=1412&tid=35602

Revision 6129 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Nov 14 07:55:18 2015 UTC (8 years, 3 months ago) by maya
File length: 57492 byte(s)
Diff to previous 6120
SSH key fingerprint の hex 形式の末尾処理のバグを修正
  r6120 で混入

Revision 6120 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Nov 13 05:06:34 2015 UTC (8 years, 3 months ago) by maya
File length: 57500 byte(s)
Diff to previous 6118
SSH key fingerprint の 出力時に、使用しているハッシュアルゴリズム名を表示するようにした

Revision 6118 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Nov 12 14:33:12 2015 UTC (8 years, 3 months ago) by maya
File length: 56421 byte(s)
Diff to previous 6117
SSH key fingerprint を base64 形式で出力する関数を追加

Revision 6117 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Nov 11 22:38:30 2015 UTC (8 years, 3 months ago) by maya
File length: 55543 byte(s)
Diff to previous 6064
SSH key fingerprint の hex 形式の出力を関数に移動(OpenSSH と同じ)
ダイジェストの形式を引数に追加

この変更は内部的なもので、外から見た動作は一切変わらないはず

Revision 6064 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Oct 26 23:29:25 2015 UTC (8 years, 4 months ago) by maya
File length: 55330 byte(s)
Diff to previous 5969
Copyright 表記を調整

Revision 5969 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Aug 29 03:34:59 2015 UTC (8 years, 6 months ago) by maya
File length: 55341 byte(s)
Diff to previous 5964
ホスト公開鍵更新の確認ダイアログを調整

Revision 5964 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Aug 28 14:44:28 2015 UTC (8 years, 6 months ago) by maya
File length: 55046 byte(s)
Diff to previous 5941
サーバホスト鍵更新のメッセージを修正

Revision 5941 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Aug 13 15:08:51 2015 UTC (8 years, 6 months ago) by yutakapon
File length: 55050 byte(s)
Diff to previous 5931
Key typeが不定の場合、fingerprintの表示処理においてBOFで
アプリケーションが落ちる問題を修正した。

<発生条件>
・Host key rotationが有効である
・Host key rotationによりknown_hostsが更新される
・SSH接続後に、バージョンダイアログを表示する。


Revision 5931 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Aug 8 17:42:07 2015 UTC (8 years, 7 months ago) by yutakapon
File length: 55010 byte(s)
Diff to previous 5857
チケット #35165
ホスト鍵自動更新の確認ダイアログ

MessageBox API からダイアログボックスに変更した。


Revision 5857 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun May 10 15:41:48 2015 UTC (8 years, 10 months ago) by yutakapon
File length: 52683 byte(s)
Diff to previous 5855
チケット #35047 SSH サーバホスト公開鍵の自動更新

ポップアップメッセージの2回目の指摘事項をフィードバックした。
http://logmett.com/forum/viewtopic.php?f=2&t=2740


Revision 5855 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat May 9 10:34:14 2015 UTC (8 years, 10 months ago) by yutakapon
File length: 52119 byte(s)
Diff to previous 5854
チケット #35047 SSH サーバホスト公開鍵の自動更新

ポップアップメッセージのI18N化を実施した。



Revision 5854 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat May 9 09:26:23 2015 UTC (8 years, 10 months ago) by yutakapon
File length: 52037 byte(s)
Diff to previous 5853
チケット #35047 SSH サーバホスト公開鍵の自動更新

ポップアップメッセージの指摘事項をフィードバックした。
http://logmett.com/forum/viewtopic.php?f=2&t=2740


Revision 5853 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu May 7 16:38:03 2015 UTC (8 years, 10 months ago) by yutakapon
File length: 51630 byte(s)
Diff to previous 5851
チケット #35047 SSH サーバホスト公開鍵の自動更新

known_hosts ファイルを更新する際の問い合わせダイアログにおいて、
 ・デフォルトボタンを"NO"にした。
 ・英文メッセージを変更した。
※I18N対応は未。


Revision 5851 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed May 6 17:08:00 2015 UTC (8 years, 10 months ago) by yutakapon
File length: 50978 byte(s)
Diff to previous 5850
チケット #35047 SSH サーバホスト公開鍵の自動更新

新規の公開鍵を登録する処理に、サーバとのシグネチャチェックを行い、鍵の更新を実施するようにした。



Revision 5850 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed May 6 15:57:02 2015 UTC (8 years, 10 months ago) by yutakapon
File length: 48256 byte(s)
Diff to previous 5849
チケット #35047 SSH サーバホスト公開鍵の自動更新

新規の公開鍵を登録する処理に、SSH2_MSG_GLOBAL_REQUESTに対するハンドラルーチンを追加した。
現状、Host key rotationでしか使わないため、ハンドラ登録機構にリンクドリストは使用せず、単一
登録のみとしている。


Revision 5849 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue May 5 18:08:23 2015 UTC (8 years, 10 months ago) by yutakapon
File length: 47316 byte(s)
Diff to previous 5848
チケット #35047 SSH サーバホスト公開鍵の自動更新

・UpdateHostkeys エントリに"2"(ASK)を追加した。
・known_hosts ファイルの更新処理を追加した。


Revision 5848 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon May 4 17:46:30 2015 UTC (8 years, 10 months ago) by yutakapon
File length: 45913 byte(s)
Diff to previous 5847
チケット #35047 SSH サーバホスト公開鍵の自動更新

known_hosts ファイルを更新するべき鍵の数を計算する。



Revision 5847 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon May 4 17:18:56 2015 UTC (8 years, 10 months ago) by yutakapon
File length: 45319 byte(s)
Diff to previous 5846
チケット #35047 SSH サーバホスト公開鍵の自動更新

サーバから送られてきた鍵候補群と、known_hosts ファイルを検索し、
鍵のマッチングを行うようにした。



Revision 5846 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun May 3 16:46:29 2015 UTC (8 years, 10 months ago) by yutakapon
File length: 44149 byte(s)
Diff to previous 5843
チケット #35047 SSH サーバホスト公開鍵の自動更新

known_hosts ファイルを検索する関数(host key rotation用)を追加した。


Revision 5843 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri May 1 07:44:21 2015 UTC (8 years, 10 months ago) by yutakapon
File length: 44103 byte(s)
Diff to previous 5841
チケット #35047 SSH サーバホスト公開鍵の自動更新

公開鍵の重複チェックを行う関数を HOSTS_compare_public_key() として切り出した。


Revision 5841 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Apr 30 16:27:29 2015 UTC (8 years, 10 months ago) by yutakapon
File length: 43159 byte(s)
Diff to previous 5839
チケット #35047 SSH サーバホスト公開鍵の自動更新

許可された(ユーザが設定した)ホスト鍵アルゴリズムのみを受け付けるようにした。



Revision 5839 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Apr 29 16:23:18 2015 UTC (8 years, 10 months ago) by yutakapon
File length: 42366 byte(s)
Diff to previous 5838
チケット #35047 SSH サーバホスト公開鍵の自動更新

known_hosts ファイルの更新の実施有無を設定できるようにした。
TERATERM.INI の [TTSSH] セクションに"UpdateHostkeys"エントリを追加した。
デフォルトは、OpenSSH 6.8(oUpdateHostkeys)に合わせて「オフ」とする。


Revision 5838 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Apr 26 14:46:48 2015 UTC (8 years, 10 months ago) by yutakapon
File length: 42141 byte(s)
Diff to previous 5550
チケット #35047 SSH サーバホスト公開鍵の自動更新

・SSH2_MSG_GLOBAL_REQUESTの"hostkeys-00@openssh.com"に対して、
 OpenSSH 6.8の実装に合わせて、常に success を返すように変更した。
・ホスト鍵の自動更新処理を実装中。
 現時点では、サーバから送られてきた鍵のfingerprintをログ採取するところまで。
・key_from_blob()の引数チェックを追加した。
・SSHハンドラの pvar->ssh_state.payloadlen のコメント誤りを修正した。
 pvar->ssh_state.payload には type が含まれていないので、payloadlenに type 分の
 サイズが含まれているのは、オリジナルバグではないかと思う。


Revision 5550 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Mar 19 13:19:25 2014 UTC (9 years, 11 months ago) by maya
File length: 39496 byte(s)
Diff to previous 5545
About TTSSH ダイアログへの認証情報の表示を調整
  鍵の暗号方式の代わりに "publickey" と表示

Revision 5545 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Mar 17 16:06:58 2014 UTC (9 years, 11 months ago) by yutakapon
File length: 39489 byte(s)
Diff to previous 5042
チケット #33263
Curve25519楕円曲線DH(Diffe Hellman)アルゴリズムを使った鍵交換をサポートした。

svn+ssh://svn.sourceforge.jp/svnroot/ttssh2/branches/ssh_ed25519
ブランチからマージ。

現時点でサポートしている機能は下記の通り。

 ・Key Generatorで ED25519 鍵の作成
 ・Key Generatorで RSA/DSA/ECDSA 秘密鍵ファイルに bcrypt KDF を選択可能。
 ・ED25519 による公開鍵認証ログイン
 ・RSA(bcrypt KDF) による公開鍵認証ログイン
 ・DSA(bcrypt KDF) による公開鍵認証ログイン
 ・ECDSA(bcrypt KDF) による公開鍵認証ログイン
 ・Host Keyに ssh-ed25519 のサポート


Revision 5042 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Oct 16 12:43:13 2012 UTC (11 years, 4 months ago) by yutakapon
File length: 27458 byte(s)
Diff to previous 4539
PuTTYのシンボルと衝突するため、Tera Term側の名前を変更する。

 ・key_type -> ssh_key_type



Revision 4539 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Jul 27 08:50:14 2011 UTC (12 years, 7 months ago) by doda
File length: 27450 byte(s)
Diff to previous 4531
SSHFP 検証を ECDSA 鍵、および SHA256 ダイジェストに対応させた
http://tools.ietf.org/html/draft-os-ietf-sshfp-ecdsa-sha2-00


Revision 4531 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Jul 26 08:50:11 2011 UTC (12 years, 7 months ago) by doda
File length: 27396 byte(s)
Diff to previous 4378
RFC 4255 "Using DNS to Securely Publish Secure Shell (SSH) Key Fingerprints" 対応の準備
http://tools.ietf.org/html/rfc4255

VerifyHostKeyDNS = 1 にすると、ホスト鍵の検証を行う。
検証するだけで検証結果は使ってないけれど。

DNSSEC 未対応の問題が有るので、その部分について検討中。
解決する目途が立っていないので、もしかするとお蔵入りするかも。

Windows95/98/Me/NT4 では動かないかも。


Revision 4378 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Mar 8 14:19:03 2011 UTC (13 years ago) by maya
File length: 27254 byte(s)
Diff to previous 4367
SSH2 の 圧縮で none を利用できるように修正した。
ソース整理
  鍵形式・KEXプロトコル・MAC・圧縮の名前や関数を取得する関数を作成。
    これにより定義で順序を入れ替えてもよくなった。
  enum に型名を付けた。
  共通の関数を使えるところで使うようにした。

Revision 4367 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Mar 5 14:52:45 2011 UTC (13 years ago) by yutakapon
File length: 27527 byte(s)
Diff to previous 4327
TTSSHの各種暗号設定に関して、teraterm.iniのエントリでカスタマイズできるようにした。
正式なUIに関しては、これから検討する。

KexOrder=56743210
HostKeyOrder=456230
MacOrder=120
CompOrder=012


Revision 4327 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Feb 20 03:29:43 2011 UTC (13 years ago) by maya
File length: 27717 byte(s)
Diff to previous 4324
鍵形式・KEXアルゴリズム・ハッシュアルゴリズムのnid・暗号化方式のnidを変換する部分を関数にした

Revision 4324 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Feb 19 11:07:05 2011 UTC (13 years ago) by maya
File length: 27298 byte(s)
Diff to previous 4321
SSH2 の ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, ecdsa-sha2-nistp521 公開鍵認証をサポートした

Revision 4321 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Feb 19 07:41:41 2011 UTC (13 years ago) by maya
File length: 25588 byte(s)
Diff to previous 4307
SSH2 の ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, ecdsa-sha2-nistp521 ホスト鍵方式をサポートした

Revision 4307 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Feb 15 09:00:01 2011 UTC (13 years ago) by maya
File length: 20946 byte(s)
Diff to previous 4304
鍵の種類を増やせるように整理した
  enum hostkey_type を ssh_keytype にリネームした
機能が重複している構造体・コードを削除した
  CRYPTKeyPair を削除、Key を使うようにした
  key_from_blob を使うようにした

Revision 4304 - (view) (download) (as text) (annotate) - [select for diffs]
Added Mon Feb 14 09:09:07 2011 UTC (13 years ago) by maya
File length: 21083 byte(s)
ssh.c から key.c, kex.c を分割

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.

  Diffs between and
  Type of Diff should be a

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26