According to OWASP:会话标识符必须是唯一的。它们还必须不可预测,以减少猜测攻击,并足够长,以减轻蛮力攻击。 但是,如果标识符经过加密签名并存储在适当保护的cookie中,该怎么办?那么也许一个简单的计数器就可以作为标识符。这将确保唯一性。但是签名能缓解这些攻击吗? 我之所以这样问,是因为随机标识符生成似乎为漏洞和挂起的系统留下了可能性(必须在找到唯一的标识符之前生成标识符)。
我必须使用验证密钥保护用Java编写的应用程序,密钥应该只在指定的PC上工作,因此,例如,应用程序应该基于唯一标识符(例如:硬盘序列号、MainBoard序列号等)生成机器ID序列号;然后,基于该唯一标识符,另一个程序将生成验证密钥。我已经在一个生成机器标识符的.NET应用程序上实现了一个类似的激活系统,从WMI获取硬件序列号,我如何在Java中获得这个值?该解决方案应在Windows、Linux和Mac Os X上独立运行。如何在Java中检索机器的