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 - Developer Diego

#1
Seguridad / ¿Qué clase de VPN usar?
27 Noviembre 2014, 22:19 PM
Para explicar mejor mi pregunta, me refiero a que si es mejor usar un servicio VPN de paga o en tu host local construyendo tu servidor con OpenVPN.
#2
Estoy aprendiendo ensamblador con NASM (Netwide Assembler) bajo Linux, tengo como herramientas los compiladores gcc, g++ también el enlazador ld que es usado de manera interna por estos compiladores, también para hacer ingeniería inversa o disassembly utilizo bokken y objdump para leer las extensiones .o, .out.

Si se pudiese dar una explicación más exhaustiva de ¿Cuál es la mejor forma de usarlo?

Un ejemplo mediante la arquitectura IA-32 para hacer operaciones como de lectura y escritura se tienen dos alternativas:


  • System calls de linux.
  • Usar las funciones externas de C como printf, scanf.

Usando las system calls o llamadas del sistema sería:

Código (asm) [Seleccionar]
section .data
   msg: db "Coding in asm", 10, 0 ;define a string
   smsg: equ msg                       ;length of msg

section .text
  global _start:

  ;define a macro for print
  %macro print 2
       mov eax, 4       ;call to the O.S. for write
       mov ebx, 1       ;file descriptor
       mov ecx, %1    ;put the msg
       mov edx, %2    ;put the length of msg
       int 80h            ; generate one interruption

       mov eax, 1       ;call to the system out
       mov ebx, 0       ;pass one parameter
       int 80h
  %endmacro

   _global:
        print msg, smsg


Para generar el código objeto y ejecutarlo se usa los sisguientes comandos
nasm -f elf msg.asm
ld -m elf_i386 -s -o msg msg.o
./msg

Usando las funciones externas de C

Código (asm) [Seleccionar]
section .data
   msg: db "Coding in asm", 10, 0 ;define a string

section .text
   extern printf ;include the printf function in asm program
   global main

   main:
       push ebp        
       mov ebp, esp   ;pass the reference of reg esp to ebp
       push msg
       call printf        ;print the current element in the stack
       mov esp, ebp
       pop ebp          ;free the stack
       ret


#3
Actualmente utilizo un servidor proxy squid con el firewall ip-tables, estoy viendo otras opciones,
¿Creen qué sea seguro?; en caso contrario que me recomiendan implementar.
#4
Cuando programo generalmente implemento el patrón mvc, creando únicamente el modelo y el controlador como clases, ahora cuando yo uso el controlador instancio internamente el modelo con un patrón Singletoon, es recomendable hacer eso, por que una alternativa podría ser extender la clase del controlador con la del modelo, ¿Qué es más recomendable y por qué?, justifique su respuesta con argumentos válidos.

Muchas gracias, que tengan buena tarde.
#5
Programación C/C++ / Operadores ->, ::, .
20 Mayo 2014, 05:22 AM
La pregunta es la siguiente, ¿Cuándo puedo utilizar los operadores ->, :: o .?, ¿cual sería su uso correcto para una estructura (struct) o para una clase?.
#6
Programación C/C++ / Memoría dinámica
19 Mayo 2014, 06:16 AM
La memoria dinámica es aquella que se puede cambiar en tiempo de ejecución, el stdlib (la librería estándar de C++) nos permite usar funciones como malloc, calloc, realoc, free, ahora estoy estudiándolo para estructuras de datos que se ejecutan en la memoria dinámica, pero en C++ a diferencia de C, yo puedo usar el puntero inteligente (Smart pointer) new y delete como un free.

Ahora la cuestión es: Será mejor usar las funciones de la librería stl o los operadores new y delete.
Básicamente new puede trabajar con cualquier tipo de dato (Esto nos dice que trabaja con el tipo de dato void).
#7
Mi pregunta es: ¿podría darse el caso de implantar inteligencia artificial en un virus de computadora?.
Si es así: ¿tendría la capacidad de aprender y evitar ser detectado, identificando vulnerabilidades y vectores de ataque?
#8
Se que nos ayudan mucho en el manejo de datos, la construcción de compiladores modernos en un nivel patrón de diseño (Back-end y Front-end); en la construcción de parsers y lexers.

Pero mi argumento tácito es, el por qué son importantes, las Data Structs.
¿Qué otras aplicaciones se les puede dar?
#9
Sabemos que son para utilizarse en el caso de xml con el estandar xmlHttpRequest, al igual que json me permite cargar contenido en un sitio de manera dinámica y sin necesidad de recargar la página web.