Если я правильно понимаю, вам нужен способ доказать, учитывая список $\{А, Б, В, Г, \cdots\}$ открытых ключей, что некоторый заданный ключ $К$ является «тегом», соответствующим паре ключей из этого списка, не раскрывая, какой из них. Позвольте мне назвать это «действительным тегом».
Для простоты предположим, что $К$ это тег Алисы и Боба. Либо Алиса, либо Боб могут доказать, что $К$ является допустимым тегом, использующим стандартные методы доказательства с нулевым разглашением. Интуиция такова:
(1) Если пара $(А,Б)$ не должен был оставаться скрытым, то Боб мог просто выполнить доказательство с нулевым разглашением, что $(Г,А,Б,К)$ является кортежем Диффи-Хеллмана, используя его свидетельство $b$ (такой, что $G^b = B$ и $А^б = К$). Для этого отношения существуют стандартные доказательства с нулевым разглашением, см., например, мой ответ здесь.
(2) Чтобы пара оставалась скрытой, мы меняем утверждение: вместо доказательства "$(Г,А,Б,К)$ является кортежем Диффи-Хеллмана", Боб доказывает утверждение "$(Г,А,Б,К)$ является кортежем Диффи-Хеллмана, ИЛИ $(Г,А,С,К)$ является кортежем Диффи-Хеллмана, ИЛИ $(Г,А,Д,К)$ является кортежем Диффи-Хеллмана..." и так далее (для каждой пары различных открытых ключей). Затем, используя CDS OR-трюк, мы можем преобразовать доказательство с нулевым разглашением для отношения Диффи-Хеллмана в доказательство с нулевым разглашением для ИЛИ многих отношений Диффи-Хеллмана (в частности, полученное доказательство не покажет, какое из утверждений в ИЛИ является истинным). один).
Вышеупомянутое является самым простым и прямым решением. Конечно, это дорого: стоимость доказательства растет по мере $n\cdot(n-1)/2$ раз превышает стоимость одного доказательства Диффи-Хеллмана (или $n$ раз, если мы сможем слить личность одной из двух сторон, участвующих в теге $К$). Существуют решения для снижения стоимости, но они используют значительно более совершенные криптографические методы. Хорошим примером являются одно из многих доказательств которые допускают именно такой вид ИЛИ-доказательств, но с логарифмической связью по количеству предложений ИЛИ.
Последнее: если вы хотите, чтобы все проверили доказательство и не хотите переделывать доказательство со всеми, то вы можете сделать доказательство неинтерактивным в модели случайного оракула, используя преобразование Фиата-Шамира; таким образом, он становится публично проверяемым. Кроме того, обратите внимание, что когда сторона отправляет это доказательство, это всегда приводит к утечке информации: например. тот факт, что Боб отправляет доказательство того, что $К$ является действительным тегом, всегда показывает, что Боб мог проверить это сам, а это означает, что открытый ключ Боба является одним из задействованных ключей. Это может быть нормально в вашем сценарии, но вы должны быть ясны с этим.