0

ここで私の無知を許してください。私はPythonをよく読んでおらず、まったく書くことができません。

CVE-2013-1445 の Python プロジェクトを監査しようとしています。注意が必要なソース ファイルが見つかったと思います (その他の改善の機会の中でも)。ファイルはutil.pyで、次の行があります。

import base64

from Crypto.Hash import HMAC
from Crypto import Random
...

Python crypto docsを見ると、Randomクラスについての言及がありません。hashlibおよびのみhmac:

The modules described in this chapter implement various algorithms of a
cryptographic nature. They are available at the discretion of the
installation. On Unix systems, the crypt module may also be available.
Here’s an overview:

    15.1. hashlib — Secure hashes and message digests
    15.2. hmac — Keyed-Hashing for Message Authentication

...

正確にはどこRandomから来ているのですか?ネイティブですか、それともサードパーティですか?

または、私の質問は、どこCryptoから来ているのでしょうか? サードパーティの場合Crypto、サードパーティのライブラリとクラスが (ネイティブのライブラリとクラスに対して) どのように/どこに含まれているかを判断するにはどうすればよいですか?

完全を期すために、Pythonのスコープと名前空間を理解しようとしましたが、現時点では意味がありません(この質問がおそらく示すように)。たとえば、 or には明らかなスコープや名前空間はありませんCrypto(の一部であるRandom以外RandomCrypto)。

前もって感謝します。

4

2 に答える 2