DReaM-Cache: Distributed Real-Time Transaction Memory Cache to support two-factor authentication services and its reliability