次の例に示すアラート・メッセージは、RFC 2246 で文書化されています (http://www.ietf.org/rfc/rfc2246.txt)。
ERROR read_v3_alert(): SSL V3 alert 46 received from <ip> ERROR
gsk_secure_socket_init(): SSL V3 server handshake failed with ...INFO
default_setsocketoptions(): TCP_NODELAY restored for socket ...EXIT
gsk_secure_socket_init(): <—- Exit status 0x0000019e (414)
ENTRY gsk_strerror():
—-> Thd-0 EXIT gsk_strerror(): <—- Exit status 0x00000000 (0)
| アラート |
説明 |
説明 |
| 0 |
close_notify | このメッセージは、送信側がこの接続上でこれから先はメッセージを送信しないことを受信側に通知します。 警告に相当するレベルの適切な close_notify メッセージを使用せずに接続が終了した場合、セッションを再開することはできません。 |
| 10 |
unexpected_message | 正しくないメッセージを受信しました。このアラートは常にリカバリー不能エラーを示しており、正しい実装環境間での通信中に発生してはなりません。 |
| 20 |
bad_record_mac | このアラートは、正しくない MAC を指定したレコードを受信すると返されます。 このメッセージは、常にリカバリー不能エラーを示しています。 |
| 21 |
decryption_failed | TLSCiphertext の暗号化解除が無効な方法で行われました。長さがブロック長の偶数倍ではなかったか、埋め込み値が検査時に正しくありませんでした。このメッセージは、常にリカバリー不能エラーを示しています。 |
| 22 |
record_overflow | 2^14+2048 バイトを超える長さの TLSCiphertext レコードを受信したか、暗号化解除されて TLSCompressed レコードに格納されたレコードが 2^14+1024 バイトを超えていました。このメッセージは、常にリカバリー不能エラーを示しています。 |
| 30 |
decompression_failure | 解凍機能が、誤った入力を受信しました (例えば、過大な長さに解凍されるデータ)。このメッセージは、常にリカバリー不能エラーを示しています。 |
| 40 |
handshake_failure | handshake_failure アラート・メッセージを受信した場合は、送信側によるネゴシエーションの結果、使用可能なオプションを指定した受け入れ可能なセキュリティー・パラメーターのセットを取得できなかったことを示しています。これはリカバリー不能エラーです。 |
| 41 |
? no_certificate ? |
SSL サポートに問い合わせてください。 |
| 42 |
bad_certificate | 証明書が壊れていたか、正しく検証されない署名を含んでいたか、その他の問題がありました。 |
| 43 |
unsupported_certificate | 証明書がサポートされないタイプのものでした。 |
| 44 |
certificate_revoked | 証明書が署名者によって取り消されました。 |
| 45 |
certificate_expired | 証明書の有効期限が切れているか、証明書が現在は有効ではありません。 |
| 46 |
certificate_unknown | 証明書の処理中に他の何らかの (詳細不明) 問題が発生し、証明書が受け入れ不能になりました。 |
| 47 |
illegal_parameter | ハンドシェークのフィールドが範囲外であったか、他のフィールドと矛盾します。 これは、常にリカバリー不能エラーを示しています。 |
| 48 |
unknown_ca | 有効な証明書チェーンまたは部分チェーンを受信しましたが、CA 証明書が見つからなかった、または既知のトラステッド CA と一致させることができなかったために、証明書は受け入れられませんでした。このメッセージは、常にリカバリー不能エラーを示しています。 |
| 49 |
access_denied | 有効な証明書を受信しましたが、アクセス制御が適用されたときに、送信側がネゴシエーションを中止しました。このメッセージは、常にリカバリー不能エラーを示しています。 |
| 50 |
decode_error | 一部のフィールドが指定された範囲外にあった、またはメッセージの長さが誤っていたために、メッセージをデコードできませんでした。このメッセージは、常にリカバリー不能エラーを示しています。 |
| 51 |
decrypt_error | ハンドシェーク暗号操作に失敗しました。例えば、署名を正しく検証できなかったか、鍵交換の暗号化解除に失敗したか、完了メッセージを検証できませんでした。 |
| 60 |
export_restriction | エクスポート制限に準拠しないネゴシエーションが検出されました。 例えば、RSA_EXPORT ハンドシェーク・メソッドのために 1024 ビットの一時 RSA 鍵を転送しようとした場合です。このメッセージは、常にリカバリー不能エラーを示しています。 |
| 70 |
protocol_version | クライアントがネゴシエーションを試みたプロトコル・バージョンは認識されましたが、サポートされていません。(例えば、セキュリティー上の理由から古いプロトコル・バージョンが拒否される場合があります。) このメッセージは、常にリカバリー不能エラーを示しています。 |
| 71 |
insufficient_security | ネゴシエーション失敗の具体的な理由が、サーバーがクライアントによってサポートされる暗号よりもセキュアな暗号を必要としているためである場合に、handshake_failure の代わりに返されます。このメッセージは、常にリカバリー不能エラーを示しています。 |
| 80 |
internal_error | ピアまたはプロトコルの正しさとは関係のない内部エラーにより、続行が不可能になっています (メモリー割り振り失敗など)。このメッセージは、常にリカバリー不能エラーを示しています。 |
| 90 |
user_canceled | プロトコル障害とは関係のない何らかの理由により、このハンドシェークは取り消されました。 ハンドシェークの完了後にユーザーが操作を取り消す場合は、単に close_notify を送信して接続を終了する方法がより適切です。このアラートの後に、close_notify が発行されます。 このメッセージは、一般には警告です。 |
| 100 |
no_renegotiation | hello 要求への応答としてクライアントから送信されるか、初期ハンドシェークの後にクライアントの hello への応答としてサーバーから送信されます。通常、これらのどちらかが送信されるとネゴシエーションが行われます。 再ネゴシエーションが適切でない場合、受信側は応答としてこのアラートを出します。この時点で、元の要求側は接続を続行するかどうかを決定できます。再ネゴシエーションが適切であるケースの 1 つは、サーバーが要求を満たすためのプロセスを spawn した場合です。プロセスがセキュリティー・パラメーター (鍵の長さ、認証など) を始動時に受け取る場合、それ以降にこれらのパラメーターの変更内容を伝達することは難しい可能性があります。 このメッセージは常に警告です。 |