LibTomCrypt teclas ECC extrañas

3

Recientemente comencé a trabajar con la biblioteca LibTomCrypt porque decía ser una biblioteca C bien documentada para comenzar con la criptografía de curva elíptica.

En mi primer pequeño programa, creé una clave ECC que luego intenté imprimir. Por lo tanto, utilicé ecc_make_key y la función ecc_export.

unsigned char buf[4][4096]

// I do this for the private and public Key
ecc_export(keyBufPriv[0]  /*keyBufPublic[0]*/, &x, PK_PRIVATE /* PK_PUBLIC */, &keyA)
for (int i = 0; i < x; i++) {
    printf(" %d ", keyBuf[0][i]);
}

Al imprimirlos, me pregunté por qué la clave pública y la clave privada parecen ser muy similares. Hay algunos programas de prueba entregados con la biblioteca que muestran el mismo comportamiento. Agregué algunas líneas de impresión similares a las anteriores en el programa de prueba.

salida de mi programa:

salidadetestprogram:

Debido a la similitud entre la clave pública y la clave pública, me pregunto si todo lo que funciona en la biblioteca libtomcryp se ejecuta como debería para crear un ECC-Crypto seguro

    
pregunta SebNag 13.10.2015 - 12:55
fuente

1 respuesta

4

Como puede ver en enlace es ASN.1 / DER codifica los datos que está imprimiendo, que contienen los mismos datos además del parámetro 'k'.

Entonces, sí, es normal que las claves privadas y públicas se vean similares.

Para decodificar esto, puede instalar dumpasn1 que puede analizar y mostrar los datos ASN.1.

Si desea obtener más información sobre cómo usar la API ecc, puede consultar enlace

No es muy obvio Y no es exactamente la misma API, ya que no todos los cambios de Karel se combinan en libtomcrypt principal (todavía), pero debería darle una idea.

    
respondido por el jaeckel 13.10.2015 - 18:05
fuente

Lea otras preguntas en las etiquetas