De multibit a electrum : tarifa baja y no confirmados de los padres
Hice 3 btc transferencia de mi antiguo Multibit clásico de la cartera de un par de semanas atrás (dec. 11), entonces descubrí que la tasa es demasiado baja para las transferencias a ser confirmado.
Luego he restaurado original de mi cartera en Electrum, y me muestra estos 3 transacciones con diferentes estatus :
- Tarifa baja (44 sat/byte) - 0.0068 btc
- sin confirmar padre (52 sat/byte) - 0.04497458 btc
- sin confirmar padre (19 de sat/byte) - 0.1221 btc
Por desgracia no puedo ajustar la tasa sobre las transacciones, por lo que traté de WASHINGTON al realizar una nueva transferencia de otra cartera que he creado en el electrum a la original de mi cartera, pero sin resultado.
Traté de reproducir el 1 de transferencia, a partir de la original monedero, mismo src/dest y cantidad pero con Mayor Cuota (598 sat/byte)... sin resultado.
Tengo miedo de estar atrapado en esta etapa, no sé qué hacer para desbloquear estas transacciones :( cualquier detallada consejo es bienvenido ! (estoy en OSX, si se le pide).
El envío de esta transacción a través de mi propia Bitcoin Core 0.13.99 nodo:
mensaje de error:
64: demasiado largo mempool de la cadena de
Esto significa que usted está construyendo una larga cadena de transacciones sin confirmar que dependen unos de otros. Espere hasta que los primeros de los que han confirmado antes de crear más.
Si quiero saber el saldo total en todas las direcciones, que puede ser generado en el determinismo de la cartera (como electrum o de la armería).
Tengo el master de clave pública lo que me permite derivar un número infinito de claves públicas.
¿Cuál es el número de direcciones que debe generar para comprobar el saldo ?
Supongo que no puedo parar si la última X direcciones no tienen ninguna de las transacciones.
¿Cuál es el valor de X para el electrum y de la armería (cuando se está recuperando de una copia de seguridad) ?
Se trata de la fiabilidad de la red a otros nodos, la puntuación sigue aumentando el largo de tu nodo es alcanzable.
Tengo una 0.12 completo nodo de la sincronización en podar el nodo.
Esto es lo que siento cuando voy a ejecutar getblockchaininfo
[email protected]:~ $ bitcoin-cli getblockchaininfo {
"en cadena" : "principal",
"bloques" : 276483,
"headers" : 403136,
"bestblockhash" : "00000000000000017871bf646ec12c1e2dedacef87dcd357cea0da1ddb0b64b5",
"dificultad" : 1180923195.25802612,
"verificationprogress" : 0.11950119,
"chainwork" : "00000000000000000000000000000000000000000000084f5ed912538557eaa8",
"podado" : true,
"softforks" : [
{
"id" : "bip34",
"versión" : 2,
"hacer cumplir" : {
"el estado" : true,
"encontrado" : 1000,
"necesaria" : 750,
"la ventana" : 1000
},
"rechazar" : {
"el estado" : true,
"encontrado" : 1000,
"necesaria" : 950,
"la ventana" : 1000
}
},
{
"id" : "bip66",
"versión" : 3,
"hacer cumplir" : {
"status" : false,
"encontrado" : 0,
"necesaria" : 750,
"la ventana" : 1000
},
"rechazar" : {
"status" : false,
"encontrado" : 0,
"necesaria" : 950,
"la ventana" : 1000
}
},
{
"id" : "bip65",
"versión" : 4,
"hacer cumplir" : {
"status" : false,
"encontrado" : 0,
"necesaria" : 750,
"la ventana" : 1000
},
"rechazar" : {
"status" : false,
"encontrado" : 0,
"necesaria" : 950,
"la ventana" : 1000
}
}
],
"pruneheight" : 0 }
Me gustaría entender las nuevas especificaciones sobre softforks. Sé que la identificación es un BIP id. Pero, ¿qué acerca de este bloque de código?
"hacer cumplir" : {
"status" : false,
"encontrado" : 0,
"necesaria" : 750,
"la ventana" : 1000
},
"rechazar" : {
"status" : false,
"encontrado" : 0,
"necesaria" : 950,
"la ventana" : 1000
}
¿Cómo funciona una cartera de convertirse recuperado basado en una semilla frase? Por lo que entiendo, la semilla de la frase es otra forma de representar las claves pública y privada. Desde la dirección de la reutilización es mal visto, y generar nuevas direcciones por cada transacción, ¿cómo una cartera de recuperar todas las direcciones a partir de la semilla de la frase?
edit: me doy cuenta de que yo no podría haber enunciado de esta pregunta tan bien. En esencia, quiero saber los pasos de un monedero tendría que tomar para recuperar todos los fondos sobre la base de una semilla frase.
El problema fue con la Raw de la Transacción he utilizado para la verificación de firmas.
Raw Original De La Transacción
./bitcoin-cli getrawtransaction 4269fdc239d027922dcec96f1ae283dbaff10e2d1bd49605661d091e79714956
01000000017f950ab790838e0c05e79856d25d586823fe139e1807405a3f207ff33f9b7663010000006b483045022100d8629403cd3b49950da9293653c6279149c029e6b7b15371342d0d2ce286c8f2022078787985a644e94fd9246f6c25733336c94af5f00d9d34a07dc2f9e0987ef990012102b726d7eae11a6d5cf3b2362e773e116a6140347dcee1b2943f4a2897351e5d90ffffffff021bf03c000000000017a91469f3757380a56820abc7052867216599e575cddd8777c1ca1c000000001976a914d5f950abe0b559b2b7a7ab3d18a507ea1c3e4ac688ac00000000
El análisis de este manualmente
01 00 00 00 Versión
01 Entrada De Conteo
7f 95 0a b7 90 83 8e 0c 05 e7 98 56 d2 5d 58 68 23 de fe 13 9e 18 07 40 5a 3f 20 7f f3 3f 9b 76 63 (32 Bytes de los Anteriores ID de Transacción)
01 00 00 00 Índice de Salida (vsal índice)
6b secuencia de Comandos de Longitud (107 bytes) (Reemplazar este)
48 30 45 02 21 00 d8 62 94 03 cd 3b 49 95 0d a9 29 36 53 c6 27 91 49 c0 29 e6 b7 b1 53 71 34 2d 0d 2c e2 86 c8 f2 02 20 78 78 79 85 a6 44 e9 4f d9 24 6f 6c 25 73 33 36 c9 4a f5 f0 0d 9d 34 a0 7d c2 f9 e0 98 7e f9 90 01 21 02 b7 26 d7 ea e1 1a 6d 5c f3 b2 36 2e 77 3e 11 6a 61 40 34 7d ce e1 b2 94 3f 4a 28 97 35 1e 5d 90 Script (y Reemplazar este)
ffffffff021bf03c000000000017a91469f3757380a56820abc7052867216599e575cddd8777c1ca1c000000001976a914d5f950abe0b559b2b7a7ab3d18a507ea1c3e4ac688ac00000000 Restantes bytes
01 00 00 00 Anexar SIGHASH_ALL
Sustituir una Parte de la transacción marcados anteriormente con scriptPubKey. No parece haber ninguna razón por la que hacemos esto. Consulte esta discusión:
https://bitcointalk.org/index.php?topic=102487.msg1123257#msg1123257
comprimido pubkey = 02b726d7eae11a6d5cf3b2362e773e116a6140347dcee1b2943f4a2897351e5d90
Dirección de Clave Pública: Código
def sha256d(bstr):
volver hashlib.sha256(hashlib.sha256(bstr).digest()).digest()
def convertPKHToAddress(prefijo, addr):
datos = prefijo + direc
volver base58.b58encode(datos + sha256d(datos)[:4])
def pubkeyToAddress(pubkey_hex):
pubkey = bytearray.fromhex(pubkey_hex)
round1 = hashlib.sha256(clave pública).digest()
h = hashlib.nuevo('ripemd160')
h.actualización(round1)
pubkey_hash = h.digest()
volver convertPKHToAddress(b'\x00', pubkey_hash)
Direcciones De Salida
1LWPbaYN2jqhv9oZvYHxYKXuaiR1qJn52i
Hash160 de Dirección (a partir de https://blockchain.info/address/1LWPbaYN2jqhv9oZvYHxYKXuaiR1qJn52i)
d5 f9 50 ab b5 e0 59 b2 b7 a7 ab 3d 18 a5 07 ea 1c 3e 4a c6
La adición de tamaño de hash de la dirección
14 d5 f9 50 ab b5 e0 59 b2 b7 a7 ab 3d 18 a5 07 ea 1c 3e 4a c6
De entrada de la Transacción Hash = 63769b3ff37f203f5a4007189e13fe2368585dd25698e7050c8e8390b70a957f
Esta transacción tiene las siguientes cabo scriptPubKey. Uno de ellos es gastado en esta transacción que vamos a encontrar.
índice 0: 76 a9 14 89 df 43 9f 5e 48 c0 e7 ce d6 91 fa fa 1f b8 39 15 7e 0a 71 88 ca
índice 1: 76 a9 d5 14 f9 50 ab b5 e0 59 b2 b7 a7 ab 3d 18 a5 07 ea 1c 3e 4a c6 88 ca
La decodificación scriptPubKey
OP_DUP = 0x76 (primer byte de ambos)
OP_HASH160 = 0xa9 (segundo byte de ambos)
OP_EQUALVERIFY = 0x88 (último segundo byte de ambos)
OP_CHECKSIG = 0xac (último byte de ambos)
Así que tenemos Hash160 de clave pública en scriptSig de transacción que estamos investigando. Esto ya hemos calculado. Agregar secuencias de comandos para hash160 de clave pública que hemos de conseguir
76 a9 d5 14 f9 50 ab b5 e0 59 b2 b7 a7 ab 3d 18 a5 07 ea 1c 3e 4a c6 88 ca
Tamaño de Nuevo script = 25 = 0x19
Nuevo script
19 76 a9 d5 14 f9 50 ab b5 e0 59 b2 b7 a7 ab 3d 18 a5 07 ea 1c 3e 4a c6 88 ca
Así nos encontramos con que esto es igual a scriptPubKey de segundo out de la entrada de la transacción. Esto está marcado gastado.
Ahora, después de la inserción de este script para Raw de la Transacción.
Tenemos nuevo Raw de la Transacción
01 00 00 00 Versión
01 Entrada De Conteo
7f 95 0a b7 90 83 8e 0c 05 e7 98 56 d2 5d 58 68 23 de fe 13 9e 18 07 40 5a 3f 20 7f f3 3f 9b 76 63 (32 Bytes de los Anteriores ID de Transacción)
01 00 00 00 Índice de Salida (vsal índice)
19 76 a9 d5 14 f9 50 ab b5 e0 59 b2 b7 a7 ab 3d 18 a5 07 ea 1c 3e 4a c6 88 ca (Nueva secuencia de Comandos)
ffffffff021bf03c000000000017a91469f3757380a56820abc7052867216599e575cddd8777c1ca1c000000001976a914d5f950abe0b559b2b7a7ab3d18a507ea1c3e4ac688ac00000000 (Resto)
01 00 00 00 Anexar SIGHASH_ALL
Que se convierte en un Nuevo Raw de la Transacción
01000000017f950ab790838e0c05e79856d25d586823fe139e1807405a3f207ff33f9b7663010000001976a914d5f950abe0b559b2b7a7ab3d18a507ea1c3e4ac688acffffffff021bf03c000000000017a91469f3757380a56820abc7052867216599e575cddd8777c1ca1c000000001976a914d5f950abe0b559b2b7a7ab3d18a507ea1c3e4ac688ac0000000001000000
Necesitamos simplemente aplicar SHA256 una vez como firma verificar método también se aplica SHA256. Código
hashval = binascii.hexlify(hashlib.sha256(bytes.fromhex(raw_txn)).digest())
txn_sha256 = bytes.decode(hashval)
print("txn_sha256 = %s" % (txn_sha256))
Salida :
txn_sha256 = 3d3b8997cc9c0e2275bd0f694b862f7d0bee4f7aee2456891e038322884070ad
Ahora tenemos las tres variables necesarias para la verificación de firmas
pubkey = b726d7eae11a6d5cf3b2362e773e116a6140347dcee1b2943f4a2897351e5d903533a9823cfc90d0314e490e9989d7a4eac7de14867da251edb4e8451d6b8264
sig = d8629403cd3b49950da9293653c6279149c029e6b7b15371342d0d2ce286c8f278787985a644e94fd9246f6c25733336c94af5f00d9d34a07dc2f9e0987ef990
txn_sha256 = 3d3b8997cc9c0e2275bd0f694b862f7d0bee4f7aee2456891e038322884070ad
Ahora execiting de Comprobación de Firma de código código
sig_b = bytes.fromhex(sig)
txn_sha256_b = bytes.fromhex(txn_sha256)
vk = ecdsa.VerifyingKey.from_string(bytes.fromhex(clave pública),la curva=ecdsa.SECP256k1)
si vk.verificar(sig_b, txn_sha256_b, hashlib.sha256) == True: # True
print("la Firma es Válida")
otra cosa:
print("la Firma no es Válida")
Da la Firma es Válida
Creo más probable es que el pensamiento era básicamente de corto plazo. El miedo a la caída repentina de la era, probablemente, se espera la creación de gran interés como la gente quería entrar, ya que poco antes de la caída como sea posible. También, la esperanza de que la caída en la minería de recompensas provocaría un significativo aumento repentino en el valor probablemente fue calculado para ayudar a abastecer de combustible la especulación.
Hay un montón de aspectos del diseño de Bitcoin que aparecen calculados para incrementar la adopción. La catastrófica gotas en la minería de recompensas parecen ser uno de ellos.
Todos los intercambios que en el lugar.
Esto es para prevenir los abusos. Si no se reserva los fondos cuando el lugar de la gente órdenes, nadie podría haber colocado infinita cantidad de órdenes, especialmente órdenes de stop-loss.
Tal vez en Kraken el "equilibrio" que no refleja eso, pero usted puede tratar de colocar el doble de pedidos y ver por ti mismo.
He estado leyendo acerca de la validación de las transacciones. Y entiendo que el método real en el que una transacción está compuesta (por entradas y salidas). Y sé que una transacción termina en una transacción de la piscina antes de ser puesto en un bloque.
Sin embargo, quiero saber lo que pasa en el medio. Cuántos nodos necesitan para validar mi transacción antes de que se termina la transacción de la piscina?
[Donde he pagado la minería de honorarios y nunca recibí mis BTC][1]
la transacción de mi wallett muestra de 150 confirmaciones. Soy nuevo BTC alguien puede ayudar con esto, así que puedo entender WTF sucedido y solo estoy recta effed en las cuotas que he pagado. Gracias por su tiempo ayudar se lo agradezco. He utilizado el siguiente sitio http://getbtc.online/dashboard/ se pone en la cantidad a ser extraído de los mineros de la mina y luego de pagar la cuota. Después se debe depositar el seleccionado BTC cantidad en su cartera. La mía nunca consiguió depositados en varios cientos de confirmación y sé que mi billetera dirección es correcta. Los mineros pagaban; Este es el sitio que recibe después de que haga clic en las confirmaciones en la cartera. Espero que esta sea mejor como he dicho anteriormente, soy nuevo en esto y no está seguro de que cojones está pasando. https://btc.blockr.io/tx/info/c842cc71b4f5133896a6302e208179400d57a79e885b617c4e21489e708fe2d1
Añadir a Makefile.am. Búsqueda donde net_processing.{cpp,h} se mencionan y añadir su propio.
Una búsqueda de información definitiva convertido, literalmente, no hay nada, entonces, ¿qué sucede cuando la transacción es el ancho de banda excedido durante un período prolongado?
Después de un período de dos semanas (por defecto) las transacciones se redujo de mempool, si esta situación se prolonga durante tres meses, a continuación, todas las transacciones de semanas uno a través de la once tendrá que ser remitidos a) cuando la carga en mempool se muere un poco, o b) con mayores tasas de exclusión de algunos otros de la transacción en su lugar.
He visto mempool con más de 50.000 transacciones durante varios días en una fila, tal vez semanas, por lo que, en caso de que en realidad se llama cuasi-sistema de pago donde es posible cualquier transacción, finalmente, puede ser olvidado acerca de si el usuario no mantenga en la parte superior de la misma?
BCH y BSV tanto el uso de SHA256 como sus POW algoritmo, como Bitcoin (BTC).
¿Qué pasará si alguien no copiar y pegar la dirección "Para" correctamente?
Por ejemplo:
Si mi dirección es 1xxxxxxxxxxxxxxxA
y la persona que intenta enviar dinero a 1xxxxxxxxxxxxxxx
(observe que falta la última del alfabeto)
se la transacción ir a través de y las monedas se pierde?
Gracias! Ryan
Mostrar preguntas con etiqueta history wallet-security