¿Quién aprueba mi clave pública en la red Ethereum?

En un enfoque de PKI, una autoridad de certificación (CA) aprueba una clave pública de manera centralizada. Sin embargo, dado que Ethereum es una red descentralizada, ¿cómo se aprueba la validez de mi clave pública? O, en general, ¿hay un proceso de aprobación de claves públicas? Y si no, ¿eso no causa ningún problema de seguridad? ¿Cómo se genera una clave pública/privada en Ethereum? ¿Hay alguna forma de evitar que un usuario genere demasiadas claves públicas?

¡Gracias!

Respuestas (1)

Ethereum no es su infraestructura PKI típica.

La clave pública se deriva de forma determinista de la clave privada: la misma clave privada siempre conduce a la misma clave pública. La clave pública no está "validada" en ese sentido por ninguna autoridad, siempre es válida. La clave privada se puede elegir con cualquier medio.

Además, la clave pública se utiliza para generar una dirección pública de forma determinista.

Nada impide que un usuario genere varias claves públicas. Como no se validan de ninguna manera, no hay gastos generales en la generación de "demasiadas" claves públicas. El sistema ni siquiera sabe qué claves públicas se han generado; solo tiene registros de qué direcciones públicas se han utilizado para las transacciones. Por lo tanto, nada le impide enviar una transacción a una dirección aleatoria: no tiene forma de saber (sin verificar si ha emitido transacciones desde esa dirección) si alguien posee la clave privada correspondiente o no. Si elige la dirección al azar, es muy poco probable que alguien tenga una clave privada que resulte en esa dirección.

Hay muchos artículos más detallados en línea sobre la generación de clave privada/clave pública/dirección pública. Aquí está el primer resultado de Google: https://medium.freecodecamp.org/how-to-create-an-ethereum-wallet-address-from-a-private-key-ae72b0eee27b