我的答案:
解析:
假设所有口令的长度都是8个字符,并且对于每个字符都有128种不同的选择,这就意味着,共存在128^8=2^56种可能的口令字。 假设口令被存储在一个口令文件中,该口令文件共包含2^10种口令的哈希值,而Trudy则拥有一个包含2^20个通用口令字的字典。 基于上述这些假设,我们来确定在下面4种情况下,能够成功地破解一个口令的概率是多少。 I. Trudy想要确定Alice的口令(也许Alice就是管理员)。Trudy并不使用她自己的口令字典文件。 II. Trudy想要确定Alice的口令。Trudy使用她自己的通用口令字典文件。 III. Trudy满足于破解口令文件中的任何一个口令,不使用她的字典。 IV. Trudy想要找出经过哈希运算的口令文件中的所有口令,并使用她的字典。
情况I:Trudy已经决定就要破解Alice的口令。这时,Trudy好像有点心不在焉,完全忘记了她还有一个口令字典可用。 因为没有使用通用口令字典,Trudy除了强力破解攻击方案之外别无选择。这就和穷举式密钥检索相同,因而可以预计其工作量将是: 2^56/2=2^55 无论是否对口令添加了salt值,这里的结果都一样,除非有人对所有可能的口令字进行提前计算、排序并存储其哈希值。如果所有口令字的哈希值都已知,那么在没有添加salt值的情况下,根本不产生任何工作量——Trudy仅仅需要查找哈希值列表,从而找出对应的口令即可。
情况II:Trudy又一次想要恢复出Alice的口令,并且这次她准备使用自己的通用口令字典。 Alice的口令在Trudy的字典中的概率大约是1/4。假设对口令添加了salt值,而且再假设Alice的口令落在了Trudy的字典当中。那么,Trudy有望在对字典中所有口令字的一半执行完哈希运算后,即经过2^19次尝试就可以找到Alice的口令。对于Alice的口令不在字典中的另外3/4概率的情况,预计Trudy有望经过大约2^55次尝试可以找到正确的口令。综合这些不同的情况,可以给出Trudy的工作量如下式表示:
这里得到的预计工作量几乎与情况I中的相同,那时Trudy并没有使用她的字典。不过,在实践中Trudy的做法会是对她的字典中的所有口令字进行尝试,如果仍然没有找到Alice的口令,那就放弃了。这样,实际的工作量至多会是2^20,而其成功的概率则是1/4。 如果没有对口令添加salt值,Trudy就可以预先对她字典中的所有2^20个口令字进行哈希计算。然后,这个相对开销比较小的一次性工作的结果就能够被Trudy重复利用,也就是说,攻击的次数越多,单次攻击的平均开销就越小。
情况III:在这种情况下,Trudy满足于破解口令哈希文件中所有1024个口令中的任何一个即可。这次Trudy又忘了她的口令字典。 令y0, y1, ... ,y1023分别是这些口令的哈希值。假设文件中的所有2^10个口令各不相同。再令p0, p1, ... , 是所有2^56个可能的口令的列表。在强力破解的情况下,Trudy需要执行2^55次不同的比较,才有望找到一个匹配。
如果没有对口令添加salt值,Trudy可以计算h(p0)并将其与每一个yi进行比较,其中i = 0,1,2, ... ,1023。接下来,再计算h(p1),并再次将其与所有的yi进行比较,依此类推。这里的关键是每执行一次哈希运算都需要Trudy执行2^10次比较。预计的最终开销是: 2^55/2^10=2^45
假定对口令添加了salt值。令si表示针对口令哈希值yi所添加的salt值。那么,Trudy要计算h(p0, s0)并将结果与y0进行对比。接下来,她还要计算h(p0, s1)并将结果与y1进行对比,再计算h(p0, s2)并将结果与y2进行对比,如法炮制直至h(p0, s1023)。然后,Trudy必须将p0替换为p1,再重复执行上述整个过程,之后使用p2替换p1再执行该整个过程,依此类推。这种操作方式的基本特点是,每一次哈希运算仅产生一次对比,所以可预计的工作量是2^55,这和上面的情况I结果相同。
这种情况说明了对口令添加salt值的好处。但是,Trudy这时并没有使用她的口令字典,实际上这是不可能的。
我的答案:
a.系统A更安全,因为A的错误接受率更低。
b.系统B更具有用户友好性,因为B的错误拒绝率更低。
c.选择系统B,因为它更具有用户友好性。
我的答案:
错误接受率:假定Bob冒充是Alice,并且系统错误地将Bob认证为Alice。类似这种错误认证的情况发生的几率就是所谓的错误接受率。
错误拒绝率:假设Alice尝试认证她自己,但是系统并没有给予她认证通过。类似这种错误情况的发生率就是所谓的错误拒绝率。
等错误率:就是指在错误接受率和错误拒绝率相同情况下的错误率。也就是说,通过对系统参数进行调整,直到错误接受率和错误拒绝率能够达到一种恰好平衡的水平。对于比较各种不同生物特征系统的性能,这是个非常有用的测量指标。
我的答案:
优点:完整性、不可抵赖性以及Bob代表Alice行事的权力是有时间限制的。
缺点:它更复杂,出错的机会也更多。
我的答案:
意味着一个人只知道工作所需要的东西。在其他方面,除非必要,你不能访问一些信息,即使你有适当的权限,隔间是执行这一原则的主要手段,因为你是不允许看到分类信息的,除非你特别指定了允许进入适当的隔间。
a、 高水印原则意味着你开始在一个低水平的间隙,你的有效的许可证会根据需要升级——达到你的最高等级允许。低水印原则适用于完整性,这意味着完整性级别下降到读取的数据的完整性级别。
b、 具有弱宁静性的BLP模型与高水印原则兼容。
c、Biba的模型与低水印兼容。
我的答案:
a. S=(0.05-0.1)^2+(0.25-0.38)^2+(0.25-0.364)^2+(0.45-0.156)^2=0.118832
因为0.118832>0.1,所以Alice行为不正常。
b. H0=0.2·0.05+0.8·0.1=0.09
H1=0.2·0.25+0.8·0.38=0.354
H2=0.2·0.25+0.8·0.364=0.3412
H3=0.2·0.45+0.8·0.156=0.2148