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 - LaiaxanIV

#1
Desarrollo Web / Probando API REST
25 Mayo 2016, 21:51 PM
Buenasss!
Querría saber si hay alguna herramienta, script, programa... Para conseguir enviar muchas peticiones al mismo tiempo para probar una API rest que hemos estado desarrollando. Hemos probado hacerlo con threads pero no conseguimos las peticiones por segundo que nos gustaría.
Gracias!
#2
Java / Imagen/Video para APIRest
18 Mayo 2016, 21:20 PM
Buenas a todos!
Estoy desarrollando una API Backend. En una de las funciones necesito que me pasen por parámetro una Imagen o un vídeo. Que tipo de clase de java debería darle? InputStream? File? Image? Byte[]?
Un ejemplo del metodo.
Código (java) [Seleccionar]
@ApiMethod(name = "createComment",path = "createComment")
    public Object elMetodo(@Named("Archivo") ??? archivo)


Usamos ApiMethod y ApiNamespace para facilitarnos el parseo a JSON y para coger los parametros HTTP. Grácias!
#3
Scripting / Generador peticiones https PYTHON
11 Mayo 2016, 01:15 AM
Buenas!
Neceisto un script de python que envie 1000 peticiones http al mismo tiempo. He provado usando threads pero no parece funcionar...
Tengo esto:
Código (python) [Seleccionar]

import requests
import json
from threading import Thread
from random import randint

def http_request(aux):
print "http_req" + str(aux)
i = randint(0,10000000) #Se usa en la peticion http
url = 'https://...'

threads = []
for x in range(0, 1000):
threads.append(Thread(target = http_request(x)))
threads[x].start()

for x in range(0, 1000):
threads[x].join()
#4
Criptografía / RSA, obteniendo clave privada
29 Abril 2016, 17:46 PM
Buenas gente!
Tengo un problema a la hora de obtener la clave privada a través de la clave pública.
Código (python) [Seleccionar]

from Crypto.PublicKey import RSA
import gmpy

pub = RSA.importKey("""-----BEGIN PUBLIC KEY-----
MIIBITANBgkqhkiG9w0BAQEFAAOCAQ4AMIIBCQKCAQAA0kl7JrOq0XcvkdpibzgA
x2kU/9bbd9FYS+yMqyMWTSTJOcB892YHCVtfRRdmUVJQXiWGQBq0mHmlMOREuHVb
RIBrsOPNeWl4s1bu3RfY+UdlVQh4b696RkjY+EZjAwDrAtP2GKZ8xuKcnGbeyOoq
SThjFxcwUpFyC6upDOhOy6pIVwIWe3DIlcuhHaw/963GN7fDJBzGr2cRunP3TYP6
4a7BtCNEVp8C4b5TaNJVb0jsrvRh5PHNlVMbCIRQGIzEn4l/X4y2sQfYCgV4Pwm7
Vq5gzxgKgjVIgItOHqs9WCmA0PuMqB2A2l0qU1JPiR7DEh2FwUUdLn+deuz3bHTB
AgMBAAE=
-----END PUBLIC KEY-----""");

n = long(pub.n);
e = long(pub.e);
print n;
print e;

p = 14188273085411836729;
q = 280615323801319888452039197798402115977;

d = long(gmpy.invert(e,(p-1)*(q-1)))
print d
key = RSA.construct((n,e,d,p,q));
print key.exportKey('PEM',pkcs=1);
f1 = open("rsa.pem","wb")
f1.write(key.exportKey('PEM',pkcs=1))

message = "Un mensaje cualquiera"
signature = key.sign(message,'')
print pub.verify(message,signature)


La p y la q las he obtenido usando el Sage, para conseguir factorizar el modulo. El último print da false, y si cifro un mensaje y lo descifro tampoco parece estar correcto. No se que puedo estar haciendo mal...
Espero que me podais ayudar. Gracias
#5

  int f = alloc_frame();
  if(f == -1) return -1;
   copy_data((unsigned int)f<<12,0x00,4096);


alloc_frame() devuelve el numero de frame que está libre, sabiendo que el frame es de 4096B, necesito copiar eso a la pos 0x00 de memoria.


void copy_data(void *start, void *dest, int size)

Esta es la cabecera de copy_data.

Alguna idea de como lo puedo hacer? Me da un page_fault si pongo como dirección a copiar f*4096. Si pongo a mano la dirección me funciona perfectamente.
#6
Muy buenas a todos!
Os cuento el problema que tengo. Unos compañeros y yo estamos desarrollando un pequeño Sistema Operativo. Nos hemos aventurado en la gestión de procesos y estamos encallados ya que no sabemos como hacer el task switch.
A la hora de cambiar la pila de ejecución necesitamos modificar el registro %ebp por el Kernel_Esp (que apunta a la cima de la pila del proceso anterior). Tenemos una macro Kernel_Esp que nos devuelve este puntero, pero necesitamos ponerlo dentro de %ebp.

Tenemos:

Dword d = Kernel_Esp((union task_union*) t)
__(asm)__{
   "movl d,%ebp"    //Esto obviamente no es correcto
}


Hemos visto algunas formas parecidas a:

Dword d = Kernel_Esp((union task_union*) t)
__(asm)__{
   "movl %0,%ebp" : "=r" (d)    //Compila, pero no sabemos si funciona
}


Pero no sabemos si es esto lo que buscamos.
En resumen, buscamos una manera de introducir una variable dentro de un registro.
#7
Criptografía / AES
26 Marzo 2016, 19:07 PM
Buenas gente, ya vuelvo a estar por aquí!
Tengo dos preguntas para vosotros.

- La primera:
Tengo dos archivos c.key y c.enc.
c.key es la clave para descifrar c.enc que ha sido cifrado con AES. Mi pregunta es, el vector de inicialización IV, se puede inicializar de manera random? Si no, como puedo descifrar el mensaje? Os dejo aqui el codigo en Python.


from Crypto.Cipher import AES
from Crypto import Random


IV = Random.new().read(16)
key = open("c.key").read();
aes = AES.new(key, AES.MODE_CBC, IV)
encrypted = open("c.enc").read()
result = aes.decrypt((encrypted))
open("c.dec",'wb').write(result)


- La segunda:

KS=random(16)
kiv=random(1)
for i in range(0,16) {IV[i]=KS[i]^kiv}
aes_encryptor = AES.new(KS, AES.MODE_CBC,IV)
cryptogram = aes_encryptor.encrypt(Message)
result = IV || cryptogram
open("file.enc",'wb').write(result)


^ significa XOr y || concatenación.

Un archivo ha sido cifrado usando este codigo. ¿Cómo podria descifrarlo? Teoricamente existe una "puerta trasera". Creo que la clave está en hacer fuerza bruta con IV ya que es un valor de 1 Byte y con eso podrias sacar la clave (KS)

Adjunto los archivos:
https://www.dropbox.com/sh/fojv4sqeyc9fu0n/AADZkofN4Ri-jBmsLdgfJb8Ca?dl=0
#8
Criptografía / Clave Secreta
23 Marzo 2016, 17:03 PM
Buenas!
Necesito descifrar un fitxero de texto. Tengo la clave, pero no soy capaz de descifrarlo...
Lo único que sé es que ha sido cifrado con AES o DES. Gracias.

http://pastebin.com/7vTxh9aN
Os dejo un enlace con los ficheros.
https://www.dropbox.com/sh/fojv4sqeyc9fu0n/AADZkofN4Ri-jBmsLdgfJb8Ca?dl=0