作业5 身份认证
题目:
今天校园里到处是快递小哥,同学们也经常帮别人取快递,快递小哥不会很细致的核实身份,就允许代领,存在很多不安全因素。
设计一款基于手机的app,用于快递小哥验证身份,顾客领取快递。具体认证方法不限,简单易行。
(1)给出:app包含哪些部分(可加图示),每部分的功能;
(2)模仿kerberos的写法,描述交互过程,并加说明。
解答:
(1)app包含部分:
取件人客户端:查看快递信息,生成并发送取件密匙,和快递员联系;
快递员客户端:接收取件人信息及取件密匙,和取件人联系;
(2)交互过程
C——顾客(customer)
D——快递员(deliver)
S——平台(server)
1)顾客和快递员登录平台验证身份
C->S:password||account
D->S:password||account
2)平台给快递员和顾客发送订单信息
S->D:ticket_D||order||lifetime #各自的密钥和订单信息和时间限制
S->C:ticket_C||order||lifetime
3)快递员发送取件码给顾客
D->S:ticket_D||command #快递员将取件码发给平台,通过密钥验证身份
S->C:command||lifetime #平台转发给顾客,取件有时间限制
4)快递员确认派送完毕,用户确认收货完毕
D->S:ticket_D||over #快递员向平台发送确认派送完毕,通过密钥确认身份
C->S:ticket_C||over #顾客向平台发送确认收货,通过密钥确认身份
S->D:safeover #平台向双方确认完毕
S->C:safeover