ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.

11.02.2008, 18:33
|
|
Постоянный
Регистрация: 05.01.2007
Сообщений: 508
Провел на форуме: 2360904
Репутация:
1393
|
|
Сообщение от KSoniX
ну хотябы блочный шифратор плз
Код:
#include <iostream>
#include <string>
#include <cstdio>
#include <strstream>
#include <conio.h>
using namespace std;
void main()
{
string fname;
strstream strstr;
char xor[20];
FILE* fl1, * fl2;
while(1)
{
cout << "Enter a file to encrypt or decrypt: ";
cin >> fname;
if(cin.good() )
{
cin.ignore(10, '\n');
break;
}
cin.clear();
}
fl1 = fopen(fname.c_str(),"r");
if(!fl1)
{ cout << "ERROR: Could not open file for reading!"; getch(); return; }
while(1)
{
cout << "Enter a file to write to: ";
cin >> fname;
if(cin.good() )
{
cin.ignore(10, '\n');
break;
}
cin.clear();
}
fl2 = fopen(fname.c_str(), "w");
if(!fl2)
{ cout << "ERROR: Could not open file for writing!"; getch(); return; }
while(1)
{
cout << "Enter a code to encrypt with: ";
cin >> xor;
if(cin.good() )
{
cin.ignore(10, '\n');
break;
}
cin.clear();
}
char chr1, chr2;
int xrCount=0;
int xrLen = strlen(xor);
while(1)
{
chr1=fgetc(fl1);
if(chr1==EOF)
{
break;
}
else
{
if( (++xrCount) >=xrLen) xrCount=0;
chr2 = chr1 ^ xor[xrCount];
fputc(chr2, fl2);
}
}
fclose(fl1);
fclose(fl2);
cout << "Encrypted successfully.\nPress any key to continue. ";
getch();
}
|
|
|

11.02.2008, 18:36
|
|
Постоянный
Регистрация: 08.05.2006
Сообщений: 816
Провел на форуме: 1845671
Репутация:
1338
|
|
KSoniX Читай в файл в память\буфер потом банальным ксором (XOR).
|
|
|

11.02.2008, 19:10
|
|
Постоянный
Регистрация: 03.02.2007
Сообщений: 520
Провел на форуме: 1777536
Репутация:
932
|
|
xpicx.narod.ru/nor/normal.htm
Интересный метод.
|
|
|

11.02.2008, 19:11
|
|
Познающий
Регистрация: 17.01.2008
Сообщений: 94
Провел на форуме: 314553
Репутация:
38
|
|
а на других алгоритмах например RC5, RC6
спасибо и за этот код z01b но мне не надо алгоритмом сложения по модулю 2
извиняюсь я забил про хешфункции
Последний раз редактировалось KSoniX; 11.02.2008 в 19:28..
|
|
|

11.02.2008, 19:18
|
|
Постоянный
Регистрация: 16.04.2007
Сообщений: 398
Провел на форуме: 3371897
Репутация:
1462
|
|
MD5 - не шифрование а хеширование ...
|
|
|

11.02.2008, 19:20
|
|
Познающий
Регистрация: 20.01.2008
Сообщений: 65
Провел на форуме: 664107
Репутация:
25
|
|
скиньте кто то примерный код коннекта к к сайту на проверку его существования)
Ну допустим если вводиш ссылку оно конектитса и выводит слово "пашет" ну или " не пашет" буду очень благодарен.
|
|
|

11.02.2008, 19:24
|
|
Постоянный
Регистрация: 03.02.2007
Сообщений: 520
Провел на форуме: 1777536
Репутация:
932
|
|
проверку его существования)
Имхо, для этого достаточно resolve-сделать и всё.
Код:
hostent *ht;
ht=gethostbyname("site.com");
if(ht==0) printf("site.com does`n exist!");
else printf("site.com is exist!");
|
|
|

11.02.2008, 19:36
|
|
Флудер
Регистрация: 27.12.2005
Сообщений: 2,372
Провел на форуме: 5339610
Репутация:
4360
|
|
Кривовато. Например, для адреса "ofkshgkdhskghskfg.livejournal.com" он скажет что все ок, ибо резолв будет для любого поддомена) а вот контента там нет
|
|
|

11.02.2008, 19:41
|
|
Познающий
Регистрация: 17.01.2008
Сообщений: 94
Провел на форуме: 314553
Репутация:
38
|
|
даже можно на 3des или на любых алгоритмах в которых только один ключ
но без .net
|
|
|

11.02.2008, 20:11
|
|
Постоянный
Регистрация: 03.02.2007
Сообщений: 520
Провел на форуме: 1777536
Репутация:
932
|
|
Например, для адреса "ofkshgkdhskghskfg.livejournal.com" он скажет что все ок
Ну тогда уж если так дотошно проверять, то точно достоверно определить есть сайт на домене или нет невозможно, домен ofkshgkdhskghskfg.livejournal2.com и резольвится хорошо и 404 от сервака мы не получим.
Код:
struct hostent *ht;
struct sockaddr_in so;
int s,hconnect;
char *pack=(char*)malloc(1024);
if(pack!=0){
if(argc>0){
ht=gethostbyname(argv[1]);
if(ht==0) printf("%s does`n exist!\r\n",argv[1]);
else{
printf("%s exist!\r\n",argv[1]);
so.sin_family = AF_INET;
memcpy((char*)&so.sin_addr , ht->h_addr, ht->h_length);
so.sin_port = htons(80);
s= socket( AF_INET, SOCK_STREAM, 0 );
hconnect= connect( s, (struct sockaddr*)&so, sizeof( so ) );
if(hconnect!=-1)
{
printf("Successfully connected to %s\r\n\r\n",argv[1]);
sprintf(pack,"GET / HTTP/1.1\r\nHost: %s\r\nConnection: Close\r\n\r\n",argv[1]);
send(s,pack,1024,0);
memset(pack,0,1024);
recv(s,pack,1024,0);
printf("%s",pack);
}else printf("Can`t connect to %s\r\n",argv[1]);
}
}
}
Последний раз редактировалось Ky3bMu4; 11.02.2008 в 20:15..
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|