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ú

Mensajes - d3adly

#1
Presentaciones y cumpleaños / Re:Presentandome
Marzo 21, 2023, 05:31:18 PM
Bienvenido Dario, eres bien recibido. Aqui puedes encontrar buen material y a las mejores personas dispuestas a brindarte ayuda.
#2
Hola DaWrench.
Parece que apache no esta reconociendo los archivos php. Talvez podrias revisar que version de php tienes instalado y si apache esta configurado para manejar archivos php.

Si no lo tienes lo puedes instalar con
Código: php
sudo apt install php
.
Despues solo toca configurar el archivo de apache httpd.conf para que maneje archivos .php
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta




#3
Cita de: ANTRAX
[3] NO se permite ningún tipo de publicidad de otros sitios, ni imagenes promocionandolo, ni enlaces a cualquier tipo de sitio externo a underc0de a menos que sea una descarga directa. Tambien se prohiben los ofrecimientos de trabajo y ventas dentro del foro bajo ninguna circunstancia.

Hola amigo te recomiendo darle una mirada a las reglas del foro -> No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Saludos.
#4
Dudas y pedidos generales / Re:Codigo de un troyano.
Agosto 08, 2020, 04:19:57 PM
Hola @No tienes permitido ver los links. Registrarse o Entrar a mi cuenta, puedes darle una mirada a No tienes permitido ver los links. Registrarse o Entrar a mi cuenta.
El proyecto esta en github : No tienes permitido ver los links. Registrarse o Entrar a mi cuenta.

Tambien puedes ver el proyecto del compañero @No tienes permitido ver los links. Registrarse o Entrar a mi cuenta aqui: No tienes permitido ver los links. Registrarse o Entrar a mi cuenta.

Saludos.
#5
Genial @No tienes permitido ver los links. Registrarse o Entrar a mi cuenta   ;D, mejor explicacion no hay. En buen momento me uni al irc de underc0de, justo cuando viene lo bueno.

Saludos.
#6
E-Zines / Re:UnderDOCS - Julio 2020, Número 12
Julio 10, 2020, 03:01:23 PM
Felicidades a todo el equipo involucrado en el desarollo de cada entrega.

Respetos y admiracion a las personas que conforman esta hermosa comunidad.
#7
Buenisimo compañero.
Ya decia yo, cuando se viene lo que todos pensamos: cracking distribuido  ;D.

Felicidades por tu proyecto @No tienes permitido ver los links. Registrarse o Entrar a mi cuenta esta muy genial. UTesla sera la base de mas proyectos geniales como este.

Mis respetos, saludos.
#8
Hola @No tienes permitido ver los links. Registrarse o Entrar a mi cuenta, no estoy muy al tanto del asunto, pero si es posible.

Revisa los siguientes enlaces:

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Saludos.
#9
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Gracias no creo que sea WAF ya que al inyectar código sql desde la url del navegador el servidor responde con un "Internal server error" en el body de la página a diferencia de sqlmap que devuelve el código de error HTTP 403.

@No tienes permitido ver los links. Registrarse o Entrar a mi cuenta no es lo mismo realizar un ataque manual que usar una herramienta automatizada. Herramientas como sqlmap generan mucho trafico, y puede que el sitio tenga algun IDS, por lo cual te deniega el acceso al recurso. Mencionaste que en el navegador te funciona, y a menos que tengas deshabilitadas las cookies, este va a setear las que le ofrezca el servidor. Por lo cual puedes probar a usar la cookie que te ofrece desde sqlmap:
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
you have not declared cookie(s), while server wants to set its own ...

Saludos.
#10
Dudas y pedidos generales / Re:e-Mail certificado?
Julio 09, 2020, 01:19:29 PM
En realidad cualquiera te puede mandar un correo fingiendo ser otro. Verifica el dominio del correo que dices con el dominio de la entidad certificadora, y si este mismo aparece en algun lado de su sitio. Tambien verifica si esta entidad certificadora es reconocida.

Saludos.
#11
@No tienes permitido ver los links. Registrarse o Entrar a mi cuenta creo que no viste la ultima respuesta que te proporcione.
#12
Hola @No tienes permitido ver los links. Registrarse o Entrar a mi cuenta, desde la pc hay maneras de escanear y transmitir haciendo uso de un adaptador externo como se especifica aqui No tienes permitido ver los links. Registrarse o Entrar a mi cuenta.

Personalmente he probado transmitiendo con una raspberry pi, claro que usando una frecuencia alta al transmitir para no interferir con las ya establecidas. Para escanear y decodificar puedes usar SDR# si estas en Windows o Gqrx en linux, junto con No tienes permitido ver los links. Registrarse o Entrar a mi cuenta.

Puedes darle una mirada a este enlace No tienes permitido ver los links. Registrarse o Entrar a mi cuenta. Es un sitio con muchos recursos sobre el tema y guias de instalacion.

Saludos.
#13
Hola @No tienes permitido ver los links. Registrarse o Entrar a mi cuenta, en ese caso se soluciona de una manera simple.

Primero se crea una variable global (mas adelante te explico el porque):
Código: csharp
static bool bRegresarEditar = false;


Luego en el segundo bucle condicional while, se modifica de esto:
Código: csharp
while((tecla = Console.ReadKey(true).Key) != ConsoleKey.Enter)


A esto:
Código: csharp
while((tecla = Console.ReadKey(true).Key) != ConsoleKey.Enter && !bRegresarEditar)


La cual se cumplira mientras no se presione ENTER y la variable bRegresarEditar siga siendo falsa. Luego esta la forma de "navegar" entre las opciones. Los cases en donde se presione -> o <- seran iguales:
Código: csharp
case ConsoleKey.RightArrow:
if(index == 1){
Console.SetCursorPosition(11, 3);
Console.Write(" ");
Console.SetCursorPosition(1, 3);
Console.Write(">");
index = 0;
} else {
Console.SetCursorPosition(1, 3);
Console.Write(" ");
Console.SetCursorPosition(11, 3);
Console.Write(">");
index = 1;
}
break;
case ConsoleKey.LeftArrow:
if(index == 1){
Console.SetCursorPosition(11, 3);
Console.Write(" ");
Console.SetCursorPosition(1, 3);
Console.Write(">");
index = 0;
} else {
Console.SetCursorPosition(1, 3);
Console.Write(" ");
Console.SetCursorPosition(11, 3);
Console.Write(">");
index = 1;
}
break;


Ya que como dices independientemente de que se presione siga cambiando de opcion. Luego al estar entre las opciones de ATRAS o GUARDAR, si se presiona arriba o abajo se ejecua lo siguiente:
Código: csharp
if(index == 0){
Console.SetCursorPosition(1, 3);
Console.Write(" ");
} else {
Console.SetCursorPosition(11, 3);
Console.Write(" ");
}
bRegresarEditar = true; // <-- Primer uso de la nueva variable antes creada


Al asignar el valor de verdadero(true)) a la variable se rompe el bucle:
Código: csharp
while((tecla = Console.ReadKey(true).Key) != ConsoleKey.Enter && !bRegresarEditar)

con lo cual continua ejecutando el resto del case, en donde esta el nuevo segmento de codigo:

Código: csharp

if(bRegresarEditar){                   
bRegresarEditar = false;   
continue;
}

el cual comprueba si la variable es falsa, en otras palabras, si presionaste arriba o abajo estando entre las opciones de ATRAS o GUARDAR. A su vez vuelve a asignarle false a la variable para "resetearla" y luego esta el continue el cual hace regresar al inicio del bucle principal sin comprobar si se eligio alguna de las opciones anteriores.

Lo de la posicion del simbolo > le asigne el valor de 10 para probar pero solo hay una espacio de diferencia con lo cual el valor se le aumenta en 1, es cuestion de logica solamente aumentar la posicion del cursor en X para dibujar el caracter:
Código: csharp
Console.SetCursorPosition(11, 3);


El nuevo codigo puede quedar asi:
Código: csharp
using System;
namespace LCD_nombre_archivo_consola_08
{
class Program
{
static string guardarNombre = "";
static int coordenadaX = 0;
private static ConsoleKey tecla;
static bool bRegresarEditar = false;

// Caracteres de este array.
static readonly char[] roALFANUMERICO = new char[]
{
'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'Ñ', 'O', 'P',
'Q', 'R', 'S', 'T', 'U', 'V', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h',
'i', 'j', 'k', 'l', 'm', 'n', 'ñ', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'x', 'y',
'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9','.', ',', '-', '_', ':', ';',
'¿', '?', '(', ')', '[', ']', '{', '}','=', '$','&', '"', ' '
};

// Dirección del carácter del array. El 80 presenta al espacio del array roALFANUMERICO.
static readonly int[] roINDICE_ARRAY = new int[]
{
8, 0, 88, 80, 88, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80
};

private static readonly string[] roTEXTO = new string[] { "GUARDAR", "ATRÁS" };

static int index = 0;
static void Main(string[] args)
{
// Título de la pantalla.
Console.Title = "Cambiar nombre";

Inicio();
}

private static void MainMenu(){
Console.Clear();

Console.SetCursorPosition(0, 0);
Console.Write("Nombre del relé 1:  ");
Console.SetCursorPosition(0, 1);

for (int i = 0; i < roINDICE_ARRAY.Length; i++)
{
Console.Write(roALFANUMERICO[roINDICE_ARRAY[i]]);
}

Console.SetCursorPosition(2, 3);
Console.Write(roTEXTO[0]); // ATRÁS.
Console.SetCursorPosition(12, 3);
Console.Write(roTEXTO[1]); // GUARDAR.
}

#region Inico.
private static void Inicio()
{
Console.SetWindowSize(20, 5);
Console.BackgroundColor = ConsoleColor.Gray;
Console.ForegroundColor = ConsoleColor.Black;

MainMenu();
while (true)
{
index = 0;
if(tecla == ConsoleKey.Enter || tecla == ConsoleKey.RightArrow || tecla == ConsoleKey.LeftArrow){
MainMenu();
}
Console.SetCursorPosition(coordenadaX, 1);

tecla = Console.ReadKey(true).Key;
tecla = ConsoleKey.Enter;
switch (tecla)
{
case ConsoleKey.RightArrow:
if (coordenadaX < 15)
{
coordenadaX++;
}
break;

case ConsoleKey.LeftArrow:
if (coordenadaX > 0)
{
coordenadaX--;
}
break;

case ConsoleKey.UpArrow:
roINDICE_ARRAY[coordenadaX]++;
if (roINDICE_ARRAY[coordenadaX] >= roALFANUMERICO.Length)
{
roINDICE_ARRAY[coordenadaX] = 0;
}
Console.Write(roALFANUMERICO[roINDICE_ARRAY[coordenadaX]]);
break;

case ConsoleKey.DownArrow:
roINDICE_ARRAY[coordenadaX]--;
if (roINDICE_ARRAY[coordenadaX] < 0)
{
roINDICE_ARRAY[coordenadaX] = roALFANUMERICO.Length - 1;
}
Console.Write(roALFANUMERICO[roINDICE_ARRAY[coordenadaX]]);
break;

case ConsoleKey.Enter:
Console.SetCursorPosition(1, 3);
Console.CursorVisible = false;
Console.Write(">");

while((tecla = Console.ReadKey(true).Key) != ConsoleKey.Enter && !bRegresarEditar){

switch (tecla)
{
case ConsoleKey.RightArrow:
if(index == 1){
Console.SetCursorPosition(11, 3);
Console.Write(" ");
Console.SetCursorPosition(1, 3);
Console.Write(">");
index = 0;
} else {
Console.SetCursorPosition(1, 3);
Console.Write(" ");
Console.SetCursorPosition(11, 3);
Console.Write(">");
index = 1;
}
break;
case ConsoleKey.LeftArrow:
if(index == 1){
Console.SetCursorPosition(11, 3);
Console.Write(" ");
Console.SetCursorPosition(1, 3);
Console.Write(">");
index = 0;
} else {
Console.SetCursorPosition(1, 3);
Console.Write(" ");
Console.SetCursorPosition(11, 3);
Console.Write(">");
index = 1;
}
break;

case ConsoleKey.UpArrow:
case ConsoleKey.DownArrow:
if(index == 0){
Console.SetCursorPosition(1, 3);
Console.Write(" ");
} else {
Console.SetCursorPosition(11, 3);
Console.Write(" ");
}
bRegresarEditar = true;
break;
}
}
if(bRegresarEditar){
bRegresarEditar = false;
continue;
}
if (index == 0){
Atras();
}
if (index == 1){
Guardar();
}
break;
}
}
}
#endregion

private static void Atras()
{
Console.Clear();
Console.SetCursorPosition(0, 1);
Console.Write("HAS PULSADO ATRÁS   ");
//Console.ReadKey();
}

private static void Guardar()
{
guardarNombre = "";
Console.Clear();
Console.SetCursorPosition(0, 1);
Console.Write("HAS GUARDADO       ");
for (int a = 0; a < roINDICE_ARRAY.Length; a++)
{
//guardarNombre += roALFANUMERICO[roINDICE_ARRAY[a]].ToString();
}
Console.SetCursorPosition(0, 2);
Console.Write(guardarNombre);
//Console.ReadKey();
}
}
}


Saludos.
#14
Hola @No tienes permitido ver los links. Registrarse o Entrar a mi cuenta, me disculpo si la siguiente respuesta no concuerda a tu pregunta pero te explico lo que pude entender de tu dilema.
Despues de haber creado la "frase" se presiona ENTER, y lo que quieres es elegir entre las opciones ATRAS y GUARDAR dibujando el simbolo > antes de dicha opcion. Y que luego de seleccionar dicha opcion el programa te permita seguir editando la "frase" antes creada. O me equivoco?

De no ser asi, te ofrezco una posible solucion.

Primero no necesitas usar tantas clases. Basta con:
Código: csharp
using System;


Luego por simple mania y para poder redibujar la consola de una manera mas accesible cree la funcion MainMenu:
Código: csharp
private static void MainMenu(){
        Console.Clear();

            Console.SetCursorPosition(0, 0);
            Console.Write("Nombre del relé 1:  ");
            Console.SetCursorPosition(0, 1);
           
            for (int i = 0; i < roINDICE_ARRAY.Length; i++)
            {
                Console.Write(roALFANUMERICO[roINDICE_ARRAY[i]]);
            }

            Console.SetCursorPosition(2, 3);
            Console.Write(roTEXTO[0]); // ATRÁS.
            Console.SetCursorPosition(12, 3);
            Console.Write(roTEXTO[1]); // GUARDAR.
        }


Luego en las primeras lineas del bucle principal, se modifica de la siguiente manera:
Código: csharp
while (true){
            index = 0;
            if(tecla == ConsoleKey.Enter || tecla == ConsoleKey.RightArrow || tecla == ConsoleKey.LeftArrow){
            MainMenu();
            }

Compara la tecla presionada anteriormente, cuando se esta en modo "edicion", por asi decirlo, y solamente redibuja la pantalla si se presiono ENTER, -> o <-, para asi tener que evitar llamar a la funcion MainMenu y que parpadee mucho la consola.

Despues sigue la seccion de construir la "frase" y mas abajo esta la nueva modificacion:
Código: csharp
while((tecla = Console.ReadKey(true).Key) != ConsoleKey.Enter){
  switch (tecla){
case ConsoleKey.RightArrow:
   index = 1;
Console.SetCursorPosition(1, 3);
Console.Write(" ");
Console.SetCursorPosition(10, 3);
Console.Write(">");
break;
case ConsoleKey.LeftArrow:
   Console.SetCursorPosition(10, 3);
Console.Write(" ");
Console.SetCursorPosition(1, 3);
Console.Write(">");
index = 0;
break;
case ConsoleKey.UpArrow:
case ConsoleKey.DownArrow:
        Console.SetCursorPosition(coordenadaX, 1);
break;
}
}


Siendo la linea:
Código: csharp
while((tecla = Console.ReadKey(true).Key) != ConsoleKey.Enter){
una condicion que se cumplira mientras no se precione la tecla ENTER.

Luego el siguiente segmento que se ejecuta al presionar la tecla ->:
Código: csharp
index = 1;
Console.SetCursorPosition(1, 3);
Console.Write(" ");
Console.SetCursorPosition(10, 3);
Console.Write(">");

el cual borra el > escrito anteriormente al lado de ATRAS y lo dibuja entes de la palabra GUARDAR, ademas se le asigna 1 a la variable index.

Lo mismo pero a la inversa si se presiona la tecla <-:
Código: csharp
Console.SetCursorPosition(10, 3);
Console.Write(" ");
Console.SetCursorPosition(1, 3);
Console.Write(">");
index = 0;

borra el > que se encuentra al lado de GUARDAR y lo dibuja al lado de ATRAS, y se le asigna el valor de 0 a la variable index. Asi se logra un "efecto" de navegacion entre las opciones disponibles ya que mientras no presiones ENTER dibuja > al lado de la opcion correspondiente.

Otra modificacion "significativa" seria en al funcion Guardar:
Código: csharp
private static void Guardar(){
guardarNombre = ""; // <--- Aqui
Console.Clear();
Console.SetCursorPosition(0, 1);
Console.Write("HAS GUARDADO       ");
for (int a = 0; a < roINDICE_ARRAY.Length; a++)
{
guardarNombre += roALFANUMERICO[roINDICE_ARRAY[a]].ToString();
}
Console.SetCursorPosition(0, 2);
Console.Write(guardarNombre);
Console.ReadKey();   // <--- Aqui
}

Primero "resetear" la variable guardarNombre para evitar agregar los datos antes "seteados", y la llamada a Console.ReadKey() para mostrar el mensaje por pantalla sin que se esfume de una vez.

Por ultimo este segmento de codigo es innecesario:
Código: csharp
for (int a = 0; a < 2; a++)
{
Console.SetCursorPosition(1 + (10 * a), 3);
if (a == index)
{
Console.Write(">");
}
else
{
Console.Write(" ");
}
}


Concluyendo, tu codigo podria quedar de la siguiente manera:
Código: csharp
using System;
namespace LCD_nombre_archivo_consola_08
{
class Program
{
static string guardarNombre = "";
static int coordenadaX = 0;
private static ConsoleKey tecla;

// Caracteres de este array.
static readonly char[] roALFANUMERICO = new char[]
{
'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'Ñ', 'O', 'P',
'Q', 'R', 'S', 'T', 'U', 'V', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h',
'i', 'j', 'k', 'l', 'm', 'n', 'ñ', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'x', 'y',
'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9','.', ',', '-', '_', ':', ';',
'¿', '?', '(', ')', '[', ']', '{', '}','=', '$','&', '"', ' '
};

// Dirección del carácter del array. El 80 presenta al espacio del array roALFANUMERICO.
static readonly int[] roINDICE_ARRAY = new int[]
{
80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80
};

private static readonly string[] roTEXTO = new string[] { "ATRÁS", "GUARDAR" };

static int index = 0;
static void Main(string[] args)
{
// Título de la pantalla.
Console.Title = "Cambiar nombre";

Inicio();
}

private static void MainMenu(){
Console.Clear();

Console.SetCursorPosition(0, 0);
Console.Write("Nombre del relé 1:  ");
Console.SetCursorPosition(0, 1);

for (int i = 0; i < roINDICE_ARRAY.Length; i++)
{
Console.Write(roALFANUMERICO[roINDICE_ARRAY[i]]);
}

Console.SetCursorPosition(2, 3);
Console.Write(roTEXTO[0]); // ATRÁS.
Console.SetCursorPosition(12, 3);
Console.Write(roTEXTO[1]); // GUARDAR.
}

#region Inico.
private static void Inicio()
{
Console.SetWindowSize(20, 5);
Console.BackgroundColor = ConsoleColor.Gray;
Console.ForegroundColor = ConsoleColor.Black;

MainMenu();
while (true)
{
index = 0;
if(tecla == ConsoleKey.Enter || tecla == ConsoleKey.RightArrow || tecla == ConsoleKey.LeftArrow){
MainMenu();
}
Console.SetCursorPosition(coordenadaX, 1);

tecla = Console.ReadKey(true).Key;
switch (tecla)
{
case ConsoleKey.RightArrow:
if (coordenadaX < 15)
{
coordenadaX++;
}
break;

case ConsoleKey.LeftArrow:
if (coordenadaX > 0)
{
coordenadaX--;
}
break;

case ConsoleKey.UpArrow:
roINDICE_ARRAY[coordenadaX]++;
if (roINDICE_ARRAY[coordenadaX] >= roALFANUMERICO.Length)
{
roINDICE_ARRAY[coordenadaX] = 0;
}
Console.Write(roALFANUMERICO[roINDICE_ARRAY[coordenadaX]]);
break;

case ConsoleKey.DownArrow:
roINDICE_ARRAY[coordenadaX]--;
if (roINDICE_ARRAY[coordenadaX] < 0)
{
roINDICE_ARRAY[coordenadaX] = roALFANUMERICO.Length - 1;
}
Console.Write(roALFANUMERICO[roINDICE_ARRAY[coordenadaX]]);
break;

case ConsoleKey.Enter:
Console.SetCursorPosition(1, 3);
Console.CursorVisible = false;
Console.Write(">");

while((tecla = Console.ReadKey(true).Key) != ConsoleKey.Enter){

switch (tecla)
{
case ConsoleKey.RightArrow:
index = 1;
Console.SetCursorPosition(1, 3);
Console.Write(" ");
Console.SetCursorPosition(10, 3);
Console.Write(">");
break;
case ConsoleKey.LeftArrow:
Console.SetCursorPosition(10, 3);
Console.Write(" ");
Console.SetCursorPosition(1, 3);
Console.Write(">");
index = 0;
break;

case ConsoleKey.UpArrow:
case ConsoleKey.DownArrow:
Console.SetCursorPosition(coordenadaX, 1);
break;
}
}
if (index == 0){
Atras();
}
if (index == 1){
Guardar();
}
break;
}
}
}
#endregion

private static void Atras()
{
Console.Clear();
Console.SetCursorPosition(0, 1);
Console.Write("HAS PULSADO ATRÁS   ");
Console.ReadKey(); // Pulse cualquier tecla para salir.
}

private static void Guardar()
{
guardarNombre = "";
Console.Clear();
Console.SetCursorPosition(0, 1);
Console.Write("HAS GUARDADO       ");
for (int a = 0; a < roINDICE_ARRAY.Length; a++)
{
guardarNombre += roALFANUMERICO[roINDICE_ARRAY[a]].ToString();
}
Console.SetCursorPosition(0, 2);
Console.Write(guardarNombre);
Console.ReadKey();
}
}
}


Espero te sirva de algo, saludos.
#15
Hola @No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Prueba corriendo lo siguiente:

Código: bash

sudo apt-get update
sudo apt-get autoremove
sudo dpkg --configure -a
sudo apt-get -f install

Luego vuelve a correr el comando:

Código: bash

sudo apt install tor python3 python3-pip


Saludos.
#16
Dudas y pedidos generales / Re:Descifrar Hash
Julio 07, 2020, 05:04:40 AM
Hola, al parecer esta entre SHA1 y Cisco 7 como mencionaste.

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
yo se cual debe ser el resultado, pero quiero saber que tipo de hash es.
Conociendo el resultado el proceso se te hara mas sencillo, basta con generar el hash de la "frase" usando diferentes algoritmos como los mencionados anteriormente, y comparar el resultado de cada algoritmo con el hash que ya tienes 4788c8fa9c031dd87882e6736991f8083861dedb.
#17
Talleres Underc0de / Re:Taller de Hardware #2
Julio 06, 2020, 01:52:29 AM
No estoy muy familiarizado en el tema de refrigeracion, o de que placa te convenga mas que otra, se lo dejo a otro usuario que sea experto en el tema, pero no necesariamente tienes que tener una pc de tan alto rendimiento si quieres empezar, a no ser que el uso que le vayas a dar exija que sea de gama alta. Actualmente tengo por procesador un Celeron de 1.60 GHz de un par de años atras y hasta ahora me va bien para el uso diario, programacion e informatica en general. Entonces te sugiero que analizes cual sera el uso principal, luego puedes investigar que requisitos exije esa tarea que ejecutaras la mayoria del tiempo y podras adaptarlo a tu presupuesto. Suerte :D.
#18
Talleres Underc0de / Re:Taller de Hardware #2
Julio 06, 2020, 01:12:51 AM
Es un placer @No tienes permitido ver los links. Registrarse o Entrar a mi cuenta, la proxima vez que tengas una duda procura hacerlo en el subforo de No tienes permitido ver los links. Registrarse o Entrar a mi cuenta.
#19
Talleres Underc0de / Re:Taller de Hardware #2
Julio 05, 2020, 11:03:57 PM
Hola @No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
estuve mirando portatiles pero quisiera aprender a armar un pc y elegir cada parte pero necesito de la ayuda de ustedes comenzando por marcas y modelos de gabinetes de alto rendimiento (sin irnos a los mas caros para gamers) y todo lo demás.

Respecto a portatiles, no son muy "modificables" en si, pero si te decides por una de escritorio puedes revisar este post No tienes permitido ver los links. Registrarse o Entrar a mi cuenta en el cual se discute sobre varios montos con los cuales puedes armar una pc de buenos requisitos, aunque los precios pueden variar.

Saludos.
#20
Gracias @No tienes permitido ver los links. Registrarse o Entrar a mi cuenta  ;D