¿Cuál es la mejor práctica para codificar la cadena con key de encryption (como contraseña) en el dispositivo
lado (Android e ios). Y para decodificar esa cadena codificada en el lado del server con el encryption
Tecla utilizada en el lado del dispositivo.
Puedes probar uno de los siguientes
Encriptación RSA:
Cifrar usando la key pública en el dispositivo iOs y descifrarlo usando una key privada en el service web
Alojar el service web con certificates SSL.
Configura una VPN protegida y accede al service a través de la VPN.
Desde que mencionó sobre el encryption de passwords. Aletar y hashing, la contraseña es la más preferida.
¿No sería mejor utilizar un protocolo relacionado con SSL / TLS (por ejemplo, ssh, https, etc.)? Esos protocolos implementan un mecanismo de negociación para elegir el algorithm de encriptación para la transferencia de datos.
Es posible que desee leer (Android) http://developer.android.com/training/articles/security-ssl.html y (iOS) https://developer.apple.com/library/mac/#documentation/security/ conceptual / cryptoservices / SecureNetworkCommunicationAPIs / SecureNetworkCommunicationAPIs.html