gpt4 book ai didi

asp.net - HMACSHA1.ComputeHash() 线程安全问题

转载 作者:行者123 更新时间:2023-12-04 16:30:45 25 4
gpt4 key购买 nike

我在问自己,在 asp.net 页面的代码隐藏上使用包含 HMACSHA1 实例的静态(共享)变量是否会很危险。问题在于,在同一个 asp.net 页面上处理多个同时请求时,所有 asp.net 工作进程线程都将使用相同的 HMACSHA1 实例。
ComputeHash() 使用/修改的所有 (HMACSHA1) 实例和 ComputeHash() 方法变量将被所有线程共享(= 可以修改)?!这个假设正确吗?
结果 ComputeHash 的返回值不能保证是正确的?!?!
因此我不允许在所有 asp.net 线程上使用静态/共享 HMACSHA1 实例..

我只是想知道你对这个问题的看法。

解决这个问题的唯一方法是 ComputeHash() 方法中的关键路径等。但这“超出了我们的能力范围”..

问候,
克里斯

最佳答案

我刚从 SHA256Cng.ComputeHash 中得到一个未知的加密异常,在一个四核 HT cpu 上运行 8 或 16 个并行任务时执行哈希计算。

在 ComputeHash 周围添加锁定语义解决了这个问题——所以看起来至少 SHA256Cng 版本不是线程安全的。

关于asp.net - HMACSHA1.ComputeHash() 线程安全问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/569683/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com