Как ты ключи будешь раздавать. Это самое сложное. Как их хранить будешь. Где возьмёшь ГПСЧ и ему на вход какой-то источник "энтропии" всё равно нужен. Почитай как устроен ГПСЧ в Linux. Впрочем для аутентификации вопросы те же самые (если не вектор инициализации, то в хеш всё равно же "соль" добавлять нужно, ключи точно так же раздать как-то нужно.