Encriptar JSONObject?

Hola que tal, compañeros de Java México,

El equipo de trabajo y yo tenemos algunas dudas que ojala ustedes nos puedan ayudar a solucionar.

Lo que necesitamos es poder encriptar un objeto Json es decir que ese objeto viaje ya sea post o get encriptado por algún método o base, mismo que se ocuparía en un cliente en este caso un cliente java y uno en objetive c para iPad con la misma base para ser desencriptado, si alguno de ustedes ya tiene algún ejemplo o alguna idea de como podríamos hacerlo, se los estaré agradeciendo, adjunto mi clase base del webservice.

 

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de ezamudio

SSL

Y qué tal si implementan SSL y se quitan de broncas?

Imagen de mmjose26

SSL

pienso lo mismo, no veo por que no usar el SSL, o hay alguna restricción que no has comentado?

Dos tipos de cifrado

Una es que puedes usar cifrado en los datos y la otra es que lo uses en el transporte.

CUando usas cifrado en los datos tendrias un json como este:
 
Nota: puedes emplear alguno de los varios algoritmos de encripcion/cifrado aunque lo mas comun es RSA/B64 y para esto deves generar llaves (public key/private key) para "encriptar" y "desencriptar"

Cuando usas cifrado en el transporte tienes que adoptar un canal seguro, que generalmente se utiliza el HTTPS el cual cifra toooooda la informacion de la respuesta (no siempre la consulta) y eso te garantiza que lo que envia el servidor solo lo puede interpretar quien hace la consulta.

Si optas por la encripcion en datos, aqui hay un ejemplo para usar RSA. Si usas el cifrado en transporte depende de tu Servidor de Aplicaciones el cual por regla te pide un certificado para cifrar las respuestas y cuando vengan cifradas las consultas. Por cierto, si lo usas en WS te recomiendo Rampart