在此任务中,我们将向服务器发送一个正常请求,这样我们可以看到服务器如何响应该请求。我们要发送的请求如下:
http://www.seedlab-hashlen.com/?myname=<name>&uid=<need-to-fill>
&lstcmd=1&mac=<need-to-calculate>
要发送这样的请求,除了使用我们的真实姓名外,我们需要填写两个缺少的参数。学生需要从 LabHome 目录中的 key.txt 中选择一个 uid 号。该文件列出了每个 uid 的密钥。学生可以使用任何 uid 及其关联的密钥。例如,学生可以使用 uid 1001 及其密钥 123456。
缺少的第二个参数是 MAC ,先将密钥与请求 R} 的内容(仅参数部分)连接起来,其之间用冒号分开。请参见以下示例:
Key:R = 123456:myname=JohnDoe&uid=1001&lstcmd=1
然后使用以下命令计算 MAC :
$ echo -n "123456:myname=JohnDoe&uid=1001&lstcmd=1" | sha256sum
7d5f750f8b3203bd963d75217c980d139df5d0e50d19d6dfdb8a7de1f8520ce3 -
这样我们就可以构造完整的请求,然后使用浏览器将其发送到服务器程序:
http://www.seedlab-hashlen.com/?myname=JohnDoe&uid=1001&lstcmd=1
&mac=7d5f750f8b3203bd963d75217c980d139df5d0e50d19d6dfdb8a7de1f8520ce3
任务。请向服务器发送下载命令,并显示可以获得结果。