Lo que busca se llama cifrado conmutativo . Esto es no lo mismo que "un cifrado que es conmutativo" (la terminología es confusa). Un cifrado que es conmutativo se logra fácilmente, por ejemplo, con la gran clase de cifrados de flujo que generan un flujo pseudoaleatorio dependiente de la clave y encriptan los datos al XORinger el flujo con los datos para encriptar. Como XOR es conmutativo, dos instancias de dicho cifrado pueden aplicarse sucesivamente y luego eliminarse en cualquier orden. Sin embargo, , al observar las versiones cifradas, se obtiene demasiada información para ser escuchado a escondidas: este cifrado no es tan cifrado como cree que es.
En términos generales, un cifrado conmutativo es un método de cifrado que es conmutativo y pero es lo suficientemente seguro cuando se usa en Protocolo de tres pasos de Shamir . En un sentido amplio, tal cifrado conmutativo no puede ser "tan seguro" como un cifrado simétrico normal (consulte esto ) , pero aún puede ser "lo suficientemente seguro" para el protocolo de tres pasos. Los algoritmos conocidos que parecen ser cifrados conmutativos en ese sentido (Pohlig-Hellman y SRA) se basan en el mismo tipo de herramienta matemática que los algoritmos de cifrado asimétrico e intercambio de claves como RSA o Diffie-Hellman; en consecuencia, no ofrecen ninguna ventaja de rendimiento real sobre este tipo de algoritmos más utilizados.