0
PythonのTLSliteライブラリから公開鍵をロードしたいと思います。Pythonでロード可能な公開鍵を作成するTLSLite parseAsPublicKey
キーは限り形式が一般的であるように、私たちが好きなように作成することができます - これまでのところ、私は、OpenSSLのコマンドラインツールで作成したPEMキーを使用しています。その後、
openssl genrsa 2048 > private.pem
そして:
-----BEGIN PUBLIC KEY-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCw0zAfn11dltN7b3HL+vDsp+oS
rhwAYPjtpMtsdKp7/i5fCf2oAo2wSBPfjM7q9DAZgPrnlzDYldIZ5MooUL2EJ59c
6TRQN/2pBeE59nzvRif1DSgWgZhK7mvjo4YtLS10eqOxY5A8VVyKmNzQ15ILbYwg
8ZwXoiMJJPECmt0iswIDAQAB
-----END PUBLIC KEY-----
キーがロードされます:
openssl rsa -in private.pem -pubout > public.pem
はここでの結果です
from libs.tlslite.utils import keyfactory
pubkey = open('public.pem').read()
keyfactory.parsePEMKey(pubkey, private=False)
ただし、これはSyntaxErrorで失敗します。改行の削除、ダッシュの間の文字列の部分のみの使用などはすべて失敗します。
私はGoogle AppEngineを使用しているため、別の一般的なキーフォーマットを使用しても大丈夫ですが、TLSLiteまたは別の純粋なPythonソリューションでファイルを読み取る必要があります。
あなたのコードの少しを投稿してもらえますか?あなたが投稿した2つの行は、現在、お互いに関連しているようには見えません。その 'keyfactory.parsePEMKey'呼び出しで' pubkey'を使うべきですか? – kwatford
@kwatford - 良い点 - 私はそれに応じてサンプルコードを修正しました – mikemaccana