По сути, вы спроектируете систему, в которой каждый клиент может получать сообщения, подписанные двумя закрытыми ключами: если он получает сообщение со второго закрытого ключа, он отбрасывает все, что получено, подписанный первым ключом.
Кажется, просто ...
Итак, я думаю, что вы имели в виду, что вы хотите «отозвать» первый открытый / закрытый ключ таким образом, чтобы ваша система считала эту пару недействительной независимо от той же обработки, я имею в виду, даже если кто-то взломает клиент, он не сможет принять первую скомпрометированную пару ключей, потому что каким-то образом они отозваны второй парой ключей.
Это так?
Если это так ... нет, без какого-либо сервера, я не думаю, что вы можете "отозвать" пару ключей. Отмена подразумевает наличие на центральном сервере информации о том, какие ключи действительны, или ваше приложение выполняет эту проверку внутренне (например, получает сообщение от второй пары ключей и обрабатывает его)