作业6
l 模块及功能:
|
身份建立模块 |
通过注册和登录确定用户是人而不是机器,防止机器刷票 |
|
身份更新模块 |
更新自己的身份,是投票人还是被选人,分别给予不同权限 |
|
参与投票模块 |
参与服务器上的投票,不投票即为弃权 |
|
新建投票模块 |
新建投票项目 |
|
安全加密模块 |
对传输数据进行加密,保证不会被窃取 |
l 认证协议:
采用Needham-Schroeder公钥认证。服务器首先需要通过邮箱或者手机核实这是一个真人,然后允许其注册账号,并为该用户生成完全独立而保密的私钥和对应的公钥。用户在登录时,服务器给用户一个明文挑战消息,用户接收到挑战后,用自己的私钥对挑战明文消息加密,称为签名。然后用户将签名信息反馈给服务器,服务器用该用户的公钥尝试解密,即验证签名,来确定此用户的合法身份。
l 保护隐私:
我们在注册过程中给用户分配了用于验证身份的,完全保密的私钥。使用这个私钥加密,并在安全信道中通信,其它人就无法获取投票的信息了。但是仅仅如此还不够,因为系统管理员可以通过解密看到某个用户的投票信息。那么进行双重加密,用户自己设置自己的二重私钥,会通过安全信道储存到服务器中,但不对所有人公开查看权限,只有系统能对用户的信息解码并计算投票结果。
l 避免伪造:
已经提到,每个用户有独立的,保密的私钥,而系统有对应的公钥,只要保证收到的投票信息能被对应公钥+二重私钥解读即可。只要是能被正常解读的信息,必定是经过了正常登录注册流程的用户,不存在被伪造的可能性。
分类: 信息安全概论课作业

浙公网安备 33010602011771号