holy crypto
holy crap! от этой штуки, оказывается, происходит немедленная практическая польза! как раз сегодня один senior developer придумал дизайн, в котором сгенерированный симметричный ключ запоминается навсегда и используется для шифровки всех сообщений. пришлось его разочаровать. самое смешное, что это прямо такой optional assignment в этом курсе: given ciphertext produced by encoding multiple messages with the same key, recover original messages.
no subject
no subject
и, в общем, все нормальные протоколы так и работают - либо меняют ключ для каждого блока, либо меняют его continuosly (stream cipher). инициализируется же и то и другое обычно с помощью асимметричного ключа, а симметричный ключ живёт только пока длится сессия (которая, конечно, может быть очень длинной, но не может быть бесконечной).
у нас там вообще другой уровень проблемы был. во-первых, криптовать не надо вообще. надо обеспечить целостность данных (e.g. that data has not been tampered with). во-вторых, ключ уже есть нормальный, асимметричный, просто он недоступен в том месте, где надо ensure integrity. зато доступна его производная, которую можно использовать с тем же успехом.