Reto/Juego Ejercicios en Python

Iniciado por Novlucker, 2 Septiembre 2010, 15:48 PM

0 Miembros y 1 Visitante están viendo este tema.

n1co

y bueno... alguien que lo haga ? :D ami ya me dio fatiga..

[L]ord [R]NA

:xD ya el plazo de 3 dias paso hace mucho, si quieren pongan otro reto.

ace332

 :laugh: No supo responder a su propio reto

[L]ord [R]NA

A que te refieres con eso BeetleJuice?

Littlehorse

Supongo que se refiere a esto:

Cita de: Novlucker en  2 Diciembre 2010, 17:45 PM
Que pesado, y dale con los raw_sockets, que conste que aún no he visto ningún código de los ejercicios que planteas, así que no sabemos ni si tu puedes hacerlo :rolleyes:

así que te toca codificar Lord R.N.A. ;D
An expert is a man who has made all the mistakes which can be made, in a very narrow field.

[L]ord [R]NA

Cita de: Littlehorse en 20 Diciembre 2010, 03:31 AM
Supongo que se refiere a esto:

así que te toca codificar Lord R.N.A. ;D

xDDD ya no tengo el codigo pero denme unas 2 horas y coloco el daemon y el cliente

ace332


[L]ord [R]NA

#47
Cita de: BeetleJuice en 20 Diciembre 2010, 03:53 AM
Esperando estamos  :D

Aqui esta el codigo...  en respuesta al reto que nadie pudo resolver... al parecer si se hacer el reto que propuse, por lo tanto propondre otro cuando este menos ocupado.

Source Knocker:
Código (python) [Seleccionar]

import socket,time
MainSocket = socket.socket()
a=[64000,32000,16000,8000,4000]
while 1:
   time.sleep(3)
   for i in range(5):
       try:
           MainSocket.connect(("127.0.0.1",a[i]))
       except:
           b=0


Source Daemon:
Código (python) [Seleccionar]

import socket, datetime
sock = socket.socket(socket.AF_INET, socket.SOCK_RAW, socket.IPPROTO_TCP)
while 1:
   c=0
   d=0
   while 1:
       data = sock.recv(22)
       header = ["%i"%ord(x) for x in data]
       s = "%x"%int(header[20])
       s+="%02x"%int(header[21])
       if s==str(hex(64000))[2:] and c==0:
           c+=1
       elif s==str(hex(32000))[2:] and c==1:
           c+=1
       elif s==str(hex(16000))[2:] and c==2:
           c+=1
       elif s==str(hex(8000))[2:] and c==3:
           c+=1
       elif s==str(hex(4000))[2:] and c==4:
           c+=1
       else:
           d+=1
       
       if c==5 and d<10:
           a = str(datetime.datetime.today())
           print "=>Secuencia Correcta:",a[:len(a)-7]
           break
       elif d>10:
           break


El codigo se puede mejorar filtrando la IP para evitar tomar los datos salientes del propio PC pero no era parte del reto.