Los titulares de tokens DAO que se separaron del DAO principal en un DAO secundario habrán movido los tokens (DAO) y los éteres correspondientes (ETH) al DAO secundario.
Como estos titulares de tokens DAO tienen un saldo de DAO cero en The DAO, el contrato de retiro no se puede utilizar para convertir los DAO en ETH.
¿Cómo obtengo un reembolso por mis tokens The DAO que se dividieron en un DAO secundario?
Ver también:
En el bloque de bifurcación dura #1,920,000, el saldo ETH de The DAO y sus DAO secundarios (que incluye el saldo de la cuenta extraBalance) se transfirieron al contrato de retiro .
Inmediatamente después de la bifurcación dura, en el bloque n.º 1.920.090trusteeWithdraw()
, se llamó a la función del contacto de retiro en esta transacción para transferir 463.798,08818109 ETH a la billetera multigrado TheDAOCurator .
El saldo actual de la billetera TheDAOCurator es 463,859.030790534 ETH ($5,802,876.48).
Si ha ejecutado una división legítima de The DAO, su saldo de DAO se ha movido al DAO secundario y su saldo de DAO en The DAO se pone a cero. Como su saldo de DAO en The DAO es cero, no podrá convertir sus DAO en ETH usando los procedimientos descritos en ¿Cómo convierto mis tokens de The DAO en ethers usando el contrato de retiro después de la bifurcación dura? .
Puede encontrar una propuesta para reembolsar los divisores DAO secundarios en github.com/dsystems-io/childDaoRefund . Y se ha realizado la primera devolución para una prueba inicial.
Véase también The DAO's Edge Cases Multisig (Post Hard Fork) .
Se han producido algunos reembolsos DAO divididos: 0x422fbb5913e5c5a2cbd731246b62d9fbba0aadffb4f3e91540b76bbb528ee19b . 5.001 ETH reembolsados por TheDAOCurator a 0x0e0e733dd24168d85ecb5a62bb13385d31edf761 .
Para obtener un contrato de muestra, consulte Reembolso de la propuesta n.° 52 .
@ledgerwatch ha estado trabajando arduamente en #child_dao_community@thedao.slack.com en el progreso de los reembolsos DAO divididos y tiene el siguiente mensaje Si estuvo en el DAO y se dividió, y su childDao se vio afectado por hardFork :
Si estuviste en splits de una de estas propuestas: 7, 10, 20, 23, 26, 28, 31, 37, 54, 57, 61, 65, 66 (pre-ataque), por favor envíame un mensaje privado aquí lo antes posible , citando el número de propuesta. Responderé con instrucciones sobre cómo recibir su Ether de vuelta.
Si estuvo en divisiones de las propuestas 35, 36, 53, 62, 67, 68, 70, 71, 73, 76, 87, esté atento a mi próxima publicación en este subreddit, en los próximos días publicaré lo que el plan es devolver Ether.
Si estuvo en 69, 74, 78, 81, 94 (DAO secundarios que contienen contribuciones de divisiones reentrantes), tenga cuidado con mis publicaciones también, la publicación sobre eso llegará un poco más tarde, muy probablemente en unos días.
Se publica mucha información en Slack, pero agradezco que mucha gente no vaya allí, así que me pondré en contacto contigo aquí.
Segundo mensaje de @ledgerwatch Si estaba en el DAO y se separó, y su DAO secundario se vio afectado por HardFork (2) :
Si estuvo en divisiones de una de estas propuestas: 20, 26, 31, 37, 57, 61 (pre-ataque), siga las instrucciones aquí para realizar una autoevaluación: https://docs.google.com/document /d/1kD-K-TAz2be8rI737zc_-xpfKdnFlWrcQbHJop1Zwzs/edit?usp=sharing Cuando haya terminado, envíeme un mensaje privado, indicando el número de propuesta, y Ether se enviará a su contrato de reembolso en breve.
Si estuvo en splits de las propuestas 35, 36, 53, 62, 67, 68, 70, 71, 73, 76, 87, siga las instrucciones en este documento para verificar cuánto recibirá (y hágamelo saber en un mensaje privado o público si algo parece incorrecto): https://docs.google.com/document/d/1qIudT496M--pmavVXaQC4cVgJQG0XkDY-3crglPDjrI/edit?usp=sharing La verificación debe realizarse dentro de los próximos 14 días, después de ese tiempo, si no se encuentran problemas, el contrato de 'Reembolso masivo' descrito en el documento, se cargará con Ether y estará disponible para retiro. Por tanto, la fecha provisional de carga es el 6 de septiembre.
Si estuvo en 69, 74, 78, 81, 94 (DAO secundarios que contienen contribuciones de divisiones reentrantes), esté atento a mis publicaciones en este subreddit, la publicación sobre eso llegará un poco más tarde, muy probablemente en unos días.
Se publica mucha información en Slack (canal #child_dao_community), pero agradezco que mucha gente no vaya allí, así que me pondré en contacto contigo aquí.
Póngase en contacto con él en reddit o slack si está involucrado en una de las divisiones enumeradas anteriormente.
De @ledgerwatch en Lo último sobre childDAO y reembolsos extraBalance :
Descargo de responsabilidad : la información a continuación es el plan actual, según mi conocimiento, pero este plan puede cambiar y puede haber cambios o demoras.
ChildDAOs PRE-ATTACK : Solo quedan 4 childDAOs no reembolsados: 20, 31, 37, 57. El importe total a reembolsar es de 87 ETH. Si tiene tokens en alguno de estos childDAO, envíeme un mensaje privado citando el número
ChildDAOs POST-ATTACK sin reingresos : 35, 36, 53, 62, 67, 68, 70, 71, 73, 76, 87. Actualmente la devolución está prevista para mañana. El contrato de reembolso está aquí: http://etherscan.io/address/0x3da71558a40f63b960196cc0679847ff50fad22b Para usarlo, debe llamar a la función 'retirar', pasando la dirección de su childDAO como argumento. Puede buscar la dirección de su childDAO en el código fuente. La nueva característica de etherscan, en la pestaña 'Leer contrato', le permite buscar rápidamente cuánto recibiría a cambio. El importe total a enviar a este contrato es de unos 21'395 ETH
ChildDAO POST-ATTACK con reingresos : 69, 74, 78. Solo hay 5 direcciones que califican para el reembolso, esas son las direcciones que no usaron reingresos en su división. Los propietarios de los 2 ya han confirmado criptográficamente que están de acuerdo con que el reembolso se envíe directamente a estas direcciones (confían en que estas direcciones no son vulnerables a posibles repeticiones). Las 3 direcciones restantes son:
0x5b5d8c8eed6c85ac215661de026676823faa0a0c 0xab9acc3c451e43e18dd61ab11048c07b74c99eee 0xe1e278e5e6bbe00b2a41d49b60853bf6791ab614
Si controlas alguna de estas 3 cuentas, envíame un mensaje privado y te pediré una confirmación. Actualmente no hay una fecha establecida para estos reembolsos, pero se iniciarán muy poco después de la ronda anterior de reembolsos, es decir, poco después del 6 de septiembre.
Es posible que desee transferir sus ETH después de haberlos retirado. Para evitar la reproducción de su transacción de transferencia ETH en la cadena Ethereum Classic sin bifurcación, consulte Cómo enviar éteres condicionalmente a otra cuenta después de la bifurcación para protegerse de los ataques de repetición .
Citando a GrifffGreeen en reddit.com/r/ethereum - Curator Multisig: anuncio de tokens extraBalance y childDAO a principios de la próxima semana con fecha del 21 de julio de 2016:
Espere una actualización que detalla cómo las personas que enviaron ether a los titulares de tokens extraBalance y childDAO podrán reclamar su ether a principios de la próxima semana.
Para extraBalance: probablemente será un contrato inteligente que permitirá a cualquiera que pagó en extraBalance reclamar el éter que le enviaron, con o sin tokens DAO.
Los poseedores de tokens childDAO también pueden unirse a #child_dao_community en The DAO's Slack para mantenerse actualizados sobre los desarrollos.
Entonces, si ha ejecutado una división legítima de The DAO, únase a la #child_dao_community en thedao.slack.com y comuníquese @griff
para proporcionar detalles de su división, incluidos:
- Divida los DAO a los que se unió (números de propuesta).
- Dirección de su hijoDAO
- Direcciones que solías dividir.
- Cuántos tokens DAO quemó cada dirección.
- La mejor forma de contactarte :slightly_smiling_face:
- Cualquier otra información relevante que pueda ayudar (¿envió ETH como depósito de propuesta? ¿Hay alguna dirección a la que desee que se envíen todos los ETH?)
Fuente: @griff
en #child_dao_community en thedao.slack.com
Aquí hay una propuesta de reembolso BORRADOR actualizada para reembolsar los divisores DAO secundarios de github.com/dsystems-io/childDaoRefund :
niñoDaoRetirar
Un conjunto de contratos para retirar ETH de los childDAO que se separaron inocentemente del contrato DAO principal. Según estos contratos, el ETH estimado adeudado a divisores inocentes (aquellos que llamaron
splitDAO()
sin reingreso) es 112,164.96789251 ETHRecursos
5 clases de childDAO
- Niños seguros : divisiones que pudieron ejecutar propuestas para retirar su ETH antes de la bifurcación en el bloque 1920000. No tenemos que preocuparnos por esto, ya que su ETH se retiró con éxito.
- Trusted Token Children : Divisiones que ocurrieron antes del primer ataque de reingreso y nunca se unieron a través de un ataque de reingreso. Por lo tanto, podemos confiar en que sus tokens representan 1:100 ETH/cDAO.
- Proporción de tokens secundarios no confiables: se divide con tokens en los que no se puede confiar para representar 1:100 ETH/cDAO. Cada uno llamó
split()
después del ataque de reentrada y, por lo tanto, tienen una relación < 1:100 ETH/cDAO. Sin embargo, NO se unieron mediante un ataque de reentrada.- Proporción de tokens no confiables con niños de reingreso: se divide con tokens que no representan 1:00 ETH/cDAO pero que también se unieron a través de ataques de reingreso.
- Tokens secundarios no válidos : tokens childDAO creados en su totalidad a través de ataques de reentrada y, por lo tanto, no tienen valor ETH.
Clase 1 - Niños Seguros
Podemos asumir con seguridad que los DAO de Clase 1 son seguros y no necesitan una solución. Esto incluye las siguientes divisiones:
- Propuesta 1 -- Retiro ejecutado
- Propuesta 4 -- Retiro ejecutado
- Propuesta 8 -- Retiro ejecutado
- Propuesta 13 -- Retiro Ejecutado
- Propuesta 14 -- Retiro ejecutado
- Propuesta 18 -- Retiro Ejecutado
- Propuesta 19 -- Retiro Ejecutado
- Propuesta 22 -- Retiro Ejecutado
- Propuesta 32 -- Retiro Ejecutado
- Propuesta 33 -- Retiro Ejecutado
- Propuesta 45 -- Solo dividir 1 Wei
Clase 2 - Niños token de confianza
Dado que estas divisiones tienen una relación de token ETH/cDAO constante, podemos simplemente incluir estos DAO en la lista blanca y retirar el ETH del titular del token de manera adecuada, de manera similar al contrato principal de retiro de DAO .
Según este contrato, se deben los childDAO incluidos: 69,704.90047138669 ETH
Retiro de niño de confianza.sol
Utiliza una lista blanca de DAO infantiles de confianza para retirar ETH destruyendo tokens en cada niño. Estas direcciones se compilaron ejecutándose
getNewDAOAddress()
en el DAO original para las propuestas 1-300 y examinando las transacciones para cada childDAO. Solo se incluyeron los childDAO que no pudieron ejecutar propuestas para retirar ETH antes de la bifurcación dura. Todas las llamadas asplitDAO()
fueron acreditadas con 1 ETH por destruir 100 tokens DAO.La lista blanca incluye:
- Propuesta 7
- Propuesta 10
- Propuesta 16
- Propuesta 20
- Propuesta 23
- Propuesta 26
- Propuesta 27
- Propuesta 28
- Propuesta 29
- Propuesta 31
- Propuesta 34
- Propuesta 37
- Propuesta 39
- Propuesta 41
- Propuesta 44
- Propuesta 52
- Propuesta 54
- Propuesta 56
- Propuesta 57
- Propuesta 60
- Propuesta 61
- Propuesta 63
- Propuesta 64
- Propuesta 65
- Propuesta 66
Clase 3: niños de proporción de tokens no confiables
Como estos tokens no son consistentes en su relación ETH/cDAO, podemos determinar la relación cDAO/ETH legítima de cada childDAO en función de la cantidad de tokens DAO que destruyeron inicialmente al llamar
splitDAO()
. Estos childDAO no se unieron a través de ningún ataque de reingreso, por lo que sus tokens son válidos, excepto por la proporción de ETH que representan.Según este contrato, a los childDAO incluidos se les deben 14.973,629251125047 ETH .
untrustedChildWithdraw.sol
Basado en trustChildWithdraw.sol con la complicación adicional de que cada childDAO tiene un token multiplicador individualizado. Este multiplicador se determinó usando la siguiente fórmula
( (DAO / 100) / ETH )
. DondeDAO
está el número de tokens DAO quemados para crear la división yETH
representa la cantidad de ETH enviada al childDAO como resultado de la división, calculada con 9 decimales. Todas las subsiguientes divisiones en un childDAO tienen el mismo multiplicador.Lista de splits que necesitan un cálculo individualizado de ETH basado en tokens DAO quemados al llamar
splitDAO()
:
- Propuesta 35 - Multiplicador de Tokens : 1.458321331
- Propuesta 36 - Multiplicador de Tokens : 1.458321331
- Propuesta 53 - Multiplicador de fichas : 1.399760834
- Propuesta 62 - Multiplicador de fichas : 1.457994374
- Propuesta 67 - Multiplicador de fichas : 1.457994374
- Propuesta 68 - Multiplicador de fichas : 1.146978827
- Propuesta 70 - Multiplicador de fichas : 1.457994374
- Propuesta 71 - Multiplicador de fichas : 1.458321336
- Propuesta 73 - Multiplicador de fichas : 1.458307000
- Propuesta 76 - Multiplicador de fichas : 1.458328768
- Propuesta 87 - Multiplicador de fichas : 1.458376290
Clase 4: proporción de tokens no confiables con niños de reingreso
Estos childDAO también tienen una proporción de tokens que no son de confianza y se unieron a través de un ataque de reingreso. Aquí intentamos retirar ETH de estas divisiones individualmente en función de la cantidad de tokens DAO que quemaron.
El valor total de ETH adeudado a los divisores en este contrato es 27,486.438169998 ETH .
infiltratedChildWithdraw.sol
Este contrato compila la lista de divisores inocentes (sin reingreso) de childDAO que se unieron a través de otros divisores de reingreso (sombrero blanco y negro). Luego retira cada cuenta inocente cuando se envía suficiente ETH desde la dirección del curador. El contacto logra esto de la siguiente manera:
- Incluye en la lista blanca las 7 direcciones que se dividieron inocentemente en DAO atacados por reingreso usando una matriz.
- Construye una matriz correspondiente que asocia la cantidad (en Wei) que se debe a cada dirección por la quema de tokens DAO en el
splitDAO()
proceso. Aquí calculamos 100 DAO quemados = 1 ETH adeudado.- Utiliza una sola función
withdraw()
que itera sobre la lista blanca y envía a cada dirección la cantidad adecuada de ETH.- Después de llamar con éxito,
withdraw()
el estado del contratoisWithdrawn
se cambia permanentementetrue
para evitar una duplicación accidental.- Restringe la llamada de
withdraw()
solo a la dirección multisig de Curator y solo si la cantidad enviada es suficiente para pagar a TODOS los destinatarios. De lo contrario, toda la transacción fallará conthrow
. También el incumplimiento de cualquiersend()
testamentothrow
.La siguiente es una lista de childDAO infiltrados y las
splitDAO()
transacciones inocentes correspondientes dentro de cada uno de ellos que se usaron para construir el contrato:
- Propuesta 69 -- Ataque de reingreso
- Sin reingreso ( 200 000 DAO ): https://etherscan.io/tx/0x46b254aef57a60adc5a152274a68631360d3732cbe051ed83de52e23ba2cdef2
- Sin reingreso ( 2500 DAO ): https://etherscan.io/tx/0xb9b862abebc225eb934372a4f77a42798ba1ae95167058e19b1e0333e879b4a8
- Sin reingreso ( 40 000 DAO ): https://etherscan.io/tx/0xf1b15c716d7e3f10aa5c2b06a09564dbd736550ab0f35853546c524192e81659
- Propuesta 74 -- Ataque de reingreso
- Sin reingreso ( 123 DAO ): https://etherscan.io/tx/0x4ca7b9502471147598776904c12068450a8f0701e5c3439fa485723b6ad1db28
- Propuesta 78 -- Whitehat DAO 1
- Sin reingreso ( 2000 DAO ): https://etherscan.io/tx/0xc4f2702854b501a8a11a7364862b11c954395dc6ba7896caf17f739df5092b4a
- Sin reingreso ( 3500 DAO ): https://etherscan.io/tx/0xeeab005460fbcdae44b324d25018334a7c83e62ee4435211299c68b7f0385b68
- Sin reingreso ( 600 DAO ): https://etherscan.io/tx/0x56ab6190b5425394834e22bf71176452c80d8f0bb74eed64f7a2219d437b4f73
- Sin reingreso ( 1000,98 ): https://etherscan.io/tx/0xcf53895553f95e304914cfee285ea8b9e24c83eb49b4840146be13711a91117d
- Sin reingreso ( 10 DAO ): https://etherscan.io/tx/0x2cc72127f8d0461479b0edbc721dcd96c3465433da942ed7ac155b8d6c9e6ae1
- Propuesta 81 -- Ataque de reingreso
- Sin reingreso ( 60 DAO ): https://etherscan.io/tx/0x754dc701df4a6e1c371bbd90fe8a61cf3c9b34e55dc400d70075993926931812
- Propuesta 94 -- Ataque de reingreso
- Sin reingreso ( 1250 DAO ): https://etherscan.io/tx/0xdfe114e03c853d841d5d30b83155773ff0b7386ecd4be5a2dfa95f974421c30e
** NOTA: Los valores de las transacciones en la Propuesta 78 se han sumado dentro del contrato porque todos pertenecen a la misma dirección. **
Clase 5 - Fichas secundarias no válidas
Los siguientes elementos secundarios se excluyeron explícitamente porque todas las transacciones divididas fueron ataques de reingreso y, por lo tanto, todos los tokens no son válidos.
- Propuesta 59 -- Blackhat
- Propuesta 85 -- Solo ataques de reingreso
- Propuesta 98 -- Solo ataques de reingreso
- Propuesta 99 -- Whitehat DAO 2
- Propuesta 101 : solo ataques de reingreso
Si nota algún error en estas listas, por favor hágamelo saber. Cualquier otro comentario muy apreciado.
Colaboradores
No podría haber sido posible sin la ayuda y la validación de todos en el canal #child_dao_community en The DAO Slack
usuario3575
privacidadisahumanright.eth
approve
ywithdraw
hay 4 métodos enumerados en ethereum.stackexchange.com/questions/7204/… . MyEtherWallet es el más simple. Si se dividió, los desarrolladores deberían proporcionar más detalles esta semana.