¿Cómo se puede crear un libro mayor distribuido seguro y predigital?

Un libro mayor distribuido es una 'base de datos' sin un administrador central o almacenamiento central. En su lugar, cada copia de la base de datos replica y guarda una copia idéntica de los datos y se actualiza de forma independiente. Un libro mayor distribuido debe:

  • Tener un mecanismo para enviar actualizaciones de un nodo a todos los nodos
  • Tener un mecanismo para garantizar que las únicas actualizaciones remotas que acepta estén 'cifradas' o 'protegidas' de alguna manera
  • Cuando hay un retraso de tiempo entre las actualizaciones del libro mayor, debe haber un mecanismo para determinar un estado de libro mayor "correcto" por consenso entre los libros mayores.

Estos mecanismos deben ser impulsados ​​algorítmicamente, no por el pensamiento subjetivo humano.

La inspiración para esta pregunta es el libro The House of Rothschild sobre la expansión del imperio bancario Rothschild en la primera mitad del siglo XIX. Los cinco hermanos Rothschild abrieron cada uno una 'sucursal' del banco familiar en Londres, París, Viena, Nápoles y Frankfurt.

Sin embargo, en la vida real, las tensiones políticas separaron rápidamente a los bancos en entidades separadas. Pero, ¿y si la familia tratara de mantener el banco unido? ¿Quizás con alguna forma algorítmica de distribuir y verificar transacciones, podrían haber mantenido una entidad bancaria hasta la era digital?

¿Cómo podría un banco multinacional implementar un libro mayor distribuido para realizar un seguimiento de sus operaciones en un área del tamaño de Europa Occidental?

El período tecnológico para implementar esta repisa podría ser entre 1850 y 1950. Por el bien de esta pregunta, ignore los problemas políticos que enfrenta un banco multinacional y concéntrese en la tecnología. Supongamos que esto tiene lugar en una Tierra alternativa donde no hay Guerras Mundiales ni Protocolos de los Sabios de Sión.

El título pregunta "¿puede...?", el texto pregunta "¿cómo...?" ¿Cuál de los dos es?
¿Califica la red Hawala ?
Me temo que necesita especificar la funcionalidad requerida del libro mayor distribuido. Tal como está la pregunta ahora, se puede responder simplemente que sí, obviamente, un libro mayor distribuido se puede mantener con tinta, plumas y papel: todo lo que el banco necesita hacer es colocar un empleado diligente e incorruptible en cada sucursal, encargado de enviar y recibir copias del libro mayor. (Y este método aparentemente simplista fue utilizado con éxito a partir del siglo XVI por bancos con oficinas en varios países).
No estoy seguro de que lo hagan de la manera que quieres decir, estoy haciendo una sugerencia de investigación que no intenta responder la pregunta, esta es la sección de comentarios.
"Tener un mecanismo para enviar actualizaciones de un nodo a todos los nodos": ¿qué pasa con el sistema postal o los servicios de mensajería? "Tenga un mecanismo para garantizar que las únicas actualizaciones remotas que acepta estén 'cifradas' o 'seguras' de alguna manera": las firmas y los sellos funcionaron bien para este propósito. "Cuando hay un retraso de tiempo entre las actualizaciones del libro mayor, debe haber un mecanismo para determinar un estado de libro mayor 'correcto' por consenso entre los libros mayores:" la oficina central envía periódicamente el libro mayor real a partir del primer día del mes anterior. Una vez más, esto se ha hecho de esta manera durante siglos.
El problema con los Rothschild no era tener un sistema de actualización de libros contables inseguro, sino la política. En este momento, un filtro en China podría transmitir la actualización por milisegundos, lo que permite una transacción no verificada.
¿Tiene algún requisito particular en su sistema distribuido? Por ejemplo, las transacciones de bitcoin no se consideran "completas" hasta una hora después porque una hora es suficiente para que se extraigan 6 bloques encima, y ​​eso se considera "suficiente" para que sea poco probable que alguien haga una bifurcación. atacar y robar sus bitcoins. En el pasado, esta escala de tiempo era mucho más larga, lo que simplificaba estos procesos. Las personas que no conocían esta regla han sido estafadas en el pasado porque pensaban que funcionaba como las tarjetas de crédito: una vez que se realizaba la transacción, se realizaba.
Además, si esto es realmente para un mundo, ¿por qué es una pregunta importante? Si tiene la infraestructura de un banco, hay muchos métodos mucho más efectivos. La única razón para ir distribuido es si intenta evitar intencionalmente la infraestructura. La razón por la que uno está evitando la infraestructura sin duda dará forma a la naturaleza del libro mayor distribuido.
@CortAmmon Esta es una pregunta exploratoria relacionada con una historia alternativa relacionada con Rothschild. ¿Por qué se dividieron los bancos Rothschild? ¿Por qué fracasó la sucursal de Nápoles? ¿Cómo pudo la familia haberlo mantenido todo unido hasta la década de 1930 (suponiendo que no hubiera guerras)? Como tal, traté de minimizar los requisitos en la respuesta y trato de mantenerme alejado de bitcoin porque el propósito de una criptomoneda está en desacuerdo con los objetivos de un banco internacional. Honestamente, es una especie de pregunta de "pesca de ideas", pero creo que es lo suficientemente estrecha como para permanecer abierta.
El libro mayor verdaderamente distribuido no es realista: los requisitos de procesamiento de datos serían enormes, incluso sin el cifrado. Un libro mayor copiado, cuando cada banco tiene una copia "maestra" para sus clientes, es posible (aunque con cierto retraso).
Tenga en cuenta que "pre-digital" es una pista falsa, en cierto sentido, porque lo único que la tecnología realmente hace en un sistema de este tipo es acelerar las cosas o modificar algunos pasos (es decir, el cifrado de clave privada en lugar de algo como un cifrado físico, firma manuscrita). Una de las características más importantes, desde el punto de vista de la usabilidad , es la velocidad del consenso : sus nodos deben llegar a un consenso más rápido de lo que se actualiza un registro en particular. Si tiene dos nodos con 6 meses de diferencia, esto no es (tanto) un problema si requieren una visita en persona...
@Clockwork-Muse La frase está ahí para limitar el período de tecnología permitida. En algún momento después de 1850, en algún momento antes de las computadoras digitales.
Si tiene un retraso de un día/semana/mes, su sistema se vuelve muy fácil de engañar. Simplemente deposito una gran cantidad de dinero y espero a que cada banco se actualice. Luego busco algunos amigos y familiares y les doy los detalles necesarios para retirar el dinero. Todos decidimos una cita, y luego nos separamos y vamos a diferentes sucursales. Entonces todos podemos retirar el dinero al mismo tiempo y no lo recuperará hasta que sus múltiples sucursales comiencen a recibir informes contradictorios días o semanas después. La velocidad es un requisito para mantener los sistemas distribuidos en funcionamiento, sincronizados y seguros.
Cifrado y 'diffs'. Vea cómo funcionan los sistemas de gestión de código fuente usando 'ramificación y fusión'

Respuestas (6)

Confianza

Mantener un libro mayor distribuido no es difícil en general . Lo que sí es difícil, y el problema que la moderna tecnología blockchain intenta resolver, es mantener un libro mayor distribuido cuando los nodos no confían entre sí.

Un banco con varias oficinas distribuidas no tenía (y todavía no tiene) el problema de la falta de confianza. Si la oficina central y las sucursales de un banco no confían entre sí, tienen problemas mucho mayores que mantener un libro mayor distribuido correcto, porque ningún libro mayor distribuido puede garantizar la veracidad de las transacciones reales, solo que las transacciones se replican correctamente.

Si podemos suponer que los nodos confían entre sí, entonces mantener un libro mayor distribuido se reduce a enviar copias de las transacciones locales a un nodo central y actualizar la copia local cuando el nodo central envía la verdad consolidada válida en una fecha determinada en el pasado. . Siempre habrá un retraso entre una transacción local y su reflejo en el libro mayor consolidado; pero esto se consideró perfectamente aceptable en un mundo donde la gente no esperaba una gratificación instantánea.

  1. "Tener un mecanismo para enviar actualizaciones de un nodo a todos los nodos": en un área geográfica limitada, como Europa occidental, usaron mensajeros. Cuando la tecnología avanzó y el telégrafo hizo posible la correspondencia oportuna a distancias más largas, utilizaron el telégrafo. Entonces llegó TELEX y los retrasos se hicieron mucho más cortos.

  2. "Tenga un mecanismo para garantizar que las únicas actualizaciones remotas que acepta estén 'encriptadas' o 'protegidas' de alguna manera": las firmas y los sellos funcionaron bien para este propósito, siempre que las oficinas centrales y las sucursales confíen entre sí.

  3. "Cuando hay un retraso de tiempo entre las actualizaciones del libro mayor, debe haber un mecanismo para determinar un estado de libro mayor 'correcto' por consenso entre los libros mayores:" la oficina central consolida y envía periódicamente el libro mayor real a partir del primer día del mes anterior.

En la práctica, los bancos resolvieron el problema de las demoras al establecer límites a las transacciones que podían realizarse sin la confirmación de la oficina central.

Esto dejó solo el problema de asegurar las comunicaciones en tránsito; los mensajeros confiables sirvieron bien para un área limitada, y varios libros de códigos y cifrados para distancias más largas. Por ejemplo, la famosa máquina Enigma se desarrolló y comercializó inicialmente como un medio para proteger los mensajes comerciales enviados por telégrafo.

PD Recuerda que antes de la primera guerra mundial tenían que mover grandes cantidades de metal precioso físico entre las oficinas...

Tengo un comentario al cuestionar esto, pero creo que ha hecho un gran trabajo al mostrar la diferencia entre cómo opera un banco y cómo opera una moneda distribuida como bitcoin. La confianza es todo. Si tienes confianza, es trivial distribuirlo. La contabilidad holandesa califica. Si tiene que permitir que personas que no son de confianza registren compras, esa es otra historia.

Tal vez una vez que el telégrafo entre en uso en el siglo XIX, antes de eso, el retraso de la señal lo matará. La red de prestamistas de dinero de Hawala parece calificar, pero se basa en el sistema de honor en lugar de tener un registro concreto generalizado de transacciones. La distribución de registros de manera segura a través de las distancias involucradas es factible, la Iglesia Católica se extendió por todo el mundo a velocidades de viaje aún más bajas. Por lo tanto, ciertamente puede enviar datos para actualizar los diversos libros de contabilidad individuales a lo largo de las rutas comerciales existentes y, finalmente , actualizarlos todos. Desafortunadamente, eventualmente significa "durante las próximas dos semanas" desde algún lugar central y "en el próximo mes o dos" si está hablando entre puestos fronterizos. Eso no sería un problema si pudiera tener su tercer requisito:

"Cuando hay un retraso de tiempo entre las actualizaciones del libro mayor, debe haber un mecanismo para determinar un estado de libro mayor 'correcto' por consenso entre los libros mayores"

Pero en realidad, el único estado del libro mayor que la gente (me refiero a los clientes más que a los empleados necesariamente bien capacitados) tomará en serio es el que está frente a ellos en blanco y negro. Siendo este el caso, esas pocas semanas de retraso necesarias para cubrir todo el rango geográfico del banco invariablemente terminarían ocasionalmente con el banco cargando con grandes deudas, tanto intencionales como accidentales, debido a costos inesperados o cargamentos vencidos o fraude total.

Siempre que la información pueda moverse más rápido que las personas y sus interacciones distribuidas con la red, la latencia sería tolerable.
@theRiley El problema proviene de transacciones individuales "casi simultáneas" (léase dentro del período de latencia) en los extremos de la red que interactúan entre sí de manera catastrófica cuando finalmente se revisan los totales.
eso tiene sentido, que también podría ser realizado de manera fraudulenta por conspiradores adecuadamente posicionados.
@theRiley Sí, eso es lo que quise decir con que el banco se quede con la bolsa de las deudas intencionales, dos, o posiblemente más, partes en los bordes de la red que se fugan deliberadamente con un saldo del que tienen derecho a retirar una sola vez.
@Ash: Me gustaría señalar que el problema del fraude se puede resolver distribuyendo no solo el libro mayor, sino también el dinero. Piense en ello como si cada entidad tuviera una cuenta por sucursal ; deben sentirse libres de barajar su dinero de una cuenta de sucursal a otra, sin embargo, cada cuenta de sucursal debe mantener un saldo positivo en cualquier momento.
@MatthieuM. Entonces tendría que operar con pagarés transfiriendo dinero de un banco a otro más que un único sistema de contabilidad compartido.
@Ash: Sí. El oro en sí no se movería, a menos que sea necesario un asentamiento, pero se movería la "propiedad"; como en Hawala. Todavía puede ser un libro mayor compartido en el que si una sucursal se incendiara, las otras podrían tener una copia de sus registros (para conciliar) y, por lo tanto, la "propiedad" almacenada allí no moriría con ella. Sin embargo, sin propiedad, me temo que los fraudes de latencia serían demasiado fáciles.
Posiblemente podría evitar el fraude relacionado con la latencia al solicitar que los retiros se registren y sean confirmados por todas las copias del libro mayor antes de liberar los fondos (es decir, esperar a que se cobre el cheque). Si sus clientes pueden o no tolerar esperar tanto tiempo para sacar su dinero es una historia diferente...
@bta - sí - este es el equivalente, en software, de un mutex (patrón de exclusión mutua)

No exactamente, al menos nada parecido a los modernos sistemas electrónicos distribuidos.

Espera que cada sucursal del banco tenga una copia completa de los libros de contabilidad. Cuando ocurre una transacción, se envía una copia del registro de la transacción a cada sucursal, que lo aplica tentativamente a su copia del libro mayor y, como medida de corrección de errores, devuelve el nuevo total en la cuenta. Si todos los totales coinciden, no hubo errores en el registro de la transacción y cada sucursal es informada del éxito y tiene el nuevo total en esa cuenta.

Todo esto se hace a mano. Copiado a mano, calculado a mano, cifrado a mano, y los registros en papel enviados por mensajería a cada sucursal donde se vuelve a descifrar a mano, la cuenta calculada a mano, el nuevo total generado a mano, la respuesta cifrada a mano, y enviado de vuelta por mensajería a la sucursal de origen para descifrar a mano y verificar los números. Si los totales no coinciden en alguna parte (muy probablemente debido a un error humano en cualquiera de los muchos pasos por parte de cualquiera de las personas involucradas en todas las sucursales), entonces lo hacen todo de nuevo.

Este es un proceso lento de mantener una copia completa de todo en cada sucursal. Podría llevar mucho tiempo verificar la información de una sucursal diferente y llevar físicamente los mensajes entre ellas. Esta es la razón por la que en el pasado reciente las transacciones podían tardar semanas en 'compensarse', y eso sin tener los extensos gastos generales de intentar copias completas en todas las sucursales, pero solo procesando las transacciones en las que el dinero se mueve entre bancos.

El costo de intentar mantener un libro mayor distribuido como este sería asombroso. La única razón por la que es plausible en la era moderna es que las comunicaciones electrónicas reducen el tiempo para realizar cada paso a prácticamente nada. Hacerlo todo a mano sería una cantidad asombrosa de trabajo y requeriría semanas entre transacciones (lo siento, no más operaciones bancarias en esta cuenta ya que todavía está procesando la última transacción, intente nuevamente el próximo mes).

Un escenario mucho más probable sería uno en el que cada sucursal operara de forma pseudoindependiente. Cuando alguien necesita realizar una transacción a través de una ubicación diferente a la de su sucursal principal, se envían mensajes entre las sucursales para decirle a la otra sucursal que ponga a disposición el dinero. Los sistemas antiguos de otorgar cartas de crédito o simplemente mantener saldos separados en cada sucursal (con transferencias entre cuentas comparativamente rápidas, solo una nota encriptada para hacer que $ X estén disponibles sin necesidad de confirmación de manera oportuna) son mucho más plausibles. Tal vez una política similar a la extensión de crédito en cada una de las sucursales, equivalente a aproximadamente la mitad del saldo conocido, con la regla vigente de que solo se puede retirar la mitad del saldo de la cuenta sin previo aviso para tener tiempo de notificar a las otras sucursales que estás vaciando la cuenta y no extender tu crédito.

Siempre tenga en cuenta los plazos requeridos y la mano de obra para procesar físicamente todo a mano (bolígrafo sobre registros en papel y tal vez un ábaco para ayudar con las matemáticas).

En realidad, es bastante fácil.

Cada banco anota sus transacciones y pone una copia en su archivador. Se envían copias de las transacciones del día (o de la semana) a los otros bancos por correo postal o mensajero y sus libros mayores se actualizan para incluir los datos de los otros bancos.

Así es como se hizo esto, y funcionó. Las personas solían adaptarse al tiempo de demora en la transmisión de datos de la misma manera que las redes informáticas modernas tienen que adaptarse al tiempo de demora cuando los datos se envían alrededor del planeta o a través de un satélite, aunque en una escala de días o semanas en lugar de microsegundos. .

Entonces, esta pregunta es un poco contradictoria porque está buscando un proceso algorítico en un sistema de información administrado completamente por humanos. Sin mencionar que incluso los sistemas actuales no están completamente automatizados.

Los sistemas actuales se basan en comunicaciones de baja latencia para resolver algorítmicamente la mayoría de las discrepancias. Sin embargo, no todas las discrepancias se resuelven, aquí es donde el sistema activa todo tipo de campanas de advertencia que los humanos deben resolver, las fuerzas del orden generalmente entran aquí.

De todos modos, los primeros 2 requisitos son discutibles. El primero es un sistema de retransmisión de información que puede ser el correo o los teléfonos. Dichos sistemas se abstrajeron bastante de cualquier toma de decisiones, con un factor de error humano obvio. El segundo es la criptografía, que ha existido mucho antes que las computadoras y cuyos muchos métodos se pueden buscar en Google. Esto también tiene imperfecciones, pero también las tiene las soluciones modernas que se relacionan con el párrafo inicial.

Ahora el último es el verdadero truco porque los retrasos de tiempo son inevitables en los sistemas antiguos. Este tema por sí solo tiene un libro completo sobre leyes, políticas y procedimientos bancarios. Haré todo lo posible para resumir los problemas generales:

Aprovechando la separación geográfica para retirar dinero de la misma cuenta en 2 lugares diferentes. Esto era común y formaba parte del fraude con cheques descrito en "atrápame si puedes". Esto se ve favorecido en gran medida por malas decisiones políticas impulsadas por la comerciabilidad de la conveniencia. Si los bancos simplemente requieren que todos los pagarés estén registrados en las localidades de su emisión y se niegan a asignar fondos hasta que el libro mayor certifique los fondos, entonces esto no sería un problema. Además, esto resolvería los sobregiros. También supondría un gran golpe para las velocidades de las transacciones internacionales, limitándolas a lo que sea la actualización del libro mayor.

Sabes que iba a tratar de resumir esto, pero es demasiado grande. Ahora solo voy a decir que su algoritmo se basa en los clientes, la política y las leyes geográficas de su banco. Mucha contabilidad y auditoría.

luz artificial, heliografía y técnicas de compresión de datos.

la seguridad es relativa.

una sustancia fotorreactiva, la luz que excluye el túnel, las torres de señales y los "códigos de barras" podrían lograr tasas de transmisión de datos significativas, ser bidireccionales, relativamente seguras, operadas por legos y hacer que los operadores sean increíblemente ricos al llevar correspondencia diplomática y de alto valor a muchas veces la tasa de viajes por mar o a caballo.

sin mencionar que las torres no se hunden en las tormentas.

por supuesto, entonces las patentes de radio habrían sido compradas por los rothschild y nunca verían la luz del día, pero no podemos tenerlo todo. =)