Agusx1211 - Nobody can handle the 24 words -- A case for contract wallets

ETH Latam Talks · 18 Aug 2022 · 28:51

Agusx1211 argues that nobody can reliably handle a 24-word seed phrase and makes the case for contract wallets. The talk was given at ETHLatam in Buenos Aires in August 2022 and considers smart contract accounts as a safer and friendlier alternative to wallets that depend on a single secret phrase.

Speakers

Topics

From ETH Latam Talks, hosted by ETH Latam.

Transcript

[Música] buenas bueno importante la presentación anterior vamos a ver cómo cómo levantamos Bueno quiero hablar de una cosa que veo como que ignoramos un poco pero que nos pasa que es un problema que está presente que a mí me vuelve loco que lo que lo veo mucho y es esto tenemos que todo el tiempo todo todo lo que hacemos tiene un primitivo un primitivo que es clave

todo lo construimos arriba de eso que son esas 24 palabras esas 24 palabras que son nuestras claves privadas Que prácticamente nadie entiende Cómo manejarlas y bueno nos lleva algunas situaciones interesantes Así que vamos vamos a arrancar bueno no esto no lo vemos esto es una cosa que no nos damos cuenta estamos ahí un wasi y ahí en el agua se va calentando pero como nosotros estamos acostumbrados como estamos hace cinco seis tres cuatro años manejando estas claves privadas de esta manera lo vemos como normal pero es un caos es un caos que tiene muchas consecuencias así que para para poder

revisarlo Vamos a ponernos un poco en la mente de alguien que entra a cripto ahora qué es lo que tiene que hacer Entonces empezamos por lo básico crear una wallet tenemos que elegir una wallet Hay un montón de opciones bueno OK Vamos creamos una wallet lo primero elegir una patchword Ok un usuario nuevo no entiende nada de cripto elegir una password son una cosa que normalmente usamos entonces elegimos una eso o alternativamente una cosa así va a funcionar No o sea

es lo que es lo que se hace siempre y ahora tenemos las 24 o 12 palabras dependiendo de la wallet y las tenemos que anotar es muy importante si alguien ve esto nos pueden robar absolutamente toda la plata con solo verlo con solo recordarlo una cámara lo que sea es el talón de Aquiles de mi wallet y lo tengo que anotar bueno tenemos más o menos dos opciones como la contraseña Probablemente lo que vaya a hacer un usuario nuevo un post monitor excelente nada puede salir mal y si no la alternativa más sensible a eso que es

anotar la palabra en un papel meterlo en una botella esa botella en una caja es de madera la cerramos la clavamos para que no se pueda abrir metemos eso en una caja fuerte también la cerramos y lo enterramos en el jardín también las dos cosas son bastante accesibles funcionan Pero bueno creo que se empieza a notar de qué es lo que quiero hablar es muy rápido disoltear a dos casos uno es los hábitos que tenemos del mundo tradicional donde asumimos cosas del mundo tradicional como que capaz tener una cosa con una frase en un post en el monitor No pasa nada Y en el otro Es sobre pensarlo

agarramos las 24 palabras y nos volvemos locos alrededor de eso a ver cómo cómo lo almacenamos Bueno más o menos es la situación actual Pero bueno sigamos con el usuario que recién arranca siguiente paso muy importante olvidarse de que compramos cripto y esperamos más o menos hasta el año 2035 y en el año 2035 estamos ahí en nuestro Pot comiendo nuestros Grillos ahí mirando el metaverso y de golpe en la tele sale que éter está 75 mil dólares y te acordaste te acordaste que tenés cripto Entonces vas a buscar tu wallet y cuando vas a buscar tu wallet no la podés encontrar porque metiste la clave en una botella en una caja en una

caja de seguridad y la enterraste en el jardín y no tienes ni idea Dónde está y si la encontrás no te vas a acordar la contraseña y no es bueno estamos en problemas y esta situación no es bueno porque es algo que se encuentran muchos usuarios Y no sólo a los usuarios nuevos tiene alguna vez me preocupa un poco pero tiene alguna vez perdió fondos porque se olvidó la clave o perdió la el acceso a la wallet o porque o conocen a alguien que le haya pasado bueno mucho más de lo que considero hacer tal Entonces nos pasa todos me ha pasado a

mí así que bueno le pasa a la gente nueva Qué le pasa a la gente nueva que tienden a asumir que el contexto cripto es parecido a lo que ellos conocen se te pierde la contraseña pones me olvidé la contraseña alguien lo va a resolver como mucho irás a la oficina de meta más no se lo toman seriamente es esto no es una crítica contra la persona pero es normal cuando alguien ve algo nuevo y lo está empezando a explorar no se va a sentar a hacer un research a romperse la cabeza de cómo hay que hacerlo correctamente sino que lo van a hacer así nomás como como te lleve el camino y también depende mucho de tener a alguien

al lado que lo lleve de la mano y que les explique que las 24 palabras son importantes que no le saques una foto que no subas en instagram todo eso Y eso no escala O sea si queremos cripto para el mundo en general no podemos pretender que que esto aplica todo el mundo y bueno y los pros También tenemos la cabeza en otro lado y en otro lado por ejemplo en estamos preocupadísimos porque nos hackeen Claro si me van a hackear entonces tengo que agarrar la contraseña y la escribo un código en un papel entonces las a en realidad le pongo una Z y los números les resto 4 es imposible y capaz a veces un montón de cripto Pero

sos un mono como resto y te vas a acordar las mismas cosas y te vas a olvidar de las mismas cosas Entonces entonces esquema que estás haciendo para almacenar tus claves privadas a largo plazo que es muy muy avanzado y muy inteligente Te lo vas a olvidar y bueno Y también hay que tener en cuenta que la gente que está en cripto en el día a día hasta ahí a las chapas está que que salen que defi esto que esto lo otro que brilleo acá que voy acá Entonces esto también hace que pierdas un poco no no tenés la cabeza fría estás apurado Para no perderte el Drop del nft y bueno en mi opinión tampoco es que tengamos buen offset operaciones Security Me parece que todos se creen

que sí pero en la práctica lo que uno siente como Qué es lo seguro en la realidad no es seguro es simplemente complicado Bueno yo creo que este caso lo conoce la mayor parte de la gente es un flaco de Inglaterra pobre que compro bitcoin y nos puso en un disco duro se olvidó de que los tenía tiro el disco duro a la basura y el día de hoy lo está buscando en un vertedero es triste un poco gracioso Pero bueno Son 350 millones de dólares es una cosa que te marca toda la vida y no es culpa de la persona es una cosa que lo escucho muchas veces y es bueno el usuario tiene

que prestar atención pero pero no funciona así si realmente queremos esto que sea mainstream no te puede llevar a esto Bueno entonces hay una mejor forma de manejar cripto Sí hay una mejor forma un Custodio es muy fácil de usar usuario contraseña son cumples muy importantes tienen un paso un botón que te da la contraseña para a veces por email incluso así puedes decir nada era Pepito 123 no te pueden hackear nunca y no tener que preocuparte por las 24 palabras no

bueno Ok sigo sigo sigo ok Un poco mejor un poco vamos a proponer algo mejor Hardware yo estoy seguro que todos están pensando en esto pero cómprate entre eso ya está y es un poco un poco está bien o sea cuando alguien está en cripto un trésor o un Blazer parece la solución porque tenemos la mentalidad del washi que está en el agua hace un montón de tiempo y un trésor tiene tiene su lugar si estabas manejando una cantidad de fondos importantes es importante tenerlo pero hay que entender que son caros probablemente para mucha gente en esta

habitación no y pero son caros los tres zorros leds para una persona común que va a invertir 100 dólares quiere Probar con un efectivo que de jugar algún juego no se puede ir a comprar un trozo también son muy difíciles de usar todavía más difíciles que nada más entonces cierras empiezas no vas a estar entendiendo Cómo manejar un ledser correctamente Y todavía tenemos 24 palabras Así que no sé ni para que lo puse acá y una cosa que tienen los Hardware wallets que nadie nunca menciona pero que son un poco borde en el tema de privacidad que no deja de ser un cartel físico que dice esta persona tiene cripto y cuando están en un aeropuerto capaz en 10 años en un

en un país donde las libertades civiles capas son un poco dudosas ese trésor es un punto débil en tu situación pero bueno son importantes pero nos vamos a olvidar y esto también para hacer hincapiedo salió mínimo en Argentina capaces actualizado pero es 45 mil pesos un 3 solo el simple citó 35 mil pesos no le pueden decir a alguien comprarte un trésor A menos que sea una persona que entienda que que tenga una cantidad de fondos en cripto importante y y que valga la pena para el usuario común no es una opción Bueno podemos hacer un poco mejor Smart contractuales que es lo que quiero presentar voy a hacer una explicación

muy muy para arriba de lo que son no voy a entrar mucho detalle pero la diferencia es que una wallet como meta más trans wallet Rainbow y hay muchas otras son un lo que vendría a ser un rapper de una cosa muy simple que es una clave privada y una clave pública que yo creo que la mayoría entendemos que son esas cosas y te dan la interfaz para que pueda firmar mensajes firmar transacciones enviar todo que es enviar editar y punto las Smart contractuales tienen arriba de eso un montón de tiene un contrato inteligente con un montón de código que le permiten hacer más cosas tener múltiples claves tener límites de gasto tener métodos de recuperar la wallet si lo perdés y se pueden diseñar de forma

totalmente descentralizada entonces puedes tener un poco la experiencia del Custodio en el sentido no de que perdés tu plata sino de que de fácil de usar tienes un usuario una contraseña capaz un segundo factor pero de una forma descentralizada quiero hacer un pequeño disclaimer porque voy a hablar de muchas cosas de seconds es una Smart contra wallets hay otras Acá hay un par de lobos nosis Bueno sí Queens pero pero hay muchas y lo que voy a decir aplica casi a todas muchas lo hacen de maneras distintas Pero bueno yo representos y muchas cositas son de sequence b2 que todavía

no está Live Así que si si alguna cosa no Que digo no la encuentran es por el b2 Pero bueno vamos a poner un caso de porque Smart contra wallets key rotation me imagino que el título da a entender a dónde voy pero cuando ustedes configuraron su wallet por primera vez vieron estas 24 palabras las anotaron prestando atención sabía una cámara mirando el papel o la pantalla tipo una cámara de un celular una computadora una cámara de seguridad un amigo que justo pasaba esto probablemente me pasabas un montón de tiempo capaz un año dos tres yo yo personalmente no me acuerdo cuando instalan paquetes de npm o de

cualquier distribución de Software que usen muchas veces instalan código que capaz no conocen de dónde vienen en la misma máquina Donde tienen las claves o donde manejan las claves o cuando instalan actualizaciones de seguridad había una actualización de seguridad tiene arregla vulnerabilidad críticas eso implica que había vulnerabilidades críticas en tu teléfono que no estaban arregladas o dejas tu computadora suelta en la oficina y te vas se quedó desbloqueada me olvidé o la persona que limpia capaz miro tus 24 palabras o te robaron el teléfono que es el caso más extremo todas estas cositas son eventos que pueden vulnerar estos tus claves

privadas tanto como el dispositivo que las contiene como tu backup que son las 24 palabras anotadas en un papel y todos estos escenarios se van acumulando en cualquier pudieron haber pasado hace meses capaz todavía no viste las consecuencias O sea no te robaron pero no tenés la certeza de que tus claves privadas siguen privadas y esto contando con el tiempo Cuanto más tiempo usas la misma wallet más de estos eventos existen ahora cuál es la solución a esto simple o sea si no No uses 10 años la misma Clave privada eventualmente Crea una nueva pasada tus fondos ahí de esa forma tienes un poco más control de Cuál es la

historia de esta Clave privada cuál es el problema que tu wallet se vea así y hoy etimo está así y justo ahí te robaron el teléfono entonces tenés que hacer algo con eso Ah y una cosa más Estos son tus nfts Entonces tenemos un tema tenés tu teléfono con tu meta más tenés tu contraseña muy buena unos tres cuatro cinco seis siete ocho yo creo que el malviviente que se llevó mi teléfono no se va a dar cuenta sabe lo que es meta más capaz tengo suerte y no pasa nada porque si tengo que ponerme a migrar todo esto una wallet nueva y me va a costar como 5000 dólares y más es

más sencillo lo que realmente tengo Y me va a tomar un montón de tiempo Entonces nada no lo haces hacer un retation en una iOS ahí es muy costoso porque cada asset lo tenés que migrar manualmente a una nueva wallet no es fácil porque no hay una herramientas que decís Bueno quiero migrar a una wallet nueva toma un montón de tiempo y directamente son dos pasos simplemente vas a tus sesiones está tu teléfono tocas Sign out designate Y qué pasa hablo mucho de la ciudad y poco de las Smart contra wallets porque en la

realidad son así de simples de usar es lo que un usuario Espera que si tenés un celular y ese celular fue comprometido por un robo o lo que sea eliminarlo de tu superficie de ataque sea simplemente entrar a tu settings desde otra interfaz como tu computadora y desactivarlo Y eso es una ventaja muy importante las Smart contra iguales hacen un key es muy pocas transacciones muchas veces una por cadena entonces Si usas polígono un email son dos transacciones Bueno lo puedes programar para después voy a hablar de eso en un ratito y es muy simple de hacer y es importante es lo natural cuando pasa vas a ser lo natural que es desactivar el dispositivo

bueno en una temática similar como es abrir pasar tu cuenta un dispositivo nuevo en metamask una cosa muy común que te compras un teléfono nuevo o lo que sea y quieres pasar tu cuenta que ya existe Tenés que ir a Security tienes que desbloquear tus claves privadas ahora tus claves privadas esas palabras tan importantes que nadie tendría que ver están ahí la cualquiera las puede ver así que hacerlo medio escondido y después tiene que ir al otro dispositivo y escribir esas palabras o copiarlas Y pegarlas peor probablemente por WhatsApp mucha gente para para tener acceso a la misma wallet Y esto es terrible

es terrible por por muchos motivos Pero uno de los motivos es que el usuario no se puede acostumbrar a esto es muy peligroso uno de los hacks más comunes es hacerte creer que estás restaurando tu wallet en algún lado y en realidad estás dándole estas claves esta Clave privada a un atacante y es muy fácil equivocarse y pensar que estás en una interfaz de meta más genuina cuando en realidad no lo es entonces este flujo no debería existir y no debería existir porque es inseguro y no debería existir porque enseña a los usuarios a hacer algo extremadamente peligroso que nos marca contra wallet depende mucho del diseño cada diseño es distinto pero en el caso de sequens podés

empezar el login de la wallet usando social media Esto no es que no Esto no es centralizado tal vez centralizado pero no lo es que es lo importante O puedes escanear un QR y agregarse un dispositivo que debería ser un flujo un poco más natural de lo que espera el usuario y bueno hablando un poco más de esto de compartir claves esto también hoy ten Esto me da más entonces decís voy a probar otra otra wallet voy a probar Rainbow entonces Rainbow que te dice Ah mira es muy fácil solo copia tu clave pegamela a mí yo la manejo buenísimo después pruebas y haces lo mismo porque no tienes ni idea que estos

peligrosísimos y después pruebas frame porque por qué no si ya lo tienen tres porque tengan cuatro Entonces está perfecto pero un día te despertarás y no tenés nada Y qué es lo que pasa que la clave privada que copiaste y pegaste es la misma en los cuatro lugares y tenés absolutamente cero formas de saber qué es lo que pasó te vas a despertar vas a ver y no vas a tener ni idea qué fue un hacken Rainbow o entraste en meta más en frame fue que te equivocaste en alguna otra parte tu única chance es que sea un problema común que le haya pasado a todos los usuarios de no sé frames entonces puedas saber algo OK Fue frame

pero si no no vas a tener esa información y esto parece un caso muy hipotético pero es exactamente lo que pasó con solana hace unas semanas los usuarios tenían esta práctica de copiar claves privadas de una wallet a otra una wallet fue comprometida y tardaron muchas horas en darse cuenta que es lo que estaba pasando porque nadie entendía que era lo que estaba comprometido Estoy seguro que si nos pasa algo similar a nosotros con metamas y Rainbow por ejemplo la comunidad va a tardar horas en darse cuenta de lo que está pasando porque tenemos esta mala práctica muy muy muy acostumbrada y pasa lo mismo con dispositivos es exactamente la misma situación cuando tienes una clave privada en tu extensión de Chrome y esa misma cuenta la tenés en

el teléfono la clave es la misma si te hackean nunca vas a saber si fue tu computadora o fue tu teléfono con Smart contra cual es esto también es distinto cada dispositivo puede tener su propia clave y esto es importante por varias razones pero bueno en este caso particular significa que podés ver qué es lo que está pasando y si puedes decir Bueno ya me hackearon no importa Bueno sí importa Porque capaz tenés más cosas que las cripto capaz eventualmente quieres tener más cripto o quieres hacer algo para para para lidiar con ese hackeo no pero es importante tener visibilidad de lo que está pasando siempre y no es sólo eso sino que también las mar contra quallet al tener código puede

tener funcionalidades que te protegen ante un caso tan simple como que tu teléfono fue comprometido por ejemplo los Smart control web pueden requerir que dos dispositivos firmen transacciones al mismo tiempo Entonces si si tenés una guardia de mucho valor y crees que tus transacciones estén más protegidas puedes hacer que cuando se hace una transacción en tu Chrome en tu computadora que tengas que ir a tu teléfono y confirmarla Y esto no es solo un mensajito que le está dando tu teléfono Chrome diciendo Sí todo bien mandale sino que tu teléfono está firmando un mensaje junto con tu computadora y el Smart contra que está verificando ambos es una multitud y bueno también lo que significa es que

si tenés por algún motivo está comprometido uno uno de tus dispositivos pues rescatar la wallet Es simplemente eliminandolo qué es lo que vamos antes Bueno me los imagino pensando Ah pero ahora eso significa que cada vez que me lo veo en un nuevo dispositivo tengo que mandar una transacción Y esa idea viene porque muchas par contar Cuáles funcionaban así antes y cuando eso lo combinas con gas muy caro es un problema pero no es necesario esto es una cosa que desarrollamos para sequens pero es algo relativamente simple de implementar y es lo que yo llamo como un sexy y la idea es que cuando vos agregas un

dispositivo vos estás haciendo una acción que no es necesario ejecutarla ya mismo sino que solo es necesario ejecutarla cuando vayas a usar ese dispositivo Entonces en este caso capaces un poco muy complejo fue de mano pero estamos con un teléfono agregando después una Notebook y un iPad y después sacamos el teléfono y después agregamos un texto pensamos cada flecha como el usuario agregando la guareta un dispositivo nuevo después cuando nosotros Hagamos una transacción como enviar Die lo que simplemente tenemos que hacer es agregar las transacciones que ya habíamos firmado antes pasando de un estado al otro y después por último enviamos de ahí cómo lo ves al usuario que ellos se

loguean y no pasa nada no tienen que pagar no tienen que esperar que confirmarse las acciones no tienen que hacer nada por el estilo se ve y siente como una cosa instantánea esto además es una cosa que se puede optimizar aún más en el sentido de que no todos los saltos son requeridos hay veces que por ejemplo en este caso podemos ir de estado a estado c directamente y eso lo podemos evitar hacer la transacción todavía más compacta y capaz esto se ve como un montón de overhead Ok tienes una transacción pero en realidad tienes que mandar dos más pero es importante que gracias a VIP 1283 cuando uno interactúa con las mismas partes de un contrato varias veces si lo

hace todo junto es mucho más barato Entonces el overhead estamos hablando de no sé un 10 15% de overhead no no algo tan grande como se ve en el gráfico y bueno este es cómo queda la guardia después de este caso un par de más de cositas voy a mencionar rápido con las Smart contractuales se pueden hacer muchas transacciones a la vez que es muy bueno si tienes muchos nft no tienes que andar haciendo 10 transacciones para enviarlo puedes mandarlos todos en una si quieres hacer un trading en uniswap puedes hacer el appro y el Trade en una sola transacción es una ayuda mucho más intuitiva también puedes pagar feeds con cualquier token Esto es algo que el usuario común

lo espera tiene si vos le mandas usbc y después lo quieren enviar decirles no en realidad tenés que comprar éter es una cosa que es durísima en la cabeza yo estaba leyendo los comentarios en reddit que tienen árbitron Nova y tener y ellos tienen los puntos de reddit en los bricks y los moons y los usuarios estaban como locos porque ahora tienen que comprar éter para poder mandarlos y es una experiencia horrible no podemos pretender ir al mainstream con esto el Smart contra cual es esto no es un tema y simplemente le puedes parar y leer con lo que quieras en la propia moneda que estás enviando es una opción Y por último bueno puedes subsidiar transacciones y vos como usuario de la dapas lo querés hacer que también puede

ser útil bueno todas mal contra iguales no bueno capaz no quiero quiero ser sincero una de las cosas que es importante entender que las Smart contra cuales son muy buenas Pero agregan complejidad y la complejidad es un vector de problemas no sólo con Smart contra cuales con protocolos de Five y con L2 con lo que sea complejidad es peligroso y hay que tener cuidado y dejar a las cosas madurar y que tengan Battle testing antes de que pongamos cantidades de dinero importantes También es importante entender que las contra wallets tienen un pequeño overhead cuando se hacen transacciones

son un poco más caras puede ser un 10 un 50% depende de la implementación del contexto pero pero es una realidad nosotros trabajamos mucho para mantenerlo lo menor posible y otra cosa que puedes tener problemas de compatibilidad si el programador de la app digamos no no Presta atención y no probó su edad con Smart contra cual es capaz Las cosas no funcionan Entonces es una cosa que no está lista para que todos las empezamos a usar al 100% hoy Cómo ayudar si son desarrolladores agreguen soporte para VIP 1271 es muy importante y hay pinos de 71 les va a

permitir a los usuarios con Smart control firmar mensajes y eso para aplicaciones que requieren firmar mensajes como ofensivo o similares es muy importante sin eso no funciona es una cosa que si quieren fomentar el uso de este tipo de tecnologías y tener más usuarios que puedan interactuar con su app es es importante como changes y custodios por favor se los pido voy a usar esto para repetirlo tres veces acepten transacciones de smart contracts hay muchos exchanges que si mandas un Smart Contract no hacen la transferencia este la cancelen tener que escribir la soporte este es una experiencia horrible es una cosa que

es en este año ya ya está se puede hacer totalmente es técnicamente posible es cuestión de entender como Cómo leer esos logs Y si nos contactan lo hacemos gratis nosotros es muy fácil y como usuario Bueno prueben un Smart contra wallet son muy fáciles de usar son muy cómodas traten de presionar un poco exchanges y dubs para para que le presten un poco más de atención a esta tecnología y es una muy buena opción Si tienen una madre un padre un abuelo una que quiere tiene una idea de quiere que le compres algunos criptos pero no tienen no le podés dar meta más y capaz no querés manejarle las claves porque se siente

poco Genuino se siente como que esos fondos son tuyos un Smart contra wallets es lo mejor de Los dos mundos fácil de usar seguro descentralizado y y accesible bueno esa Esa es mi charla entonces en Twitter y si quieren probar seconds punto x y z le pueden echar una mirada [Aplausos] [Música] [Aplausos] [Música]