基于最弱前置条件的程序鲁棒性分析
在当今数字化的时代,程序的安全性和鲁棒性至关重要。尤其是在面对各种攻击时,如何确保程序不会泄露过多的私密信息,是一个亟待解决的问题。本文将深入探讨如何通过最弱前置条件(Wlp)的方法来分析和增强程序的鲁棒性。
1. 计算最大信息泄露
在存在不公平攻击的情况下,计算程序最大的私密信息泄露量是评估程序安全程度的关键。这能帮助程序员了解在最坏情况下程序的表现,即当攻击者插入最具危害的不公平代码时会发生什么。
1.1 观察输入 - 输出
为了认证程序的安全程度,即使在存在主动攻击者的情况下,计算最大的私密信息泄露量也非常重要。攻击者可以在固定点插入代码(公平或不公平),从而改变程序的语义,导致不同的主动攻击下泄露的机密信息属性不同。而且,可能的不公平攻击数量可能是无限的,这使得计算所有攻击下泄露的私密信息变得困难。
当考虑有限数量的攻击者时,可以计算每个攻击者泄露的最大信息,然后找到它们的最大下界(glb),以此来表征固定类别的攻击者泄露的最大信息。
示例 1 :考虑程序 P ::= l := h; [•]; ,其中变量 h : HH , l : LL 和 k : HL 。可能的攻击如下:
- Wlp {l := h; [skip], {l = n}} = {h = n}
- Wlp {l := h; [l := k], {l = n}} = {k = n}
超级会员免费看
订阅专栏 解锁全文
11

被折叠的 条评论
为什么被折叠?



