⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 encrypttran.cpp

📁 一个自己封装的,网络传输,纯C的,还有封装的RSA加算法!
💻 CPP
字号:
//EncryptTran.cpp

#include <iostream>
#include "EncryptTran.h"
#include "RsaA.h"

//构造
CEncryptTran::CEncryptTran()
{
}
//析构
CEncryptTran::~CEncryptTran()
{
}
//加密数据
void CEncryptTran::EncryptData()
{
	//	秘钥产生函数
	CRsaA rsa;
//	rsa.GenKeys(m_strPublicKey,m_strPrivateKey,m_strR);

	
}
//解密数据
void CEncryptTran::DecryptData()
{
}

//初始化连接
bool CEncryptTran::InitializeConnect()
{
	struct sockaddr_in my_addr; /* 本机地址信息 */ 
	struct sockaddr_in client_addr; /* 客户端地址信息 */ 

	listensocket=socket(AF_INET, SOCK_STREAM, 0);
	if(listensocket==-1)	return false;
	my_addr.sin_family=AF_INET; 
	my_addr.sin_port=htons(PORT); //端口
	my_addr.sin_addr.s_addr = INADDR_ANY; 
//	bzero(&(my_addr.sin_zero),8); 
	if(bind(listensocket, (struct sockaddr *)&my_addr, sizeof(struct sockaddr)) == -1) return false;

	if (listen(listensocket, 10) == -1) return false;
	while(1) 
	{
		int sin_size = sizeof(struct sockaddr_in); 
		if ((transocket = accept(listensocket, (struct sockaddr *)&client_addr, &sin_size)) == -1)
		{
			continue; 
		}
	}
		return true;
}

//发送数据
bool CEncryptTran::SendData(char *data)
{
	if (send(transocket,data, sizeof(*data), 0) == -1) 
		return false;
	return true;
}
//连接到服务器
bool CEncryptTran::ConnectToServer(char * ip)
{
	struct sockaddr_in serv_addr;
	if ((clientsocket = socket(AF_INET, SOCK_STREAM, 0)) == -1)
	{ 
		return false; 
	}
	serv_addr.sin_family = AF_INET; 
	serv_addr.sin_port = htons(PORT); 
	serv_addr.sin_addr.S_un.S_addr = inet_addr(ip); 
	if (connect(clientsocket, (struct sockaddr *)&serv_addr, sizeof(struct sockaddr)) == -1)
	{
		return false;
	}
	return true;
}

//接收数据
bool CEncryptTran::ReciveData()
{
	char buf[1024]; 
	int recvbytes=0;
	if ((clientsocket = socket(AF_INET, SOCK_STREAM, 0)) == -1)
	{ 
		return false; 
	}
	do
	{
		if ((recvbytes=recv(clientsocket, buf, 1024, 0)) ==-1)
		{ 
			return false; 
		} 
		//对接收到的数据处理
		//数据buf,长度1024
		//......


	}while(recvbytes!=0);

	//close(clientsocket); 
	return true;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -