Elegir un algoritmo de firma más o menos seguro con una longitud de firma muy corta

1

Para un código de registro de software, me gustaría firmar un número de teléfono de alrededor de 14 dígitos con una clave privada y luego verificarlo en una aplicación.

Me imagino que usaría RSA o algo así, pero la firma debería escribirse manualmente (código de registro) y también tener solo unos 10 dígitos para escribirla fácilmente.

Las firmas RSA suelen ser más largas. Entonces, ¿puedo simplemente Hash y aún verificarlo?

He leído que las firmas RSA son tan largas como la clave privada, por lo que he intentado firmar con una clave RSA de 32 bits, pero esto me da "módulo a corto".

El siguiente enfoque sería utilizar un tamaño de clave más largo y marcar la firma para tener una más corta. Pero creo que entonces ya no puedo verificarlo, ¿o aún queda un camino?

Mi clave pública estaría contenida en la aplicación. Lo privado mejor no :-)

Sé que las teclas de curva elíptica son más cortas, ¿eso ayudaría?

No tiene que ser súper seguro (lo que probablemente sea imposible), pero es lo más seguro posible con esta limitación.

Bonus: Es posible utilizar resultados de firmas aún más cortos, como por ejemplo 16 bits. Mi enfoque es tener varias firmas en el resultado para poder marcar solo una y usar otra clave pública más adelante.

Bonus 2: La implementación debe ser relativamente fácil de codificar con bibliotecas bien disponibles para Java / Android y PHP.

    
pregunta Alex 14.05.2017 - 17:28
fuente

0 respuestas

Lea otras preguntas en las etiquetas