Para motivar mi pregunta, describiré un problema relacionado y luego daré una solución al mismo. Mi pregunta será entonces una variante de este problema.
N individuos se sientan alrededor de una mesa y quieren calcular la media de sus salarios. Quieren hacerlo de manera que no se filtre ninguna información privada. Es decir, nadie obtiene ninguna información (sobre los salarios de los demás) que no pueda deducir de la información pública.
Más formalmente, suponemos que (1) todos los salarios son enteros no negativos delimitados por B (2) todos se comportan honestamente y no intentan detener el proceso (3) ningún subconjunto de individuos se confabulará (4) hay líneas de comunicación privadas y seguras entre todos los participantes (5) toda esta información es bien conocida (6) no hay ninguna parte externa de confianza.
Pregunta 1: ¿Es posible que los N individuos calculen colectivamente la media sin filtrar ninguna información? Decimos que hay fuga de información si algún individuo tiene alguna información al final del proceso sobre el salario de los demás que no podría haber deducido al conocer su propio salario y la media.
La respuesta es sí. Basta con calcular la suma de los salarios. Fijemos S = 10*N*B. Ahora, la primera persona (Alice) elige un número aleatorio entre 0 y S-1 y lo añade a su salario mod S. A continuación, pasa la suma a su vecino, Bob, que añade su salario. Esto continúa alrededor de la mesa hasta que Zoey (la última participante) le pasa el número a Alice. Alice resta el número al azar y anuncia la suma al grupo.
Aquí hay dos preguntas relacionadas:
Pregunta 2: ¿Es posible que el grupo calcule el salario máximo (con las limitaciones anteriores) sin filtrar ninguna información?
Pregunta 3: ¿Podemos eliminar del algoritmo anterior la suposición de que se conoce de antemano el tamaño de los salarios?
Nota adicional: En la pregunta 2 queremos calcular sólo el máximo sin proporcionar ninguna otra información. Se puede observar que, por ejemplo, la distribución completa de los salarios podría calcularse y comunicarse al grupo calculando los momentos de la secuencia mediante el método anterior. Esto daría el máximo (aunque también mucha otra información).