我想调查和研究python 3.7的代码os.urandom()
功能。
我查看了各自的标准库os.py
,但它既没有在那里定义,也没有在那里导入。
我还尝试 grep 查找定义:
/usr/lib/python3.7 $ grep -rFl "def urandom" 2> /dev/null
但什么也没有。
我怀疑 os.urandom() 发生了一些神奇的事情。
在哪里可以找到用于研究和密码分析的函数定义?
定义了很多名称os
模块由处理Modules/posixmodule.c,无论是在 POSIX 系统还是在 Windows 上。请注意,源代码位于C,而不是Python,因为访问系统函数需要本机代码。
你可以看到这是os.py源代码,它要么导入posix
or nt
基于当前操作系统,这两个名称都是从上面编译而来的posixmodule.c
文件,但被重命名以更好地反映平台并表明两个变体之间的功能不同(nt
变体提供较少的功能)。
See the os_urandom_impl()功能的实施细节os.urandom()
。这委托给一个内部函数,_PyOS_URandom()
,它与 Python 启动过程早期所需的其他辅助函数一起定义在Python/bootstrap_hash.c.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)