The enormous amount of code required to design modern hardware implementations often leads to critical vulnerabilities being overlooked. Especially vulnerabilities that compromise the confidentiality of sensitive data, such as cryptographic keys, have a major impact on the trustworthiness of an entire system. Information flow analysis can elaborate whether information from sensitive signals flows towards outputs or untrusted components of the system. But most of these analytical strategies rely on the non-interference property, stating that the untrusted targets must not be influenced by the source's data, which is shown to be too inflexible for many applications. To address this issue, there are approaches to quantify the information flow between components such that insignificant leakage can be neglected. Due to the high computational complexity of this quantification, approximations are needed, which introduce mispredictions. To tackle those limitations, we reformulate the approximations. Further, we propose a tool QFlow with a higher detection rate than previous tools. It can be used by non-experienced users to identify data leakages in hardware designs, thus facilitating a security-aware design process.
翻译:设计现代硬件实施所需的大量代码往往导致人们忽视严重的薄弱环节,特别是影响敏感数据(例如加密钥匙)保密性的脆弱性,对整个系统的可信度有重大影响。信息流分析可以说明敏感信号的信息是否流向产出或系统中不受信任的组成部分。但是,这些分析战略大多依靠的是不干涉属性,指出不受信任的目标不应受到源数据的影响,这种数据对许多应用来说过于僵硬。为了解决这一问题,有办法量化各种组成部分之间的信息流动,例如微不足道的渗漏,从而可以忽略。由于这种量化方法在计算上非常复杂,需要近似,从而造成错误。为了克服这些限制,我们重新配置近似值。此外,我们建议使用一种工具QFlow,其探测率高于以前的工具。非经验型用户可以使用它来识别硬件设计中的数据渗漏,从而便利安全意识设计过程。