•在图1(a)中所示的基于对称的对称加密方案中,将消息及其哈希码串联在一起形成一个复合消息,然后将其加密并放在电线上。接收器解密了消息并将其标签分开,然后将其与从接收到的消息中计算出的哈希码进行比较。HashCode提供了对文档的身份验证 - 文档身份验证的意义是我们可以确定它与最初创建的相同 - 并且加密提供了确定性。[什么
2。基于我在课堂上提供的用户名和哈希密码的简单方案,以及您自己忘记密码的经验,描述用户忘记他/她的密码并单击登录页面上的“忘记密码”链接时通常会做什么。以一个简单的情况,网络服务器将新(随机生成的)密码发送给用户。3。假设您可以窃取带有用户名和哈希密码的系统文件,并假设您知道用于密码的哈希功能。这会让您访问系统上的用户帐户吗?4。假设您知道某人的登录名,并且知道一个与他们的密码不同的密码,但是其他密码具有与密码相同的哈希值。这是否可以让您登录他们的帐户?5。假设您使用开放的哈希(链接),并插入以下键:5、28、19、15、20、33、12、17、10和m = 9。为简单起见,在这里我们没有将密钥与其哈希码区分开,因此我们假设H(key)=键。发生碰撞发生哪些插槽?6。现在假设您使用线性探测使用封闭的散列,并且插入了与上面相同的键。发生的碰撞比上一个问题发生的更多。碰撞在哪里发生,钥匙最终到达哪里?7。Java具有一个称为Hashset 的类,用于表示E类型E类型的对象。Ashset使用E类E类的HashCode()方法和Hashmap 使用k类HashCode()类方法和两者都使用hash表。在每种情况下,在哈希表存储桶中存储了什么?8。(假设打开哈希,即链接列表。)对于二次探测,请注意,如果m = 2500,则二次步骤大小将导致步骤i = 50的“自碰撞”,因为i*i = 50*50 =2500。但是,课堂上给出的结果表明,直到i = m/2,第一次自我碰撞才会发生。这似乎是一个矛盾。这个论点有什么问题?9。[1月18日更新]这个问题假设您在基本概率理论中具有一些背景。假设n键是随机选择的,哈希函数在{0,1,…,M-1}上随机分配键。