码迷,mamicode.com
首页 > 其他好文 > 详细

tls加密管道建立流程的一种实现

时间:2019-08-16 21:10:32      阅读:95      评论:0      收藏:0      [点我收藏+]

标签:客户端   多个   fda   payload   turn   握手   生成随机数   生成   struct   

//生成随机数
//设置多个公钥、私钥对,通过客户端来协商确定使用哪对
//生成随机数后,用私钥将其加密生成密文
//再利用base64编码将密文转换成字符串
//最后可以json的格式放置到payload中返回给客户端
//握手协商,利用ostringstream将两个随机字符串生成一个
//md5编码,输出16进制格式的数
//将16进制格式的数转化为字符串
//使用xxtea对称加密来交互数据
string GetRandStr()
{
//生成两个8位数的随机数
struct timeval now;
gettimeofday(&now, NULL);

srand(now.tv_usec);
unsigned int rand1 = (unsigned int)rand();

srand(now.tv_usec + 1);
unsigned int rand2 = (unsigned int)rand();

char buff[17];
sprintf(buff,"%08x%08x",rand1,rand2);

string strRand ;
strRand.insert(0,buff,16);
return strRand ;
}

tls加密管道建立流程的一种实现

标签:客户端   多个   fda   payload   turn   握手   生成随机数   生成   struct   

原文地址:https://www.cnblogs.com/share-ideas/p/11366098.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!