Описание проблемы
Меня интересует решение следующей проблемы:
Есть секретная информация, которая группа из n человек хотели бы заблокировать до некоторого минимального числа 1 <= m <= n из них соглашаются выпустить его. Например, скажем, имена всех участников группы.
Как мы можем зашифровать эту информацию и раздайте ему n «ключей», чтобы что информация остается частной навсегда, если, по крайней мере, в какой-то момент m представляют свои ключи для разблокировки информации?
Ограничения
Очень важно, чтобы для любых k < m (даже m- 1 ), вероятность успешного извлечения информации с помощью только k ключей должна быть чрезвычайно низкой. Не менее важно, что для любого k > = m вероятность успеха должна быть чрезвычайно высокой.
И оптимально (но не обязательно), я хотел бы решение, которое имеет эти свойства:
Первоначально, Я подумал, что хорошее решение может включать в себя простое шифрование информации и передачу (закрытого) ключа по частям, но я не могу придумать хороший способ разделить ключ.
В частности, проблема, похоже, заключается в следующем. труднее, когда и m , и n становятся действительно большими, поскольку грань между наличием и отсутствием> = m желающего члена группы становится все тоньше и тоньше (так сказать ).
Если вы знаете решение, толчок в правильном направлении будет предпочтительнее полного ответа .