¿Existe una forma económica de crear pares de claves públicas / privadas válidas (inseguras)?

Bueno, las longitudes de las claves están vinculadas al algoritmo, al igual que la generación de claves. Las dos claves se relacionan a través del algoritmo.

Entonces, lo que realmente está pidiendo es un algoritmo para el cifrado de clave pública. Estos dos enlaces deberían darle algoritmos que funcionarán. La seguridad en la longitud de la clave que ha elegido no está garantizada, pero ha dicho que está bien.

El problema es con “simple”. Desea dos funciones, f y g, con dos teclas, p y q, de modo que con un mensaje m, g (f (m, p), q)) = m, donde p y q son diferentes. Si vale la pena hacerlo, ni p ni q pueden ser manejados desde el otro y el número de teclas alternativas que producirán la misma salida será pequeño en comparación con el número de teclas potenciales.

Teoría RSA

Una cartilla (relativamente fácil de entender) sobre criptografía de curva elíptica

Después de pensarlo un poco más, se me ocurrió que en realidad no es tan diferente de crear direcciones de billetera Bitcoin.

Esto me llevó a phpecc / phpecc y a la biblioteca de criptografía de curva elíptica PHP de código abierto