Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Пишу почтового клиента по SMTP протоколу. Чем шифровать логин и пароль ? / 7 сообщений из 7, страница 1 из 1
31.01.2014, 19:11
    #38545612
gera3323
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пишу почтового клиента по SMTP протоколу. Чем шифровать логин и пароль ?
Логин и пароль должны быть зашифрованы перед пердачей на сервер. какой функцией их шифровать ?
...
Рейтинг: 0 / 0
31.01.2014, 19:15
    #38545616
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пишу почтового клиента по SMTP протоколу. Чем шифровать логин и пароль ?
А как сервер расшифрует?
...
Рейтинг: 0 / 0
31.01.2014, 19:25
    #38545623
gera3323
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пишу почтового клиента по SMTP протоколу. Чем шифровать логин и пароль ?
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
31.01.2014, 19:28
    #38545624
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пишу почтового клиента по SMTP протоколу. Чем шифровать логин и пароль ?
gera3323,
Плевать на код.
Открой описание SMTP и найди там главу описывающую шифрование пароля.
Все.
Сразу узнаешь какой функцией надо его шифровать.
...
Рейтинг: 0 / 0
31.01.2014, 19:30
    #38545627
gera3323
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пишу почтового клиента по SMTP протоколу. Чем шифровать логин и пароль ?
White Owl, не могу найти
...
Рейтинг: 0 / 0
31.01.2014, 19:40
    #38545633
gera3323
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пишу почтового клиента по SMTP протоколу. Чем шифровать логин и пароль ?
Можно ли вообще без авторизации отослать сообщение ?
...
Рейтинг: 0 / 0
31.01.2014, 20:32
    #38545665
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пишу почтового клиента по SMTP протоколу. Чем шифровать логин и пароль ?
gera3323,

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


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