Seguridad en webservices y en sockets

kraneok

Hola peolple, estoy desarrollando una app en android que tendrá que tirar de servicios en la nube, la cuestión es que no se si utilizar webservices en java o programar un servidor mas especifico con sockets de java.

Lo que me gustaría es conocer el asunto de la seguridad en ambas formas, es decir, que se debe de tener en cuenta a la hora de implementar seguridad en los webservices y como hacerlo en los sockets.

Lo que mas me preocupa sobre todo es el envió de datos sensibles a través de la red, desde el consumidor hasta el servicio. Es decir, toda esta información ¿se debería encriptar?,¿como?, o se debería de hacer de otra forma.

Espero que podáis arrojarmealgo de luz pues ando algo perdido respecto a la seguridad en aplicaciones distribuidas.

Un saludo y gracias.

CrIpI

Yo tiraria por una comunicacion SSL y fuera

1 respuesta
zoeshadow

A la hora de proteger los datos que viajan por la red una buena manera es usar HTTPS cómo dice #2.

Lo cual no quita que estaría bien usar alguna técnica adicional para proteger tus servidores de peticiones malintencionadas, como puede ser el uso de tokens, de manera que pudieras bloquear las peticiones realizadas desde un cliente ( bloqueando su token por ejemplo ).

El uso de token te da mucho control desde la parte servidora, estos diseños pueden parecer demasiado si vas a tener control total sobre las aplicaciones cliente, pero hoy en día con los smartphones raro es el caso en el que tienes ese control.

Mirate oauth que es un estándar de autenticación/autorización, si quieres hacerlo BIEN, oauth es complicado de primeras, tienes implementaciones de oauth en casi todos los lenguajes y hay mucha documentación, lo cual es un plus a su favo.

kraneok

Bien, gracias por las respuestas, mas o menos era lo que me esperaba xD.
Y por ejemplo ¿utilizando un cifrado simétrico propio?, había pensado en algo así como, utilizar una clave privada entre cliente y servidor, bastante larga para cifrar una clave generada aleatoriamente y con esa, cifrar el contenido. Quizás sería crear una carga de trabajo bastante alta.

2 respuestas
zoeshadow

#4 No te recomiendo que te montes tu propio sistema

1 respuesta
Soltrac

#4 Bastaría con desencriptar tu aplicación para sacar la clave privada y sería lo mismo que enviar en texto plano. SSL es lo más cómodo. Clave privada y pública es el mejor sistema y SSL te lo pone ya para que no tengas que montarlo tú.

1 respuesta
kraneok

#6 Pues si, XDD
#5 Voy a leer eso :D

Usuarios habituales

  • kraneok
  • Soltrac
  • zoeshadow
  • CrIpI