Держать в БД реалтайм, да еще и в sql - это плохо.
Делать реалтайм крайне-крайне желательно на сокетах.
Насчет защиты - если запрос не подписан - то что мне мешает перехватить его и модифицировать? Все вот эти ключи если это просто часть запроса и никак не зависят ХОТЯ БЫ от содержимого запроса - то от них толку ноль.
Я бы НА ПЕРВОЕ ВРЕМЯ брал бы готовые решения, а не делал реалтаймовый велосипед. Выстрелит - перепишете.