2016-12-09 6 views
1

私はOpenSSLの薄いラッパーであるPyOpenSSLを使って、Pythonプログラムによって証明書に「サブジェクトディレクトリ属性」という拡張子を追加しています。拡張子名「subjectDirAttrs」と「subjectDirectoryAttributesは」試されてきたが、エラーが発生します。OpenSSLは「サブジェクトディレクトリ属性」の拡張機能をサポートしていますか?

"OpenSSL.crypto.Error: [('X509 V3 routines', 'DO_EXT_NCONF', 'unknown extension name'), ('X509 V3 routines', 'X509V3_EXT_nconf', 'error in extension')]". 

PyOpenSSLは、OpenSSLのラッパーであるため、誰もがそれを明確にOpenSSLが拡張をサポートしているかどうか「サブジェクトディレクトリ属性」ことを確認することができますし、 OpenSSLがそれをサポートしていれば、プログラミングの正しい名前は何ですか?

もう1つの質問は、PyOpenSSLによる証明書に拡張子「証明書ポリシー」を追加すると、次のようにエラーが報告されることです。

"OpenSSL.crypto.Error: [('X509 V3 routines', 'DO_EXT_NCONF', 'no config database'), ('X509 V3 routines', 'X509V3_EXT_nconf', 'error in extension')]" 

設定データベースとは何ですか? /usr/local/ssl/openssl.cnfを参照していますか?どのようにPyOpenSSLによって証明書に拡張子 '証明書ポリシー'を追加するためにそれを使用するのですか? 多くの感謝!

答えて

0

OpenSSLは拡張子「サブジェクトディレクトリの属性」をサポートしていますか?

これは種類によって異なります。 OpenSSLはそれらを持つ証明書で動作することができます。つまり、存在していれば、「サポートされていない」エラーで失敗しないことを意味します。問題は、ユーザプログラムのために解析するのに利用できるものがないことです。独自の解析ロジックをロールバックする必要があります。

OpenSSLユーザーメーリングリストのHow to parse Subject Directory Attributes Extension?も参照してください。スレッドは、それらを解析するためのいくつかの提案を提供します。こちらのスレッドからです:

  • 「誰かがASN1解析するコードを記述する必要がありますOpenSSLの内のすべての場所の上に例がありますが、様々なd2i_XXXとi2d_XXX機能を参照してください作るために利用可能なマクロ/定義のがあります。仕事は簡単だが、実際には文書化されていない」タイプがX509_NAME_ENTRYではなく、X509_ATTRIBUTEと拡張 は属性のSEQUENCEであるよう

  • は」検索します。我々は、特定の 型IIRCとして直接対応していないが、追加することは難しいことではありません1つはちょうど GENERAL_NAMEのSEQUENCEであるGENERAL_NAMESのために行われていることに従います...カスタム拡張を追加するか、 エクステンションのコンテンツから構造を解析することができます。

関連する問題