Por Craig Wright | 11 de diciembre de 2018 | Bitcoin y tecnología de cadena de bloques
Bitcoin tiene un modelo de privacidad notablemente simple pero robusto a escala.
La sección 10 del libro blanco detalla el modelo de privacidad en lo que pensé que era una manera notablemente simple. Dicho esto, la mayoría de la gente parece no entenderlo. Como consecuencia, lo expandiré y proporcionaré más detalles para explicar la sección en su totalidad. Para ello, he separado la imagen del papel blanco de forma que permita una visualización más sencilla.
El modelo de privacidad de Bitcoin
A la izquierda de la imagen, tenemos las partes del sistema que son privadas. A la derecha, las que están abiertas y se ven. Aquí es donde la mayoría no entiende Bitcoin. El equipo de Core comenzó con el concepto de que Bitcoin es análogo a la banca y comenzó a eliminar la mayor parte de lo que hace que Bitcoin sea un sistema privado de igual a igual.
El modelo tradicional
En el modelo de privacidad tradicional, un usuario deberá completar un proceso AML/KYCcon un tercero, como un banco. El tercero ahora se encuentra en medio de todas las transacciones y tiene información sobre todo el movimiento de fondos dentro y fuera de la cuenta. No hay información disponible para el público, y cualquier violación es catastrófica, lo que requiere que un sistema permanezca seguro durante largos períodos.
El resultado es un sistema que es frágil por diseño.
Los bancos están muy lejos de ser inmunes a la divulgación ilícita. Más importante aún, la PII (Información de identificación personal)permite que el abuso de confianza se amplíe. Una divulgación de información en este modelo no solo filtra las acciones de las partes involucradas directamente, sino que permite que un atacante (delincuentes) use esta información en delitos como el robo de identidad.
Bitcoin resuelve esto al crear un verdadero entorno de pares. P2P no se trata de nodos ni de minería. P2P es persona a persona. Su par es la otra parte del intercambio. Idealmente, el uso de IP-2-IP permitiría esto o incluso un intercambio directo del cliente al comerciante . La única vez que un minero está involucrado es cuando se completan las negociaciones y la parte receptora envía la transacción a la cadena de bloques.
La persona que envía la transacción ni siquiera necesita estar en línea. No requieren un nodo, ni siquiera una dirección IP. Usando NFC, pueden iniciar sesión, descargar los encabezados y actualizar su dirección de cambio en un momento posterior (o incluso tener esta clave en un sistema completamente separado).
En el modelo tradicional, el tercero de confianza sabe todo lo que haces. El banco o la agencia de crédito mantiene un registro de todos los retiros, las ubicaciones y los detalles de las transacciones: con quién trata y cómo. No quieren que esto cambie, ya que esos datos son en realidad información valiosa.
En este modelo, el banco (u otro TTP) tiene un registro de cada movimiento que realiza, cada transacción y puede modelar todos sus comportamientos de gasto. Desde la perspectiva de Visa y MasterCard, esta información les permite saber dónde deben presionar para que los consumidores se endeuden más. Permite que los TTP tengan suficiente información para permitirles controlar los mercados. Les permite poder manipular a los consumidores.
Dichos datos tienen valor y son información. Como información, les permite dirigir la publicidad y vender esta información a un precio superior. Este es el resultado del antiguo modelo de privacidad, inseguro y manipulador. Es el modelo que se replica en Bitcoin Core y otros con Lightning y Plasma. Su información es lo más valioso que tiene un banco en este momento, y es por eso que se oponen a Bitcoin. No quieren perderlo. Es por eso que hemos visto secuestrar Bitcoin y por qué equipos de personas intentan decirle que no es seguro, que no es privado y todas las demás mentiras que escucha. Estas personas quieren conservar sus datos, y son valiosos.
El modelo bancario tradicional basaba la privacidad a través de la limitación del acceso a la información a las partes involucradas Y al tercero de confianza. Esto es lo que tiene con Bitpay, Coinbase y la mayoría de los sistemas corporativos de Bitcoin en la actualidad.
No es para lo que Bitcoin fue diseñado.
El nuevo modelo de Bitcoin
El nuevo modelo de privacidad es increíblemente simple. Todas las transacciones son públicas, ya que no están conectadas a su identidad y tampoco están asociadas con ningún comerciante en particular. Es importante destacar que los comerciantes también querrán permanecer privados. La capacidad de la competencia para analizar empresas lleva a los comerciantes a configurar múltiples direcciones, tal como lo hacen los usuarios.
Por lo tanto, si un comerciante no desea anunciar cuántas ventas realiza y el monto de cada venta, debe asegurarse de no reutilizar las direcciones y de que estas no estén vinculadas de manera que el público o la competencia puedan determinar.
La idea clave es que no reutilizamos las llaves.
división de monedas
Siempre hay debates sobre las transacciones secundarias y el cambio. Como la mayoría de las cosas en Bitcoin, las personas intentan hacer las cosas mucho más complejas de lo que deberían ser. Para tener un gran conjunto de monedas que se puedan gastar a voluntad y rápidamente, podemos tomarlas y dividirlas y combinarlas como necesitemos. Hay casos en los que un comprador puede necesitar ir a muchos lugares en poco tiempo. Pueden hacer esto de manera segura al dividir sus monedas.
Si lo hacen con anticipación, la tarifa de extracción será de fracciones de centavo.
Dividir TX de nivel 0 en muchas monedas más pequeñas en el nivel 1
La razón por la que grupos como Core se oponen a la estructura enumerada en la Sección 9 del documento técnico de Bitcoin es que se oponen a escalar Bitcoin. Con más transacciones, el sistema es más grande y también más privado. Podemos usar el hecho de que Bitcoin permite que se creen, se dividan y se vuelvan a unir muchas transacciones grandes de entrada y salida para permitir que el sistema se use sin grandes cadenas de transacciones no confirmadas, lo que permite que SPV funcione bien.
En este caso, tomamos una sola moneda de 2.0 BSV y la dividimos mientras nos dirigíamos a las tiendas. Las monedas estarán disponibles como liquidadas en un bloque en un período esperado de 5 a 20 minutos en general. De la moneda UTXO, ahora tenemos varias monedas que se pueden gastar en un solo bloque. Si nos preocupa la privacidad en cualquiera de las transacciones que estamos a punto de realizar, ahora hemos creado un mayor nivel de oscuridad. El comerciante no puede determinar si nos han pagado en el nivel 1 de TX o si las transacciones en el nivel 0 son nuestras.
Compras en un solo bloque
En un solo bloque, ahora tenemos muchas transacciones divididas. Cada una de estas monedas está vinculada a la del nivel 0 de TX, pero solo hay un camino. Un comerciante no puede saber cuándo se ha dividido a otro comerciante ni si solo está dividiendo sus propias monedas.
Puede hacer que esto sea mucho más privado si divide los valores de forma algo aleatoria. En esto, podría usar múltiples entradas y salidas, y si el cambio no se vuelve a unir, no hay una forma sencilla de vincular los distintos gastos.
Cuando se usa este método, la moneda que se gasta en cualquier momento está en el conjunto UTXO como una transacción confirmada dentro de un bloque. Aquí no hay ningún requisito de tener que gastar el cambio al instante.
Cuando comenzamos a ver que Bitcoin está diseñado para ser un sistema comercial y no simplemente una litera de máquinas Raspberry Pi, comenzamos a comprender cuán poderoso y simple puede ser.
Direcciones de comerciantes
Una falla importante que se ha introducido en Bitcoin es el concepto de reutilización de direcciones. La gente publica direcciones en páginas estáticas. La realidad de cómo se diseñó Bitcoin es que los usuarios y comerciantes deben usar las claves solo una vez.
Esto actúa como un cortafuegos de seguridad y privacidad, y evita que las transacciones se vinculen a un propietario común. De hecho, no hay razón para mantener los pares de claves. Una vez que se ha firmado y utilizado una clave, se puede quitar y desechar. La práctica común de enviar pequeñas cantidades de “spam” de uno o dos satoshi es una consecuencia directa de no eliminar las claves antiguas.
Si los usuarios no guardaran las claves con la esperanza de obtener dinero en una dirección usada, no habría ningún incentivo para enviar pequeñas cantidades de bitcoin a estas direcciones antiguas; sería lo mismo que enviar a un par de claves públicas-privadas aleatorias que nunca antes se habían visto. Eso no tiene ningún valor para nadie.
Un comerciante que crea una nueva dirección para todas y cada una de las transacciones mejora su propia privacidad. La recopilación de inteligencia corporativa es simple si se utiliza una única billetera común y una estructura de dirección. Al cambiar de dirección, el comerciante no deja nada para analizar. Es más privado para ellos y sus clientes.
Si voy a Walmart o Tesco, e iba a hacer una compra y recibir cambio, las monedas ahora se dividen. Los valores de un conjunto de transacciones de una moneda de Walmart no serían determinables. Solo Walmart realiza más de 15 millones de transacciones cada día. Esto es alrededor de 400 transacciones por segundo más durante el horario de atención.
Curiosamente, no existe una sola HPC (supercomputadora) que pueda analizar la cadena de bloques de Bitcoin para hacer coincidir monedas de fuentes desconocidas y, al mismo tiempo, el sistema es completamente rastreable (por ejemplo, en una auditoría fiscal) con un tiempo de búsqueda mínimo. .
La clave para hacer que Bitcoin funcione bien no es agregar complejidad, sino usarlo como se diseñó originalmente.
División aleatoria más privada
Todas las cosas en Bitcoin se basan en incentivos económicos. Si queremos, podemos enviar entre billeteras y dividir monedas de una manera que haga que nuestra billetera sea mucho más segura y privada al simular el uso. En este momento, ninguna billetera hace esto, y un usuario necesitaría completar todo el proceso manualmente. Es algo que es simple de lograr en el código, pero que no se ha implementado, ya que los conceptos que acechan a Bitcoin siguen estando sesgados hacia un uso indebido.
En el siguiente ejemplo, terminamos con monedas en un par de dispositivos (nivel 2 frente a nivel 3) y en muchas monedas. Si las monedas permanecen separadas y mantenemos los grupos de colores separados, ahora podemos ver cómo un análisis de las fuentes se vuelve cada vez más difícil.
A medida que mantenemos esta división, las posibilidades de descubrir los hábitos vinculados del usuario disminuyen exponencialmente.
Identidad
Existe la posibilidad de tener una identidad registrada y seguir creando claves relacionadas de forma segura.
Aquí, un par de claves raíz pública-privada está asociado a un individuo que puede crear subclaves vinculadas para cada uso . Esto podría incluso vincularse a un sistema basado en PKI, manteniendo un alto nivel de privacidad. La clave raíz se puede certificar y asociar con un individuo o una empresa, y las subclaves se vincularían luego a los usos y gastos individuales.