Design a Secure Identity Management System — Hard System Design Problem