Прежде всего, замечание о терминологии: семантическая безопасность является свойством шифра; это не метод и не алгоритм, поэтому «семантическая безопасность» не может ничего защитить. Конечно, если шифр семантически безопасен, он должен защищать от восстановления ключа, так как восстановление ключа напрямую ведет к восстановлению открытого текста. Если полное восстановление открытого текста возможно, то очевидно, что оно не является семантически безопасным.
Блочный шифр — это алгоритм (примитив), который можно использовать для создания семантически безопасный шифр. Сам блочный шифр должен защищать от восстановления ключа. Пока вы не используете повторно ключ где-либо еще в схеме — и это разумный вариант по умолчанию — вам не нужно обеспечивать дополнительную защиту. Возможно, именно поэтому он не упоминается конкретно.
Теперь, если вы вообще не используете блочный шифр (поточный шифр не может) или если вы используете ключ напрямую для создания, например. тег аутентификации, тогда да, вам нужна дополнительная защита от восстановления ключа.
Помните, что некоторые схемы вводят новые элементы данных, которые могут действовать как ключи в схеме. Если это так, конструкция, конечно же, должна обеспечивать защиту от восстановления этих ключей. Это напр. дело в ценности $Ч$ - ключ решётки - в режиме GCM.
Обратите внимание, что тег проверки подлинности вычисляется по зашифрованному тексту в режиме GCM, поэтому шифр все равно будет семантически безопасным, даже если произойдет утечка этого ключа, даже если свойство проверки подлинности сообщения будет нарушено. Это все еще может привести к потере конфиденциальности из-за атак оракула с открытым текстом, но это выходит за рамки определения самого шифра.
Шифр будет считаться семантически безопасным, поскольку режим CTR — базовый режим шифрования GCM — по-прежнему будет обеспечивать семантическую безопасность.