Можно ли заключить ключевое соглашение с эфемерно-эфемерным ECDH, не требуя сначала начального рукопожатия?
Да, однако это уязвимо для атак «человек посередине» (MITM).
Возможно ли иметь соглашение о ключе в том же сообщении, что и зашифрованные данные с ECDHE?
Чтобы получатель мог использовать эфемерный ключ, он должен отправить его, прежде чем вы сможете использовать его для обмена. В качестве альтернативы они могут загрузить несколько эфемерных ключей на доверенный сторонний сервер, чтобы отправители могли получить их позже (это то, что делает Signal). Но обычно вы предполагаете, что отправитель просто использует статический ключ получателя, чтобы он знал, что он отправляется нужному человеку. В этом случае вся эфемерная случайность обеспечивается отправителем, поэтому у вас действительно есть KEM (механизм инкапсуляции ключей), а не обмен ключами.
Таким образом, если вы готовы отказаться от аутентификации и рисковать олицетворением / атаками «человек посередине», вы можете достичь идеальной прямой секретности с помощью KEM, и вы можете заставить получателя регулярно менять ключ получения, чтобы им не приходилось беспокоиться о безопасном долговременном хранении (полустатический ключ).