powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Пишу почтового клиента по SMTP протоколу. Чем шифровать логин и пароль ?
7 сообщений из 7, страница 1 из 1
Пишу почтового клиента по SMTP протоколу. Чем шифровать логин и пароль ?
    #38545612
gera3323
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Логин и пароль должны быть зашифрованы перед пердачей на сервер. какой функцией их шифровать ?
...
Рейтинг: 0 / 0
Пишу почтового клиента по SMTP протоколу. Чем шифровать логин и пароль ?
    #38545616
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А как сервер расшифрует?
...
Рейтинг: 0 / 0
Пишу почтового клиента по SMTP протоколу. Чем шифровать логин и пароль ?
    #38545623
gera3323
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
#define SPLICE( Msg, Command )      Msg##Command

 void CNet::ToMail()
 {

	
	 //m_szUserIP[ 20 ];

	const char *smtp_address = "smtp.mail.ru";
	const int   smtp_port    = 25;

	int iLenMsg = 0;

	hostent *host = gethostbyname( smtp_address );

	  if( host == NULL ) {
		  cerr<<"Error getting SMTP address";
		  return;
	  }

	  bool bBadSocket = false;
		 
	  sockaddr_in SmtpSocket;
	  memset( &SmtpSocket, 0, sizeof(sockaddr_in) ); 

	  SmtpSocket.sin_family      = AF_INET;
	  SmtpSocket.sin_port        = htons(smtp_port);
	  SmtpSocket.sin_addr.s_addr = *(DWORD*)host->h_addr_list[0];

	  SOCKET sListen = socket( AF_INET, 
		                       SOCK_STREAM, 0 );

	   if( FAILED( sListen ) )
		   bBadSocket = true;

	   if( FAILED(connect( sListen, reinterpret_cast<sockaddr*>(&SmtpSocket), sizeof(sockaddr_in))))
		   bBadSocket = true;

	   if( bBadSocket ) {
		   cerr<<"Error connect to smtp mail";
		   return;
	   } else 
		   cerr<<"Success connect to smtp mail\n";
	   
	 char szMessage[ 500 ];

	 //*************************
	 iLenMsg = recv( sListen, szMessage, sizeof( szMessage ), 0 );
	 szMessage [ iLenMsg ] = '\0';
	 cout<<szMessage;
	 //*************************
	 send( sListen, SPLICE( "HELO ", "smtp.mail.ru\r\n" ), strnlen_s(SPLICE( "HELO ", "smtp.mail.ru\r\n" ),100) ,0 );
	 iLenMsg = recv( sListen, szMessage, sizeof( szMessage ), 0 );
	 szMessage [ iLenMsg ] = '\0';
	 cout<<szMessage;
	 //*************************
	 send( sListen, SPLICE( "AUTH LOGIN", "\r\n" ), strnlen_s(SPLICE( "AUTH LOGIN", "\r\n" ),100) ,0 );
	 iLenMsg = recv( sListen, szMessage, sizeof( szMessage ), 0 );
	 szMessage [ iLenMsg ] = '\0';
	 cout<<szMessage;
	 //*************************
	 send( sListen, SPLICE( "mylogin", "\r\n" ), strnlen_s(SPLICE( "mylogin", "\r\n" ),100) ,0 );
	 iLenMsg = recv( sListen, szMessage, sizeof( szMessage ), 0 );
	 szMessage [ iLenMsg ] = '\0';
	 cout<<szMessage;
	 //*************************
	 send( sListen, SPLICE( "mypassword", "\r\n" ), strnlen_s(SPLICE( "mypassword", "\r\n" ),100) ,0 );
	 iLenMsg = recv( sListen, szMessage, sizeof( szMessage ), 0 );
	 szMessage [ iLenMsg ] = '\0';
	 cout<<szMessage;
	 //*************************
	 send( sListen, SPLICE( "MAIL FROM:", "XXXX@mail.ru\r\n" ), strnlen_s(SPLICE( "MAIL FROM:", "XXXX@mail.ru\r\n" ),100) ,0 );
	 iLenMsg = recv( sListen, szMessage, sizeof( szMessage ), 0 );
	 szMessage [ iLenMsg ] = '\0';
	 cout<<szMessage;
	 //*************************
	 send( sListen, SPLICE( "RCPT TO:", "XXXX@mail.ru\r\n" ), strnlen_s(SPLICE( "RCPT TO:", "XXXX@mail.ru\r\n" ),100) ,0 );
	 iLenMsg = recv( sListen, szMessage, sizeof( szMessage ), 0 );
	 szMessage [ iLenMsg ] = '\0';
	 cout<<szMessage;
	 //*************************
	 send( sListen, SPLICE( "DATA", "\r\n" ), strnlen_s(SPLICE( "DATA", "\r\n" ),100) ,0 );
	 iLenMsg = recv( sListen, szMessage, sizeof( szMessage ), 0 );
	 szMessage [ iLenMsg ] = '\0';
	 cout<<szMessage;
	 //*************************
	 send( sListen, SPLICE( "fdsfdsfds", "\r\n.\r\n" ), strnlen_s(SPLICE( "fdsfdsfds", "\r\n.\r\n" ),100) ,0 );
	 iLenMsg = recv( sListen, szMessage, sizeof( szMessage ), 0 );
	 szMessage [ iLenMsg ] = '\0';
	 cout<<szMessage;
	 //*************************
	 send( sListen, SPLICE( "\r\n.\r\n", "" ), strnlen_s(SPLICE( "\r\n.\r\n", "" ),100) ,0 );
	 iLenMsg = recv( sListen, szMessage, sizeof( szMessage ), 0 );
	 szMessage [ iLenMsg ] = '\0';
	 cout<<szMessage;
	 //*************************
	 send( sListen, SPLICE( "QUIT", "\r\n" ), strnlen_s(SPLICE( "QUIT", "\r\n" ),100) ,0 );
	 iLenMsg = recv( sListen, szMessage, sizeof( szMessage ), 0 );
	 szMessage [ iLenMsg ] = '\0';
	 cout<<szMessage;

	// cout<<"Mail success";
	closesocket( sListen );
 }



вот код. WSAStartup в другом месте
...
Рейтинг: 0 / 0
Пишу почтового клиента по SMTP протоколу. Чем шифровать логин и пароль ?
    #38545624
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
gera3323,
Плевать на код.
Открой описание SMTP и найди там главу описывающую шифрование пароля.
Все.
Сразу узнаешь какой функцией надо его шифровать.
...
Рейтинг: 0 / 0
Пишу почтового клиента по SMTP протоколу. Чем шифровать логин и пароль ?
    #38545627
gera3323
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White Owl, не могу найти
...
Рейтинг: 0 / 0
Пишу почтового клиента по SMTP протоколу. Чем шифровать логин и пароль ?
    #38545633
gera3323
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно ли вообще без авторизации отослать сообщение ?
...
Рейтинг: 0 / 0
Пишу почтового клиента по SMTP протоколу. Чем шифровать логин и пароль ?
    #38545665
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
gera3323,

Чего ты не можешь найти? RFC? Или соответвующую главу в нем?
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Пишу почтового клиента по SMTP протоколу. Чем шифровать логин и пароль ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]