【发布时间】:2017-07-25 14:13:51
【问题描述】:
为了比较两个字符串,我目前使用 strcmp 或其变体之一。但是,因为如果匹配更多字符,strcmp 会花费更长的时间,因此很容易受到定时攻击。 Windows上的标准库中是否有常量时间字符串比较函数?
【问题讨论】:
-
限制最大字符串长度并用零填充,同时在固定循环中累积差异可能?或者我想您可能会尝试计算字符串的加密哈希摘要并进行比较,以免泄露有关预先计算的数据库密钥内容的边带信息。我不知道如何有效地取消 Windows 上稀有字符串的缓存/分页效果。
标签: string security winapi constant-time