作业6 访问控制
功能:
注册登录:平台注册登录
报名:用户报名参加选举
投票:用户进行匿名投票
结果公示:统计公布选举结果
认证协议:
采用Kerberos协议进行认证,
Kerberos协议中的第一阶段和第二阶段为用户注册/登录的过程,即用户与认证服务器AS之间进行身份验证服务交换,用AS给的票据访问TGS获得访问相应模块的票据。
身份认证:用户通过Kerberos服务获得ticket,并在注册或登录过程中使用服务器的公钥加密信息后发送给服务器。
服务器确认身份:服务器私钥解密,经注册或登录模块的处理,回应用用户的公钥加密的ticket。
确认身份:用户接收到后用自己私钥解密,完成注册或登录过程,确认有效用户。
保证隐私不被别人得到:
使用基于角色的访问控制模型,将访问权限分配给一定的角色,根据前面的认证协议,判断该用户是否具有访问投票来源和统计结果等信息的权限,实现只有投票主办方有权确认投票来源和未发布的选举结果统计的功能。
仍然是使用Kerberos服务,不过,在投票时,用户与代理服务器进行身份认证而不直接将信息发送到服务器,而代理服务器与服务器进行身份认证,这样保证了信息交流过程的安全性。
用户C将自己的投票信息先用服务器的公钥加密,再用代理服务器的公钥加密:
KR[KS[Msg]]
保证无法伪造投票:
防止他人伪造用户的方法:
系统可以生成公钥和私钥,并将公钥向用户公开;用户在得到公钥后,投票的具体信息就可以经过公钥加密后再发送给系统;用户只能用私钥解密。
攻击者不能获得私钥故无法破解密文;而系统要回复加密信息给用户需要用户提供的公钥给系统用于加密,用户用自己的私钥来解密;
防止用户个人进行多次投票的方法:
系统在用户进行投票之后对用户的role进行修改,使用户不无法继续投票,确保每人只投一票。

浙公网安备 33010602011771号