Get_key.c模块流程

  本模块是用来建立与TA端的通信,首先从命令行传入用户名和密码,然后传给TA端,TA端返回用来身份认证的信息,client端保存在本地,以用户名作为文件名。

1.调用get_sec_param(&client_info),将用户名密码传递给TA,TA返回信息。

   1.1  使用socket通信,第一步建立连接   connect_serv()

   1.2  调用creat_params(),该函数调用了Diffman.c里面的两个函数

   1.3   然后send里面,先将用户名与密码传递给TA端,然后得到一个 Public value。给TA,收到的应该是证书一类,对安全的只是不是很懂。

   1.4   creat_Session_Key_C()这个是创建协商秘钥,TA端用来加密,Client端收到的信息需要调用sessionkey来解密,才能收到正确的数据。

   1.5   然后接受到证书。

   1.6   调用aes的函数,解密。 将创建的安全参数结构体  sec_param返回给调用处。

      这里应该得到了完整的数字证书一类的。

2  调用save_sign_key(user_name,sec_param),这里sec_param就是上面一个函数的结果。

这个函数的作用就是将上面得到的这些数字证书一类的保存起来。文件名就是用户名。创建一个这样的文件。

 

Get_key.c模块结束。

posted on 2014-02-21 13:44  ″ Jerry。  阅读(258)  评论(0编辑  收藏  举报