Formato de mkey campo en cartera cifrada.archivo dat

Estoy escribiendo una aplicación de C++ para buscar archivos de gran tamaño (típicamente imágenes de disco) para la cartera.dat archivos, con la intención de recuperar las claves privadas.

En este momento estoy luchando por los datos contenidos en el 'mkey' (Master Key) sección de una cartera cifrada.archivo dat.

De Googlear y verter sobre el código fuente de Bitcoin y otras diversas utilidades que hacer lo que yo quiero hacer (como pywallet) he deducido la que el diseño de los datos de mkey de datos es:

  • mkey - un tamaño prefijado cadena que indica el inicio de la clave maestra de datos.
  • nID - un entero cuyo propósito no he sido capaz de determinar.
  • encrypted_key - un tamaño prefijado tampón que contiene el cifrado de la clave maestra.
  • sal - un tamaño prefijado tampón que contiene la sal de datos se utiliza cuando el cifrado de la clave.
  • derivation_method - un entero que contiene ya sea 0 o 1 para el método que se utiliza para cifrar la clave maestra de uso de la contraseña de la cartera.
  • derivation_rounds – un entero que contiene el número de rondas se utiliza para cifrar la clave maestra.
  • other_derivation_parameters

Sin embargo, después de haber examinado mi cartera.dat archivo con un editor hexadecimal (captura de pantalla adjunta) me parece no puede obtener los datos que contiene se correlaciona con la de arriba.

enter image description here

Puede que alguien me apunte en la dirección correcta o me diga lo que he perdido.

+197
wawiwa 23 nov. 2014 22:48:04
27 respuestas

Si entiendo tu pregunta correctamente:

En la actualidad la máxima recompensa para la minería de un bloque es de 12,5 Bitcoin, así como de otros gastos de transacción en ese bloque. Esta recompensa mitades cada 210.000 bloques. No importa en qué dirección se utiliza para recibir la recompensa. Ver https://en.bitcoin.it/wiki/Mining#Reward.

Para el aprendizaje de la referencias, consulte ¿Qué es un buen recurso para aprender (técnicamente] bitcoin funciona?

+994
jlitherland 03 февр. '09 в 4:24

Esta es una actualización, a partir de NOV-2012, ya que las respuestas no están actualizados.

Existen vulnerabilidades ahora?

Probablemente no. Pero una nueva vulnerabilidad podría ser creado por error en futuras versiones de la norma cliente.

Hubo en el pasado?

Sí, verificación https://en.bitcoin.it/wiki/Common_Vulnerabilities_and_Exposures y verás que ha habido muchas vulnerabilidades fijo. Casi el 50% de los nodos son todavía vulnerables a CVE-2012-4682 y CVE-2012-4683.

+982
aleksei201094 29 may. 2014 23:48:05

Usted debe tratar de tocar este
https://coinmarketcap.com/currencies/views/all/
Necesita filtrar aquellos que no son sha256d aunque.

+913
Mushiget 7 ene. 2010 10:26:31

Las transacciones de sus monedas son almacenados en el blockchain. Lo MultiBit es que las claves privadas que controlan si se puede pasar a ellos.

Al hacer un reset blockchain MultiBit resyncs a lo que está en el blockchain y muestra las transacciones que se encuentra.

Siempre puedes exportar las claves privadas y tirar de ellos en blockchain.info si usted quiere - no es un tema de la ayuda específicamente para esto.

+838
tshiamo 7 jun. 2018 15:30:29

He de escribir este código de ejemplo, espero que esto ayude

public class Principal {
 private static NetworkParameters params = NetworkParameters.testNet3();
 public static void main(String...args) {
 Cadena mnemónico = "paso ligero de madera síntoma parte traicionar ozono papá súper más allá del mar de la memoria de alimentación de cerdo business extra";
 DeterministicSeed semilla = null;
 try {
 semilla = new DeterministicSeed(mnemónico, null, "", new Date().getTime());
 } catch (UnreadableWalletException e) {
e.printStackTrace();
}
 Monedero de la cartera = Cartera.fromSeed(params, semillas);
Sistema.a cabo.println(cartera);
 DeterministicKeyChain llavero = DeterministicKeyChain.generador().semilla(seed).build();


 // Se derivan de 100 niños, por defecto lookahead es de 100
llavero.maybeLookAhead();


 // Obtener M/H 0/0/5 clave, unidad de dirección, junto con otra información de ruta de acceso específica
 DeterministicKey key5 = llavero.getKeyByPath(ImmutableList.de(ChildNumber.ZERO_HARDENED, ChildNumber.CERO, nueva ChildNumber(5)), false);


Sistema.a cabo.println(key5.toAddress(params).toString());

 // se derivan de 100 direcciones junto con la clave privada
Sistema.a cabo.println("_________________________");
 int i = 0;
 mientras (i < 100) {
Sistema.a cabo.println(cartera.freshReceiveKey().getPrivateKeyAsHex());
Sistema.a cabo.println(cartera.freshReceiveAddress());
i++;
}

}
}
+795
Ymetro 19 oct. 2014 23:28:46

Las principales consideraciones van a ser:

  1. la fiscalidad de los registros para mantenerse fuera de problemas, más abajo de la carretera
  2. BRICOLAJE-alojado cartera se requiere un top-notch equipo de seguridad/protocolo. El hot wallet será objetivo si se corre la voz de que usted ha hecho aquí, por ejemplo, a continuación, se abrió un casino, ya que hace un blanco fácil para golpear.
  3. Conocimiento del protocolo Bitcoin y las vulnerabilidades que podrían ser explotadas (es decir, txn maleabilidad sólo sería un problema si el código tenía un error que permitía esto, véase #4
  4. Corregir la auditoría de los balances de los clientes
  5. la prueba de la imparcialidad y de los depósitos a perder jugadores exigiendo la devolución de su dinero

Yo soy de la opinión que usted quiere profesional de la seguridad, la cartera, el alojamiento de redes y diseño de la arquitectura de un casino. Se trata de un complejo de riesgo. Hago saber Bitcasino.io ofrecen algún tipo de "franquicia", pero lo que el costo es no sabría decirte.

+773
Gherman 27 jun. 2015 19:28:00

Considere los siguientes 3 nodos a, B y C.

En el tiempo t=0, Una tiene 10 bitcoins. Envía un 6 bitcoins a B. Entonces, Un intento de enviar 6 bitcoins a C.

Con la cadena de transacciones, la segunda transacción se previene, porque todo el mundo sabe Un equilibrio en todo momento.

¿Cómo es la segunda transacción prevenirse si la primera transacción se realiza en la red de rayos?

Si se supone que a, B y C están todos conectados a la misma LN hub, llamado D - y los pagos de la ruta a través de D - entonces puedo ver cómo el doble pasar es prevenir.

Pero, ¿y si no hay ninguna ruta de acceso a través de la conexión de LN B y C? O, hay un camino, pero elige una ruta diferente para su segundo pago en comparación con el primer pago?

Por último, ¿qué pasa si el primer pago se realiza a través de LN, pero el segundo pago es en cadena?

+751
brianfedirko 12 mar. 2017 9:51:30

La teoría económica nos dice que el precio aumentaría. Tendría un deflaitonary efecto en la economía bitcoin. Sin embargo, debido a bitcoins son tan fácilmente divisible no afectan a la capacidad de la red para funcionar.

Si el 90% de los bitcoins fueron perdidos o destruidos, que dejaría de 2.1 millones de "todo" de bitcoins en circulación. Esto no sería un problema ya que en la actualidad bitcoin red soporta transacciones a una satoshi (0.00000001 BTC), que es de 210 billones de unidades discretas de exchange.

Es posible permitir que las unidades más pequeñas de exchange sin embargo voy a ilustrar que es innecesaria. El mundo de la oferta monetaria (M0) está valorado en ~ $20 billones de dólares. Si todo el mundo pasó a usar bitcoin para todo tipo de comercio el valor de un "todo" bitcoin sería de $9,524,000 cada uno. Sin embargo, la unidad mínima de 1 satoshi tendría un valor de $0.10 Incluso con el 90% de los bitcoins destruidos o perdidos no sería suficiente unidades restantes para permitir el comercio hasta un 10 ciento de granularidad con Bitcoin sustituir a todo el mundo de la oferta de dinero.

Daría lugar a algunos cambios en el lenguaje. Es evidente que la mayoría de la gente no valora las cosas en términos de bitcoins, sino más bien en unidades más pequeñas como satoshi del (0.00000001 BTC).

Como un ejemplo de una comida rápida comida podría ser un precio de us $5USD, 0.00000053 BTC, o 53 satoshi del. Obviamente 53 es mucho más fácil para los seres humanos para expresar que 0.00000053 BTC a pesar de tener equivelent de valor. Dado el alto valor de un solo BTC, "todo" BTCs que rara vez se utilizan de modo distinto para expresar las cosas que actualmente se expresa en millones de dólares (como son los salarios de las celebridades, los valores de las empresas, el tamaño de las deudas nacionales, etc).

Satoshi se utiliza como un ejemplo pero, alternativamente, SI los prefijos pueden ser utilizadas. Para uso común de los precios en la fracción de µBTC (micro bitcoins) que tiene más sentido con 1 µBTC = 1E-6 BTC.

Algunos ejemplos:

"El hombre de oro rompió 200 µBTC hoy"

"El Congreso de los EE.UU. aumentó el salario mínimo a 1.50 µBTC efectiva el 1 de enero"

"Me dieron el trabajo. El sueldo inicial es de 8,400 µBTC un año"

+633
Jie Wang 14 ago. 2016 9:04:51

Mi respuesta sería: "no Hay manera, para protegerse de rápida estafador."

Son, probablemente, debe pasó un gran tiempo con el vendedor, por ejemplo 3, pueden ser de 4 horas.

E. g. Ver este hilo: bitcointalk.org: Si la confirmación tarda 10 minutos, ¿cómo voy a comprar un café en Starbucks?

Otra manera es usar un árbitro, por ejemplo, www.bitrated.com

Bitcoin arbitraje mercado de Protegerse contra el fraude en línea con Bitcoin m de n transacciones.

Antes de ir a dar su dinero al vendedor, un árbitro confirmar la transacción, espere la confirmación del vendedor, de enviar bitcoins a usted.

+608
Alban Purballari 23 oct. 2011 3:02:22

En BitcoinJ, hay PeerGroup y Compañeros.

Entiendo que hay diferencias como uno se relaciona con un grupo de compañeros, mientras que otros se refieren a un solo compañero.

Cuando debo usar que construir? Ambas son necesarias?

Desde el código, parece que deberíamos estar interesados solamente en PeerGroup y no Pares. Entonces ¿cuál es el objetivo de Pares?

+529
Annula 22 feb. 2015 20:31:12

El sitio cubre dos temas:

  1. Una introducción básica a Bitcoin
  2. Cómo se puede ser capaz de obtener Bitcoin "gratis"

Voy a discutir sólo el punto 2. Varias posibilidades para ganar Bitcoin se presentan:

  1. La minería de
  2. Realizar patrocinado acciones
  3. El uso de determinados servicios que ofrecemos Bitcoin como un incentivo
  4. La realización de mechanical turk tareas
  5. La inversión
  6. De apuestas

La página en guadagnarebitcoins.altervista.org no ofrecemos ningún servicio, y aparece simplemente ofrecer información. Por lo tanto, el sitio en sí no es una "estafa".

Sin embargo, como el sitio hace referencia a un número de diferentes sitios de terceros y servicios, usted puede encontrar que su experiencia con los sitios individuales varían a lo largo de un continuum de legitimidad (o falta de ella).

Todos los métodos propuestos implican algún no-cero cantidad de esfuerzo.

Teniendo en cuenta la propuesta de los métodos idealmente implica una buena cantidad de sentencia, auto-conocimiento y la reflexión con preguntas como:

  • Le minería resultado en la cuenta de pérdidas creo que va?
  • Es este un buen ROI para mi tiempo y dinero?
  • ¿Cuánto debo saber acerca de la inversión?
  • Cuánto tiempo y/o dinero puedo permitirme el lujo de perder?
  • Es el juego una buena manera de ganar dinero para mí?
  • Tengo una confianza razonable de que el servicio me va a pagar?

Y así sucesivamente.

+499
Tony Balcerowicz 29 may. 2011 15:49:46

Que yo sepa no hay ninguna funcionalidad integrada en Bitcoin para comprobar las firmas en cada entrada de forma independiente. Todas las firmas son correctos (lo que demuestra {completa: true}) o hay al menos un unsigned/no válido o valores de entrada no se suman a los valores de salida (lo que demuestra {completa: false}).

El procedimiento que se va a ir de la siguiente manera:

  1. Recuperar la referencia de salida {txid, vsal} de la UTXO establecer o recuperar txid y sólo conseguir la salida apropiada.
  2. Compruebe el valor es lo que se espera (si te importa el valor) y obtener la scriptPubKey.
  3. Ejecutar la corriente de entrada scriptSig y, a continuación, con el resultado de la pila, la anterior salida de scriptPubKey.

Si el resultado de la pila de la parte superior no es cero (i.e, es CIERTO), la entrada está correctamente firmado.

+466
Rukmal Dias 8 abr. 2015 8:43:24

Transacción de orden en el bloque

En la actualidad, sólo hay dos requisitos para la orden de operaciones:

  1. El coinbase transacción es siempre lo primero.
  2. Intra bloque de las dependencias deben preceder, es decir, si Una Transacción y Transacción B están ambas en el mismo bloque, y la Transacción B pasa salidas de Una Transacción, Una debe aparecer antes que B.

Es probable que en el futuro un orden correcto para que la transacción se introdujo, ya que esto permitirá demostrar la ausencia de una transacción en un bloque con logarítmica de esfuerzo, y permitir más eficiente bloquear la propagación de datos a través de IBLT. Ahora, las transacciones se propagan en la red antes de la confirmación, y luego otra vez como el contenido de un bloque. Con el determinismo de la transacción de orden y IBLT conjunto de la reconciliación, cada transacción sólo tendrían que ser recibida una vez en lugar de dos.

La construcción del Árbol Merkle

Schematic how to create Merkle Tree

Las transacciones se inserta en el Árbol Merkle en el mismo orden en que aparecen en el bloque. Si un bloque contiene solo la Coinbase Transacción, el Coinbase del ID de transacción se utiliza como Merkle Raíz.
De lo contrario, un árbol binario es creado a partir de las transacciones por el emparejamiento de hash de la transacción en el primer nivel, el emparejamiento resultante de hashes en cada siguiente nivel hasta que sólo uno de hash de resultados, el cual es utilizado como el Merkle Raíz. Si hay un número impar de hashes para ser emparejado, la última hash es emparejado con la misma.

Leer Más

El Desarrollador de Referencia tiene más detalles. La imagen es de la Referencia del Programador así, y por lo tanto la licencia MIT.
Antonopoulos cubiertas de árboles de Merkle en detalle en su libro, además de ofrecer ejemplos de cómo se utiliza para probar la transacción presencia en bloques.

+455
BibitBot 15 ene. 2013 2:23:21

Buen día,

puede alguien tal vez me ayude. Acabo de abrir mi cartera hoy después de que me exportado a una clave privada y incrypted es (Multibit de la cartera) y más de la mitad de mis monedas ha sido enviar a una dirección de I dnt saber. Según lo que puedo ver en el Historial de transacciones de esta transferencia se ha utilizado como honorarios de transacción para alguien els transferencia de monedas. Este puede ser un problema en el blockchain lado o fue mi billetera hackeado. Cualquier ayuda será muy apreciada.

Gracias

+451
Serversta 24 ago. 2014 1:59:59

Instalar Git

sudo apt-get install git-core

La Dependencia De Las Instrucciones De Construcción: Ubuntu & Debian

Los requisitos de construcción:

sudo apt-get install build-essential
sudo apt-get install libssl-dev

para Ubuntu 12.04+:

sudo apt-get install libboost-todos-dev

db4.8 paquetes están disponibles en: https://launchpad.net/~bitcoin/+archive/bitcoin

Ubuntu 12.10 tiene paquetes para libdb5.1-dev y libdb5.1++-dev, pero el uso de estas va a romper binario cartera de compatibilidad, y no es recomendable.

por otro Ubuntu & Debian:

sudo apt-get install libdb4.8-dev
sudo apt-get install libdb4.8++-dev
sudo apt-get install libboost1.37-dev

(Si utiliza Boost 1.37, append -mt para el impulso de las bibliotecas en el makefile)

Opcional:

sudo apt-get install libminiupnpc-dev (ver USE_UPNP compilar bandera)

Recuperar y compilar Bitcoin fuente

git clone git://github.com/bitcoin/bitcoin.git
cd bitcoin/src/
make-f makefile.unix
sudo cp bitcoind /usr/local/bin

(mucho de este extraen directamente de la build-unix.txt las instrucciones)

+444
DDennisM 25 nov. 2018 10:45:45

Para el Bitcoin Protocolo para servir a su propósito, cada una de las necesidades del Cliente para el proceso de Transacciones en el mismo asunto. Para un nuevo tipo de Transacción a ser introducido y estar disponibles, necesita para ajustarse a las normas vigentes (por ejemplo, se puede ejecutar mediante la secuencia de Comandos), o ser aceptado por cada Cliente (idealmente). Si uno va a implementar un nuevo tipo de Transacción sin que la gente se conforme a ella, en el mejor de los casos, la operación convertido en unspendable, en el peor de no ser procesados por los Clientes.

Para introducir una opción de la creación de "cualquier tipo de Transacciones", uno tendría que crear alguna nueva versión de la secuencia de Comandos o algo similar. Por otra parte, este Script tendría que ser todavía resistente a ataques maliciosos (por ejemplo, no hay bucles o formas similares para hacer un montón de Clientes de perder una gran cantidad de recursos computacionales de comprobación de la validez de la Transacción).

Con todo, es posible generalizar la creación de algunos amplio espectro de Transacciones con algunos cambios en el Protocolo, pero esos cambios tienen que ser aceptados por todos. Es muy poco probable que alguna vez será capaz de crear un nuevo tipo de Transacción en un capricho.

+373
Larry Terry 19 jul. 2014 12:07:38

Mediante la solicitud de extracción y las instrucciones en https://github.com/bitcoin/bitcoin/pull/11526 usted puede construir Bitcoin Core, excepto los dos Qt dependiente de proyectos con Visual Studio (o msbuild herramientas) en Windows.

+324
TJ Ellis 16 may. 2015 15:10:32

Recientemente he vuelto a instalar Bitcoin qt porque mi disco duro se estrelló. Afortunadamente tenía una copia de seguridad de mi cartera.dat, pero todavía hay un problema.

Después de la instalación, que sustituyó a la cartera.dat con mi vieja cartera.dat. Si me pongo a Bitcoin qt ahora, no puedo ver ningún dinero en mi billetera?!

¿Qué puedo hacer ahora?

+202
Alexisnicole3 2 oct. 2012 18:19:47

A qué hora del día (GMT) el volumen de llegar a cero?

Estoy tratando de correlacionar esto con los gráficos, sin embargo, yo estoy claro que esto realmente iba a ocurrir

+192
MC new Apple User 16 nov. 2018 18:09:00

Es que no están respaldadas por ningún producto físico como "oro", pero de acuerdo a http://en.wikipedia.org/wiki/Commodity una mercancía es el término genérico para cualquier negociables objeto de satisfacer deseos o necesidades. Y si la gente lo quiere usar para el comercio no es una necesidad y eso tiene un valor.

+191
JP Doherty 5 nov. 2010 11:19:28

Dado BIP-11 (M de N Transacciones Estándar) no está claro por qué BIP-147 (que Trata con un maniquí de pila elemento maleabilidad) es necesario.

BIP-11 estados:

OP_CHECKMULTISIG las transacciones se redimió con un estándar de scriptSig:

OP_0 ...firmas...

(OP_0 es necesario debido a un fallo en OP_CHECKMULTISIG; aparece también muchos elementos de la pila de ejecución, por lo que un valor ficticio debe ser colocado en la pila).

Sin embargo, BIP-147 reclamos:

Un defecto de diseño en OP_CHECKMULTISIG y OP_CHECKMULTISIGVERIFY les hace consumir un extra de pila elemento ("dummy elemento") después de la validación de la firma. El maniquí elemento no es inspeccionado en cualquier manera, y podría ser reemplazado por cualquier valor sin invalidar la secuencia de comandos. ... [mi énfasis]

Esta afirmación parece contradecir BIP-11, en el que claramente se requiere OP_0 como la primera validación elemento de secuencia de comandos.

Se me ocurren dos razones para BIP-147:

  1. BIP-11 no exige explícitamente a la pila para ser revisado pero solo que un multisignature la validación de secuencia de comandos comienza con OP_0;
  2. BIP-11 no aplica en absoluto a OP_CHECKMULTISIGVERIFY.

Son estos, de hecho, las motivaciones para BIP-147, y hay otros?

+134
ulia2008 7 mar. 2013 8:17:58

Como usted ha mencionado este Bloque y también algunas otras en el blockchain así no pudo reclamar los honorarios. Algunos mineros perdió todos los honorarios otros sólo unos pocos, esto puede suceder por una variedad de razones, casi todos de ellos son errores en el software de minería de datos.

Así que era dueño de estos cargos?

Estas monedas se pierden, el minero no pudo hacerlos valer, y así se han ido.

+130
Daniel Wise 20 feb. 2017 9:36:43

Bitcoin 0.14 Yo quiero probar la minería primer bloque génesis, un tiempo nuevo, pero no sabes cómo empezar testnet

se utiliza para crear GenesisH0 https://github.com/lhartikk/GenesisH0

+97
doblak 11 mar. 2017 4:34:19

He estado buscando cosas sobre bitcoins por algún tiempo ahora y tengo dos pregunta se quedó en mi mente:

¿Cómo es el valor de los bitcoins tan inestable?

Y puede haber bitcoin de la inflación?

+93
david ternovoy 18 mar. 2013 22:22:48

n es el número de usuarios. Se supone que el número de transacciones es Ө(n), y que el número de nodos que deben conocer todas las transacciones es también Ө(n), por lo que el total de la información (que debe ser reproducidos, verificado y almacenados) es n*Ө(n) = Ө(n^2).

La hipótesis sobre los nodos requiere aclaración según el contexto, porque no hay ninguna necesidad real para el número de nodos a escala con n.

k es la constante de proporcionalidad implícita en la Gran notación Theta.

+81
user3881564 4 ene. 2011 17:43:13

http://anonymity.co.in/

Bitcoin está descentralizado peer-to-peer de la moneda, pero muchas personas creen erróneamente que el Bitcoin es totalmente anónimo.

El principal problema con Bitcoin anonimato es que cada transacción es públicamente registrados por el diseño. Cualquier persona puede ver el flujo de Bitcoins a la dirección en la blockchain. Esta información por sí sola no puede ser usada para identificarlo, porque las direcciones son sólo números aleatorios, pero si alguna de las direcciones en una transacción del futuro o el pasado, la historia puede ser trazados a una identidad real, puede ser posible para averiguar quién es el dueño de todas las otras direcciones. La identidad de la información podría ser derivado de la red de análisis, vigilancia, o una rápida búsqueda en google para la dirección bitcoin.

Si usted comprar bitcoins utilizando un intercambiador de calor, los bitcoins que usted compra puede ser rastreada hasta el intercambiador de calor, que puede tener su verdadera identidad de la información en el archivo, incluyendo datos bancarios. Todos los cambios requieren que el usuario analice los documentos de IDENTIFICACIÓN, y las grandes transacciones deben ser reportados a la autoridad gubernamental apropiada. Cuando el uso de Bitcoin para el pago de bienes y servicios, tendrá que proporcionar su nombre y dirección para el vendedor con fines de entrega.

Una mezcla de servicio puede ser utilizado para la mezcla de uno de los fondos con la de los demás o con la BATIDORA de reserva, con la intención de confundir el camino de regreso a los fondos de la fuente original. La mezcla ayuda a proteger la privacidad, pero también puede ser utilizado para el blanqueo de dinero, la mezcla de fondos obtenidos ilegalmente. Después de blanqueo de dinero, los fondos parecen legítimos. La mezcla de grandes cantidades de dinero puede ser ilegal, violación de anti-estructuración de las leyes.

+68
kalmiya 20 mar. 2018 21:28:49

He hecho una transacción de un par de meses atrás, pero la transacción no está aún confirmado, los Bitcoins son debitado de mi cuenta y el saldo en mi cartera es cero.

Información sobre la transacción

La transacción es visto por 1 de los pares y el estado de esta transacción está aún sin confirmar.

Supongo que es un poco el mismo problema como se describe en esta pregunta: ¿Cómo se puede aplicar "-zapwallettxes" en Windows?

Aunque yo uso la cartera MultiBit 0.5.15, los comandos como -zapwallettxes no funciona en mi caso.

¿Alguien sabe cómo restaurar esta transacción, o lo que comandos debo entrar en cmd para solucionar este problema?

+18
SmileyChris 17 mar. 2014 6:19:31

Mostrar preguntas con etiqueta