Quiero diseñar e implementar un sistema de pagos (no manejaré los pagos con tarjeta de crédito). El sistema tendrá una API RESTful. Ya estoy familiarizado con los servicios REST, y he construido algunos en mi tiempo.
Sin embargo, esta vez, la seguridad es de suma importancia y quiero un sistema que sea tan robusto contra ataques externos, como cualquier otra cosa (por ejemplo, Paypal).
A mi modo de ver, hay dos puntos de ataque:
The physical machines (servers) and the network they reside on
Attacks via the exposed RESTful API (man in the middle attacks, snooping etc).
Paypal, que es un modelo de lo que quiero replicar, proporciona una API RESTful, utilizando OAuth, etc., así que sé que es posible proporcionar una API RESTFul segura para datos confidenciales.
Así que mi pregunta básicamente se descompone en las siguientes dos preguntas:
A. ¿Qué tecnologías / prácticas emplean empresas como Paypal para garantizar que sus máquinas no sean pirateadas o comprometidas?
B. ¿Es OAuth el camino a seguir para presentar una interfaz segura para el mundo? - ¿O puede mejorarse?