python - CCKeyDerivationPBKDF 线程安全吗?

标签 python c concurrency pbkdf2 commoncrypto

我正在使用 CCKeyDerivationPBKDF 在并发环境中生成和验证密码哈希,我想知道它是否线程安全。该函数的文档根本没有提到线程安全,因此我目前使用锁是为了安全起见,但如果不需要,我宁愿不使用锁。

最佳答案

查看CCKeyDerivationPBKDF()的源代码后,我发现它是“线程不安全”。虽然CCKeyDerivationPBKDF()的代码使用了许多线程安全的库函数(例如:bzero),但大多数用户定义的函数(例如:PRF code>) 以及从这些用户定义函数调用的底层函数可能是线程不安全的。 (例如,由于使用多个指针和不安全的内存转换,例如在CCHMac中)。我建议除非他们使所有底层函数都是线程安全的,或者有某种机制可以使其有条件地线程安全,否则坚持您的方法,或者修改 commoncrypto 代码以使其线程安全,并且使用该代码。

希望有帮助。

关于python - CCKeyDerivationPBKDF 线程安全吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14072428/

相关文章:

python - Plotly 不显示轴标签或标题

将语句分隔符更改为 ; 以外的其他内容与#define

go - 处理 "too many open files"的最佳方法是什么?

python - 如何使用 lxml Python(来自 .XML 文件)有效解析特定行?

python - NumPy 的 loadtxt() 和 genfromtxt 的 'dtype' 有哪些可用数据类型?

python - 外键模型的django计数

c - for 循环比较中什么更快?

java - JNI : Native library requires void*, 如何将 jbytearray 转换为 C void*

java - 并发-如何启动一个线程,然后启动另一个线程,并且当线程 2 运行时第一个线程保持运行?

java - CopyOnWriteArrayList 内部状态是暂时的