Merge branch 'main' into the-federation-layer-v0.6.0

This commit is contained in:
Reckless_Satoshi 2024-01-22 10:22:33 +00:00 committed by GitHub
commit b4b10cddfb
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
49 changed files with 1608 additions and 176 deletions

View File

@ -26,16 +26,5 @@ jobs:
with:
python-version: '3.12'
cache: pip
- run: pip install -r requirements_dev.txt
- name: Run linters
uses: wearerequired/lint-action@v2
with:
auto_fix: true
git_name: "Python Lint Action"
commit_message: "Fix code style issues with ${linter}"
commit: false
neutral_check_on_warning: true
black: true
flake8: true
# Flake8 doesn't support auto-fixing
flake8_auto_fix: false
- name: Ruff
uses: chartboost/ruff-action@v1

View File

@ -48,7 +48,7 @@ repos:
types_or: [javascript, jsx, ts, tsx, css, markdown, json] # uses https://github.com/pre-commit/identify
entry: bash -c 'cd mobile && npm run format'
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.1.11
rev: v0.1.13
hooks:
- id: ruff
stages:

View File

@ -1,4 +1,6 @@
{
"mainnet": "02187352cc4b1856b9604e0a79e1bc9b301be7e0c14acbbb8c29f7051d507127d7",
"mainnet": "037ff12b6a4e4bcb4b944b6d20af08cdff61b3461c1dff0d00a88697414d891bc7",
"mainnet_rpcserver": "robosats-devfund.m.voltageapp.io",
"mainnet_invoices_readonly_macaroon_hex": "0201036c6e640228030a10afe0d5e25ca0a9be87b47bc6cb5a31221201301a100a08696e766f69636573120472656164000006202686bde8e143447e3b4e5154ad0cde685100683d920ee4d26fb557554f91cca0",
"testnet": "03ecb271b3e2e36f2b91c92c65bab665e5165f8cdfdada1b5f46cfdd3248c87fd6"
}

View File

@ -30,11 +30,11 @@ masthead_title : # overrides the website title displayed in the masthe
# breadcrumbs : false # true, false (default)
words_per_minute :
robosats:
node_id : 02187352cc4b1856b9604e0a79e1bc9b301be7e0c14acbbb8c29f7051d507127d7
node_id : 0282eb467bc073833a039940392592bf10cf338a830ba4e392c1667d7697654c7e
maker_fee : 0.025 # In percent (%)
taker_fee : 0.175 # In percent (%)
total_fee : 0.2 # In percent (%)
max_trade_limit : "5,000,000" # In Satoshis
max_trade_limit : "4,000,000" # In Satoshis
min_trade_limit : "20,000" # In Satoshis
hours_public_default : 24 # In hours
hours_fiat_exchange : 24 # In hours
@ -128,9 +128,6 @@ author:
- label: "Twitter"
icon: "fab fa-fw fa-twitter-square"
url: "https://twitter.com/recksato"
- label: "Telegram"
icon: "fa-brands fa-telegram"
url: "https://t.me/Reckless_Satoshi"
- label: "GitHub"
icon: "fab fa-fw fa-github"
url: "https://github.com/RoboSats"

View File

@ -0,0 +1,17 @@
---
layout: single
title: "Guía de inicio rápido"
permalink: /docs/es/quick-start/
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/rocket.svg"/>Inicio rápido'
nav: docs
---
RoboSats es una manera fácil de intercambiar Bitcoin de forma privada por monedas nacionales. Simplifica la experiencia entre pares y utiliza hodl invoices para minimizar los requisitos de custodia y confianza.
**¡Vamos a ello!** Para empezar a usar RoboSats solo necesitas una [<i class='fa-solid fa-wallet'></i> wallet Lightning](/docs/es/wallets/) y [un navegador con TOR](/docs/es/tor/).
{: .notice--primary}
1. Hazte con una [Wallet Lightning](/docs/es/wallets/)
2. Descargar [Tor Browser](https://www.torproject.org/download/), o una [alternativa](/docs/es/access/) soportada
3. Accede a [RoboSats](/docs/es/access/)
4. Consulta los [tutoriales](/watch/es/) si es necesario!

View File

@ -0,0 +1,34 @@
---
layout: single
title: "La red Lightning"
permalink: /docs/es/lightning/
toc: true
toc_sticky: true
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/bolt.svg"/>Red Lightning'
nav: docs
src: "_pages/docs/es/00-quick-start/01-lightning.md"
---
La Red Lightning, o simplemente LN, es una red de micropagos fuera de la cadena (capa dos) que ofrece bajos costos y pagos instantáneos. RoboSats aprovecha las ventajas de realizar transacciones fuera de la cadena para brindar a los usuarios una experiencia rápida y económica. ¡Hay muchos recursos excelentes disponibles para aprender más sobre cómo funciona la Red Lightning! Consulta ["Mastering the Lightning Network"](https://github.com/lnbook/lnbook) como uno de esos recursos destacados.
RoboSats es experimental y, como tal, actualmente es respaldado por un [nodo coordinador experimental](https://amboss.space/node/{{site.robosats.node_id}}). La próxima [actualización de federación](https://github.com/RoboSats/robosats/pull/601) permite que cualquiera se convierta en un nodo coordinador y apoye la federación de RoboSats, creando así un libro de pedidos descentralizado pero unificado compuesto por miembros de la federación compitiendo entre sí para atraer a los comerciantes.
## **Usando de la Red Lightning**
Un requisito previo para usar LN es una billetera. Se recomienda encarecidamente utilizar una billetera no custodial y de código abierto donde solo tú tengas las claves. Las billeteras custodiales y cerradas pueden recopilar información sobre tus transacciones, información de la cuenta y posiblemente otros metadatos. Además, recuerda que cualquier fondo mantenido en LN no se considera almacenamiento en frío, sino que está en una billetera "caliente" conectada a Internet. Para usar RoboSats, se recomienda utilizar una billetera que sea compatible con [facturas de retención de Lightning](/docs/es/escrow/#what-is-a-hold-invoice), consulta [Entender > Billeteras](/docs/es/wallets/) para obtener una lista no exhaustiva de la compatibilidad de las billeteras LN.
Al utilizar Lightning, los pagos se realizan mediante facturas. El receptor de Sats proporciona una factura al remitente de Sats, a menudo en forma de un código QR, solicitando al remitente que pague la cantidad específica de Sats solicitada por la factura. La factura comienza con el prefijo "lnbc" y se puede decodificar para inspeccionar su contenido, como la cantidad de Sats enviados, el ID del nodo al que se enviaron los Sats, cualquier descripción proporcionada, etc.
La Red Lightning, tal y como está, no es completamente privada. Los usuarios deben tener cuidado de no revelar información sensible al enviar y recibir pagos en LN. No confíes en una billetera codigo cerrado y custodial para respetar tu información; puedes obtener un mayor grado de privacidad si usas una billetera no custodial. Además, consulta [Mejores Prácticas > Billeteras Proxy](/docs/es/proxy-wallets/) para obtener más información sobre preocupaciones de privacidad al recibir Sats a través de LN.
## **"Travesuras" en la Red Lightning**
Aunque es poco frecuente, puede suceder que algún nodo de enrutamiento intermedio se desconecte o que la transacción quede "atascada" al intentar un pago. Informalmente conocidos como "travesuras" en la Red Lightning, problemas como este se deben a las limitaciones actuales de LN. Se resuelven por sí mismos después de unas horas o como máximo un par de días.
Al comprar bitcoin (recibir Sats en LN), la factura que proporcionas puede fallar en el enrutamiento y requerir muchos intentos. RoboSats intenta enviar los Sats tres veces y, si falla, solicitará una nueva factura para intentarlo nuevamente. ¡Repite este proceso hasta que se envíe! Durante este tiempo, tus fondos se consideran seguros.
En caso de tal escenario, realiza una copia de seguridad segura del token privado de tu robot y verifica periódicamente el pago de tu pedido. Si el problema persiste, no dudes en comunicarte con el [grupo de soporte de SimpleX](/contribute/code/#communication-channels) para que el personal de RoboSats pueda investigar.
{% include wip %}

View File

@ -0,0 +1,21 @@
---
layout: single
title: "La red TOR"
permalink: /docs/es/tor/
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/tor.svg"/>TOR'
nav: docs
src: "_pages/docs/es/00-quick-start/02-tor.md"
---
[The Onion Router](https://www.torproject.org/download/), o TOR para abreviar, es un navegador de Internet FOSS y orientado a la privacidad que permite la comunicación anónima. Miles de repetidores voluntarios componen la red para dirigir el tráfico de Internet en todo el mundo de forma gratuita. RoboSats utiliza TOR como capa de privacidad y, por lo tanto, se recomienda encarecidamente [acceder a RoboSats](/docs/es/access/#-de-manera-privada-con-tor) a través de TOR.
Una alternativa a TOR es el [proyecto I2P](/docs/es/access/#-de-manera-privada-con-i2p). También puedes utilizar un navegador compatible con TOR, como Brave, pero los usuarios siempre deben asumir que están siendo espiados y tener cuidado para acceder a RoboSats de forma segura.
## Problemas con TOR
Utilizar TOR tiene desventajas tales como velocidades de conexión a la red más bajas, [tiempo de inactividad] esporádico (https://status.torproject.org/) debido a DDoS, y privacidad imperfecta con respecto a las técnicas de huella digital de sitios web.
Tenlo en cuenta cuando utilices RoboSats. Es importante hacer una copia de seguridad del token secreto de tu robot en caso de que la red TOR experimente problemas de conexión.
{% include wip %}

View File

@ -0,0 +1,77 @@
---
layout: single
title: "Accediendo a RoboSats"
permalink: /docs/es/access/
toc: true
toc_sticky: true
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/arrow-up-right-from-square.svg"/>Acceso'
nav: docs
src: "_pages/docs/es/00-quick-start/03-access.md"
---
## <img style='width:32px;height:32px' src='/assets/vector/tor.svg'/> De manera privada con TOR
Una forma segura y muy privada de usar RoboSats es a través de la dirección Onion. Necesitas el[navegador TOR](/docs/es/tor/).
> [<b>robosats</b>6tkf3eva7x2voqso3a5wcorsnw34j<br/>veyxfqi2fu7oyheasid.onion](http://robosats6tkf3eva7x2voqso3a5wcorsnw34jveyxfqi2fu7oyheasid.onion/)
**Privado:** tu conexión será encriptada de extremo a extremo y retransmitida por varias capas de nodos, lo que dificultará el seguimiento.
{: .notice--primary}
## <img style='width:36px;height:38px;-webkit-filter:grayscale(1);filter:grayscale(1);' src='/assets/vector/Itoopie.svg'/> De manera privada con I2P
I2P es otra forma segura y privada de usar RoboSats. Necesitas instalar [I2P](https://geti2p.com/en/download).
> [<b>robosats.i2p</b>?i2paddresshelper=r7r4sckft<br/>6ptmk4r2jajiuqbowqyxiwsle4iyg4fijtoordc6z7a.b32.i2p](http://robosats.i2p?i2paddresshelper=r7r4sckft6ptmk4r2jajiuqbowqyxiwsle4iyg4fijtoordc6z7a.b32.i2p)
## <i class="fa-solid fa-window-maximize"></i> De forma insegura en Clearnet
Hay una forma insegura de acceder a RoboSats sin TOR que se basa en servicios tor2web de terceros. Con esta URL puedes acceder a RoboSats desde cualquier navegador, pero usar esta URL es **altamente desaconsejado!**
> [unsafe.robosats.com](https://unsafe.robosats.com)
**Inseguro:** tu privacidad puede verse comprometida si utilizas la url insegura de clearnet en un navegador web normal.
{: .notice--secondary}
Si usas la URL de clearnet, debeberías asumir que estás siendo espiado. Sin embargo, las funciones más confidenciales de RoboSats están deshabilitadas (por ejemplo, el chat), por lo que los usuarios no pueden proporcionar datos personales. Usa esta URL solo para echar un vistazo rápido al libro de órdenes. Nunca lo uses para intercambiar o iniciar sesión en avatares de Robot activos.
## <i class="fa-solid fa-person-dots-from-line"></i> Todo en uno
Para simplificar las cosas, se ha creado la URL "robosats.com" para que sirva de enlace fácil de recordar y todo en uno para los navegadores. Si utiliza un navegador TOR o I2P, se le dirigirá al sitio Onion o I2P, respectivamente. De lo contrario, se le dirigirá al sitio no seguro de Clearnet.
> [<span style="font-size:larger;">robosats.com</span>](https://robosats.com)
## Otros
### Testnet
Puedes practicar y probar todas las funcionalidades de RoboSats sin perder fondos usando [Testnet Bitcoin](https://en.bitcoin.it/wiki/Testnet). Todo lo que necesitas es una wallet Lightning Testnet y acceder a la plataforma testnet
> [<b>robotest</b>agw3dcxmd66r4rgksb4nmmr43fh7<br/>7bzn2ia2eucduyeafnyd.onion](http://robotestagw3dcxmd66r4rgksb4nmmr43fh77bzn2ia2eucduyeafnyd.onion/)
O acceder de manera insegura via clearnet.
> [unsafe.testnet.robosats.com](http://unsafe.testnet.robosats.com)
### Onion Mirrors
Es posible acceder a la plataforma **testnet** en el puerto 8001 del onion de mainnet
> [robosats6tkf3eva7x2voqso3a5wcorsnw34j<br/>veyxfqi2fu7oyheasid.onion:8001](http://robosats6tkf3eva7x2voqso3a5wcorsnw34jveyxfqi2fu7oyheasid.onion:8001)
Tambien es posible acceder a la plataforma **mainnet** en el puerto 8001 del onion testnet
> [robotestagw3dcxmd66r4rgksb4nmmr43fh7<br/>7bzn2ia2eucduyeafnyd.onion:8001](http://robotestagw3dcxmd66r4rgksb4nmmr43fh77bzn2ia2eucduyeafnyd.onion:8001)
### Clearnet Mirrors
Hay varios servicios tor2web que sirven como mirrors en caso de que uno de ellos no esté disponible
> [unsafe.robosats.com](https://unsafe.robosats.com/) <br/>
> [unsafe2.robosats.com](https://unsafe2.robosats.com/) <br/>
> [unsafe3.robosats.com](https://unsafe3.robosats.com/) <br/>
> [unsafe.testnet.robosats.com](http://unsafe.testnet.robosats.com/) <br/>
> [unsafe2.testnet.robosats.com](http://unsafe2.testnet.robosats.com/)
{% include improve %}

View File

@ -0,0 +1,13 @@
---
layout: single
title: Buenas prácticas
permalink: /docs/es/best-practices/
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/hand-peace.svg"/>Buenas prácticas'
nav: docs
src: "_pages/docs/es/01-best-practices/00-best-practices.md"
---
Aunque RoboSats es muy privado y seguro desde el principio, siempre hay algunos pasos adicionales que puedes seguir para mejorar tu privacidad y minimizar riesgos.
{% include wip%}

View File

@ -0,0 +1,190 @@
---
layout: single
title: Encriptación fácil con PGP
permalink: /docs/es/pgp-encryption/
toc: true
toc_sticky: true
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/fingerprint.svg"/>Encriptación PGP'
nav: docs
src: "_pages/docs/01-best-practices/01-pgp-guide.md"
---
# Encriptación PGP en RoboSats
Todas las comunicaciones en RoboSats están encriptadas con PGP. La aplicación del cliente es completamente transparente y ofrece una manera fácil de copiar y exportar las claves PGP.
## Verifica la privacidad de tu comunicación
Puedes garantizar la confidencialidad de tus datos sensibles verificando la implementación del estándar PGP en RoboSats. Cualquier implementación de PGP de terceros que te permita importar claves y mensajes puede usarse para verificar el chat de RoboSats. En esta pequeña guía, usaremos la herramienta de línea de comandos [GnuPG](https://gnupg.org/).
### Importar claves en GnuPG
#### Importar tu clave privada encriptada
Cada avatar de robot tiene una clave pública y una clave privada encriptada. Podemos importar la clave privada a GPG, primero la copiamos desde RoboSats:
<div align="center">
<img src="/assets/images/sensitive-data-PGP-guide/copy-private-key.png" width="550"/>
</div>
Luego la importamos en GnuPG con el siguiente comando:
```
echo "<pega_tu_clave_privada_encriptada>" | gpg --import
```
Se verá así:
<div align="center">
<img src="/assets/images/sensitive-data-PGP-guide/gpg-1.png" width="450"/>
</div>
Se te pedirá que ingreses la contraseña de la clave privada. Usamos nuestro *token* de robot **supersecreto** para desencriptarlo, tú eres el único que conoce el *token* del robot.
<div align="center">
<img src="/assets/images/sensitive-data-PGP-guide/gpg-2.png" width="350"/>
</div>
Si tu token es el correcto, habrás importado la clave privada para la comunicación.
<div align="center">
<img src="/assets/images/sensitive-data-PGP-guide/gpg-3.png" width="650"/>
</div>
Podemos ver cómo la aplicación frontal llamó a esta clave `"RoboSats ID<hash>"`. Este es el ID del robot, el segundo hash SHA256 de nuestro *token* secreto, y se usó originalmente para generar de manera determinista el apodo y la imagen de avatar del robot ([aprende más](/docs/es/private/#robot-avatar-generation-pipeline)).
#### Importar la clave pública de tu compañero
Solo necesitamos repetir los pasos anteriores para importar la clave pública de nuestro compañero.
```
echo "<pega_la_clave_publica_de_tu_companero>" | gpg --import
```
<div align="center">
<img src="/assets/images/sensitive-data-PGP-guide/gpg-4.png" width="650"/>
</div>
Estamos listos. Hemos importado nuestra clave privada encriptada y la clave pública de nuestro compañero en GPG. Hasta ahora, todo parece estar bien.
### Desencriptar y verificar mensajes con GnuPG
#### Desencriptar mensaje
Ahora intentemos leer uno de los mensajes encriptados que nuestro compañero nos envió y veamos si se pueden desencriptar con nuestra clave privada y están correctamente firmados por él.
<div align="center">
<img src="/assets/images/sensitive-data-PGP-guide/chat-1.png" width="320"/>
</div>
Haciendo clic en el icono del "ojo", podemos ver el mensaje PGP ASCII en bruto. Podemos hacer clic en el botón de copiar para llevarlo a GnuPG.
<div align="center">
<img src="/assets/images/sensitive-data-PGP-guide/chat-2.png" width="320"/>
</div>
Todo lo que queda es desencriptar el mensaje PGP de nuestro compañero usando nuestra clave privada. Es muy probable que GnuPG nos pida nuevamente nuestro *token* para desencriptar nuestra clave privada.
```
echo "<pega_el_mensaje_de_tu_companero>" | gpg --decrypt
```
#### Verificación del mensaje encriptado
<div align="center">
<img src="/assets/images/sensitive-data-PGP-guide/gpg-5.png" width="650"/>
</div>
¡Voilà! Aquí está. Podemos estar seguros de que:
1. El **mensaje encriptado dice** "¡Es tan genial que RoboSats tenga una forma tan transparente de verificar tu comunicación encriptada!" (Marcado en rojo)
2. El mensaje solo puede ser desencriptado por 2 claves privadas: la nuestra y la de nuestro compañero. **¡Nadie más puede leerlo!** (marcado en azul)
3. El mensaje **fue firmado por nuestro compañero**, debe ser él. Nadie se ha infiltrado en este chat pretendiendo ser tu compañero. (marcado en verde)
Dado que los mensajes son firmados por los robots que llevan el registro, nuestro *token* de robot es muy útil en caso de una disputa. Si tu compañero intenta engañarte y luego miente al personal encargado de resolver la disputa, ¡puedes demostrarlo! Es útil exportar el registro completo del chat como Json (haz clic en el botón de exportación) o, al menos, conservar tu *token* de robot. Con eso, puedes proporcionar evidencia excelente de que dijo algo diferente en el chat privado contigo.
La aplicación frontal de RoboSats que se ejecuta en tu navegador realiza la tarea de encriptar, desencriptar y verificar cada mensaje. Pero en este tutorial lo hemos verificado de manera independiente y funciona como se espera: hemos verificado que **solo la persona con acceso al token del robot puede leer (desencriptar) y firmar mensajes** durante una transacción de RoboSats.
**Consejo profesional:** Para verificar de manera independiente que tu token es absolutamente secreto y nunca se envía a un tercero, necesitarás ejecutar un sniffer de paquetes de solicitudes HTTP. También puedes verificar por ti mismo el [código fuente del frontend](https://github.com/RoboSats/robosats/tree/main/frontend/src).
{: .notice--secondary}
## Legado: ¿Por qué se necesita la encriptación?
Inicialmente, RoboSats no tenía una configuración de encriptación PGP incorporada. Por lo tanto, los usuarios tenían que hacerlo manualmente para asegurar que sus comunicaciones fueran privadas. A continuación, se presenta un documento antiguo para aprender cómo encriptar tu comunicación usando OpenKeychain en Android. Sin embargo, la misma herramienta también se puede usar para verificar el canal de encriptación incorporado. ¿Quién sabe? Tal vez quieras encriptar tus mensajes dos veces. Entonces, esta es tu guía.
Dado que RoboSats funciona a través de la red TOR, todas las comunicaciones están cifradas de extremo a extremo. Esto ayuda a prevenir que los datos en tránsito sean leídos o manipulados por ataques de intermediarios. Además, el protocolo TOR asegura que el usuario está conectado al nombre de dominio en la barra de direcciones del navegador, en este caso, la dirección oficial de RoboSats en TOR (robosats6tkf3eva7x2voqso3a5wcorsnw34jveyxfqi2fu7oyheasid.onion). Sin embargo, en RoboSats v0.1.0, los datos se transferían en texto plano a través del front-end y el back-end de la aplicación. Este comportamiento permitía la posibilidad de que un sniffer malintencionado en la computadora de cualquiera de las partes o incluso en el servidor de RoboSats en la capa de abstracción de la aplicación capturara datos sensibles intercambiados sobre información de pago en moneda fiduciaria. Esto representaría un ataque a la privacidad del propietario de los datos. Incluso si el chat de RoboSats estuviera completamente encriptado en cada paso, aún así no debes confiar en que los datos sensibles estén encriptados (ver la guía de verificación anterior). La mejor práctica para evitar este problema era usar encriptación asimétrica durante el intercambio de datos sensibles; esta guía muestra un método que garantiza la confidencialidad de los datos sensibles utilizando el estándar PGP.
### Aplicaciones PGP
#### Android
OpenKeychain es una aplicación de Android de código abierto que te permite crear y gestionar pares de claves criptográficas y firmar y/o encriptar/desencriptar texto y archivos. OpenKeychain se basa en el bien establecido estándar OpenPGP, haciendo que la encriptación sea compatible entre dispositivos y sistemas. La aplicación OpenKeychain se puede encontrar en [[F-droid.org]](https://f-droid.org/packages/org.sufficientlysecure.keychain/) o en la tienda Google Play [[Enlace]](https://play.google.com/store/apps/details?id=org.sufficientlysecure.keychain).
<div align="center">
<img src="/assets/images/sensitive-data-PGP-guide_es/OpenKeychain-logo.png" width="150"/>
</div>
#### iOS
PGPro es una aplicación de iOS de código abierto que te permite crear y gestionar pares de claves criptográficas y firmar y/o encriptar/desencriptar texto y archivos. PGPro se basa en ObjectivePGP, que es compatible con OpenPGP. Puede encontrarse en su sitio web [[Enlace]](https://pgpro.app/) o en la tienda de aplicaciones de Apple [[Enlace]](https://apps.apple.com/us/app/pgpro/id1481696997).
<div align="center">
<img src="/assets/images/sensitive-data-PGP-guide_es/OpenKeychain-logo.png" width="150"/>
</div>
#### Otros
Para obtener una lista de software compatible con Windows, Mac OS y otros sistemas operativos, consulta [openpgp.org/software/](https://openpgp.org/software/). Dado que el concepto es el mismo, este método se puede replicar utilizando cualquier otra aplicación.
### Esquema de encriptación.
En la mayoría de los casos, la información sensible que queremos proteger es la información de pago en moneda fiduciaria del vendedor, es decir, el número de teléfono, la cuenta de PayPal, etc. Por lo tanto, la imagen a continuación muestra el esquema de encriptación que garantiza que la información de pago del vendedor solo pueda ser leída por el comprador.
<div align="center">
<img src="/assets/images/sensitive-data-PGP-guide_es/encrypted-communication-schema_es.png" width="900"/>
</div>
El proceso de intercambio de datos se ha dividido en 3 pasos sencillos:
- Creación de pares de claves por parte del comprador.
- Compartir la clave pública del comprador con el vendedor.
- Intercambio de datos encriptados.
### Guía paso a paso.
#### Creación de pares de claves por parte del comprador.
El primer paso para garantizar la confidencialidad de los datos es crear un par de claves pública/privada. A continuación, se muestran los pasos para crear un par de claves en la aplicación OpenKeychain; este procedimiento solo necesita hacerlo el comprador. Este paso solo necesita hacerse una vez, no es necesario repetirlo cuando los compradores deseen comprar de nuevo, ya que en una transacción futura ya tendrán el par de claves.
<br/>
<div align="center">
<img src="/assets/images/sensitive-data-PGP-guide_es/PGP-keys-creation-steps_es.png" width="900"/>
</div>
<br/>
#### Compartir la clave pública del comprador con el vendedor.
Ahora el comprador tiene dos claves, la clave privada debe conocerla únicamente su propietario (en este caso específico, el comprador, quien también la ha creado), y la clave pública puede ser conocida por cualquier otra persona (el vendedor). El vendedor necesita la clave pública del comprador para cifrar los datos sensibles, por lo que el comprador debe enviar el texto plano que representa la clave pública. Los pasos a continuación muestran cómo compartir el texto plano que representa la clave pública, así como cómo el vendedor la agrega a su aplicación OpenKeychain para usarla más tarde.
<br/>
<div align="center">
<img src="/assets/images/sensitive-data-PGP-guide_es/pub-key-sharing-steps_es.png" width="900"/>
</div>
<br/>
La clave debe copiarse, incluyendo el encabezado `(-----BEGIN PGP PUBLIC KEY BLOCK-----)` y el pie de página `(-----END PGP PUBLIC KEY BLOCK-----)` para el correcto funcionamiento de la aplicación.
### Intercambio de datos cifrados.
Una vez que el vendedor tiene la clave pública del comprador, se puede aplicar el esquema de cifrado mostrado anteriormente. Los siguientes pasos describen el proceso de intercambio de datos cifrados.
<br/>
<div align="center">
<img src="/assets/images/sensitive-data-PGP-guide_es/encrypted-data-sharing-steps_es.png" width="900"/>
</div>
<br/>
Los datos cifrados deben copiarse incluyendo el encabezado `(-----BEGIN PGP MESSAGE-----)` y el pie de página `(-----END PGP MESSAGE-----)` para el funcionamiento correcto de la aplicación. Si el comprador visualiza correctamente en la app los datos del vendedor significa que el intercambio ha sido exitoso y la confidencialidad de los datos está asegurada ya que la única clave que puede descifrarlos es la clave privada del comprador.
Si quieres leer un tutorial sobre cómo usar OpenKeychain para uso general, consulta [As Easy as P,G,P](https://diverter.hostyourown.tools/as-easy-as-pgp/)
{% include improve %}

View File

@ -0,0 +1,87 @@
---
layout: single
title: Encriptación fácil con PGP
permalink: /docs/pgp-encryption/es/
toc: true
toc_sticky: true
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/fingerprint.svg"/>Encriptación PGP'
nav: docs
src: "_pages/docs/es/01-best-practices/01-pgp-guide_es.md"
---
Cómo usar OpenKeychain para cifrar datos sensibles al usar RoboSats.
## ¿Por qué es necesaria la encriptación?
Dado que RoboSats funciona a través de la red Tor, todas las comunicaciones están cifradas de extremo a extremo. Esto ayuda a prevenir ataques de intermediarios que podrían leer o manipular datos durante su transmisión. Además, el protocolo Tor asegura que el usuario esté conectado al nombre de dominio en la barra de direcciones del navegador, en este caso la dirección Tor oficial de RoboSats (robosats6tkf3eva7x2voqso3a5wcorsnw34jveyxfqi2fu7oyheasid.onion). Sin embargo, en RoboSats v0.1.0, los datos se transfieren como texto sin formato a través del front-end (la interfaz de usuario) y el back-end (administración) de la aplicación. Esto podría hacer que los datos confidenciales como la información del pago en fiat (ARS, EUR, USD, …) puedan ser interceptados por un rastreador malicioso en el dispositivo de cualquiera de las partes o incluso en el servidor de RoboSats en la capa de abstracción de la aplicación. Esto supondría un ataque a la privacidad del titular de los datos. Incluso si el chat de RoboSats estuviera completamente encriptado en cada paso, no deberías confiar en que los datos confidenciales estén encriptados. La mejor práctica para evitar este problema es usar encriptación asimétrica durante el intercambio de datos confidenciales. Esta guía detalla un método que garantiza la confidencialidad de los datos personales utilizando el estándar PGP.
## La aplicación OpenKeychain.
OpenKeychain es una aplicación de Android de código abierto que permite crear y administrar pares de claves criptográficas y firmar y/o cifrar/descifrar texto y archivos. OpenKeychain se basa en el estándar OpenPGP que hace que el cifrado sea compatible en todos los dispositivos y sistemas. Puedes consultar una lista de software compatible para Windows, Mac OS y otros sistemas operativos, en este enlace: [openpgp.org/software/](https://openpgp.org/software/). Ya que el concepto es el mismo, este método se puede replicar utilizando cualquier otra aplicación. La aplicación OpenKeychain se puede encontrar en F-droid.org [[Link]](https://f-droid.org/packages/org.sufficientlysecure.keychain/) o en Google play store [[Link]](https://play.google.com/store/apps/details?id=org.sufficientlysecure.keychain)
<div align="center">
<img src="/assets/images/sensitive-data-PGP-guide_es/OpenKeychain-logo.png" width="150"/>
</div>
## Esquema de cifrado.
En la mayoría de los casos, la información confidencial que queremos proteger es la información de pago en moneda fiat del vendedor, es decir: el número de teléfono, la cuenta de PayPal, etc. La imagen a continuación muestra el esquema de encriptación que garantiza que la información de pago del vendedor solo pueda ser leída por el comprador.
<div align="center">
<img src="/assets/images/sensitive-data-PGP-guide_es/encrypted-communication-schema_es.png" width="900"/>
</div>
El proceso de intercambio de datos se ha dividido en 3 sencillos pasos:
- Creación de pares de claves por parte del comprador.
- Compartir la clave pública del comprador con el vendedor.
- Intercambio de datos encriptados.
## Guía paso a paso.
### Creación de pares de claves por parte del comprador.
El primer paso para garantizar la confidencialidad de los datos es crear un par de claves pública/privada. A continuación se muestran los pasos para crear un par de claves en la aplicación OpenKeychain. Este procedimiento solo debe ser realizado por el comprador. Este paso solo se debe realizar una vez, no es necesario repetirlo cuando el comprador quiera volver a comprar, ya que en una futura operación ya tendrá el par de claves.
<br/>
<div align="center">
<img src="/assets/images/sensitive-data-PGP-guide_es/PGP-keys-creation-steps_es.png" width="900"/>
</div>
<br/>
### Compartir la clave pública del comprador con el vendedor.
Ahora el comprador tiene dos claves: la clave privada sólo debe ser conocida por su propietario (en este caso concreto el comprador, que también la ha creado); la clave pública puede ser conocida por cualquier otra persona (el vendedor). El vendedor necesita la clave pública del comprador para cifrar los datos confidenciales, por lo que el comprador debe enviar el texto sin formato que representa la clave pública. Los pasos a continuación muestran cómo compartir el texto sin formato que representa la clave pública (imágenes 1-2), y también cómo el vendedor puede agregarla a su aplicación OpenKeychain para usarla más tarde (imágenes 3-8).
<br/>
<div align="center">
<img src="/assets/images/sensitive-data-PGP-guide_es/pub-key-sharing-steps_es.png" width="900"/>
</div>
<br/>
La clave debe copiarse incluyendo el encabezado `(-----BEGIN PGP PUBLIC KEY BLOCK-----)` y el pie de página `(-----END PGP PUBLIC KEY BLOCK-----)` para el funcionamiento correcto de la aplicación.
### Intercambio de datos encriptados.
Una vez que el vendedor tiene la clave pública del comprador, se puede aplicar el esquema de cifrado que se muestra arriba. Los siguientes pasos describen el proceso de intercambio de datos cifrados.
<br/>
<div align="center">
<img src="/assets/images/sensitive-data-PGP-guide_es/encrypted-data-sharing-steps_es.png" width="900"/>
</div>
<br/>
Los datos cifrados deben copiarse incluyendo el encabezado `(-----BEGIN PGP MESSAGE-----)` y el pie de página `(-----END PGP MESSAGE-----)` para el funcionamiento correcto de la aplicación. Si el comprador visualiza correctamente en la app los datos del vendedor significa que el intercambio ha sido exitoso y la confidencialidad de los datos está asegurada ya que la única clave que puede descifrarlos es la clave privada del comprador.
Si quieres leer un tutorial sobre cómo usar OpenKeychain para uso general, consulta [As Easy as P,G,P](https://diverter.hostyourown.tools/as-easy-as-pgp/)
{% include improve %}

View File

@ -0,0 +1,99 @@
---
layout: single
title: Buenas prácticas Fiat
permalink: /docs/es/payment-methods/
toc: true
toc_sticky: true
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/hand-peace.svg"/>Buenas prácticas Fiat'
nav: docs
src: "_pages/docs/es/01-best-practices/02-payment-methods.md"
---
Actualmente, no hay restricciones en el método de pago fiat. Puedes pagar con cualquier método que tanto tú como tu contraparte acordéis. Esto incluye el método de mayor riesgo, como PayPal, Venmo y Cash. Sin embargo, se recomienda el método de pago con menor riesgo. Puedes conocer más detalles sobre las características y diferencias de cada método de pago fiat en <a href = "https://bisq.wiki/Payment_methods#Payment_method_guides">Bisq wiki</a >. Las pautas de Bisq se aplican como pautas predeterminadas en RoboSats.
## Recomendación general
Esta recomendación se crea como una mejor práctica para operar en la plataforma RoboSats. Estas mejores prácticas es muy recomendable que ambos pares las sigan para garantizar el éxito del intercambio y evitar disputas innecesarias.
Nota: Esta guía es una modificación de las reglas de intercambio de <a href="https://bisq.wiki/Trading_rules">Bisq</a> y ajustada de acuerdo a las diferencias de funcionamiento de cada plataforma.
### Para ambos comprador y vendedor de bitcoin
1. Asegúrate de revisar la seccion <a href="https://github.com/Reckless-Satoshi/robosats/blob/main/docs/how-to-use.md">Cómo usar </a>antes de empezar a intercambiar.<br>
2. Indica el acuerdo claramente para evitar malentendidos.<br>
3. El método de pago fiat debería poder enviar y recibir instantáneamente porque la hodl invoice tiene un tiempo de expiración de 24 horas.<br>
Si el temporizador llega al vencimiento, podría desencadenar una disputa y podría conducir a una pérdida de la fianza.<br>
4. Después de que el tomador haya tomado la orden, ambas partes deben estar listas para pasar al siguiente paso antes de que expire el tiempo.<br>
5. Ten en cuenta que nadie puede leer el chat entre tu y tu contraparte.
### Para el comprador de bitcoin
1. Asegúrate de que la cuenta/dirección de destino de envío fiat sea correcta.<br>
2. Asegúrate de conservar el comprobante de envío fiat, como el recibo de la transacción.<br>
3. Haz click en el botón "Confirmar fiat enviado" después de enviar con éxito el fiat fuera de tu cuenta.<br>
### Para el comprador de bitcoin
1. Confirma si el cantidad final de fiat recibido es correcta.<br>
2. Haz click en "Confirmar fiat recibido" una vez que estés 100 % seguro de que el dinero fiat se haya depositado correctamente en tu cuenta.<br>
3. Si estás de acuerdo con el comprador en usar la plataforma de alto riesgo, necesitarás precauciones especiales para evitar la devolución de cargo (esto se discutirá más adelante).<br>
## Método de pago de riesgo medio-bajo
### Cheques regalo de Amazon
Los cheques regalo de Amazon son uno de los métodos de pago más privados en RoboSats. Tienden a ser rápidos y convenientes, pero los fondos deben gastarse en Amazon.
Es importante no compartir el código del cheque regalo directamente en el chat, ya que esto podría generar disputas difíciles de resolver en caso de fraude. Como vendedor, **no aceptes un código de cheque regalo en el chat**. En su lugar, el vendedor debe proporcionar un correo electrónico en el chat. El comprador debe comprar un nuevo cheque regalo explícitamente para el intercambio y enviarla a la dirección de correo electrónico del vendedor. De esta forma el vendedor sabe que es el único que tiene acceso al código canjeable. Este enfoque también genera evidencia verificable de que el cheque regalo se compró para el intercambio en RoboSats en caso de disputa.
En caso de que el comprador tenga un código de cheque regalo de Amazon, primero deberá aplicar el código a su propia cuenta. Luego comprar un nuevo cheque regalo de Amazon para el correo electrónico del vendedor utilizando el saldo de la cuenta.
Encuentra más detalles en [Pautas de Bisq para cheques regalo Amazon](https://bisq.wiki/Amazon_eGift_card)
### Interac e-Transfer
En Canadá, [Interac e-Transfer](https://www.interac.ca/en/consumers/support/faq-consumers/) es un método de pago popular y ampliamente aceptado utilizado para enviar pagos de una cuenta bancaria a otra, utilizando solo un correo electrónico registrado (o número de teléfono). Se considera que las transferencias electrónicas tienen un bajo riesgo de contracargos; sin embargo, los contracargos probablemente sigan siendo posibles en casos raros. Las transferencias electrónicas pueden ser iniciadas tanto por el remitente al enviar un pago al correo electrónico del destinatario, como por el receptor al enviar una solicitud de pago al correo electrónico del remitente.
### Wise
[Wise](https://wise.com/) (anteriormente TransferWise) es un transmisor de dinero internacional regulado en 175 países y 50 monedas. Es conocido por sus tarifas relativamente bajas para transferir dinero entre países y monedas. Los contracargos siguen siendo un riesgo, pero probablemente sean poco comunes. Los usuarios pueden transferir dinero entre cuentas de Wise utilizando una dirección de correo electrónico de manera similar a cómo funcionan las e-Transferencias; o en Canadá, los usuarios pueden solicitar e-Transferencias estándar directamente desde sus cuentas de Wise.
## Método de pago de alto riesgo
En esta sección se analiza la mejor práctica para los usuarios que intentan realizar transacciones con un método de pago con un alto riesgo de perder fondos.
### Paypal
Paypal es uno de los métodos de pago fiat más utilizados. Sin embargo, con la <a href="https://www.paypal.com/us/webapps/mpp/ua/buyer-protection">política de protección del comprador de Paypal</a>, el comprador puede realizar una acción fraudulenta creando una solicitud de reembolso en Paypal una vez finalizado el intercambio. De esta manera quedándose con el fiat y con el bitcoin.
Este fraude se puede prevenir acordando con el comprador que envíe dinero utilizando la opción "enviar dinero a un amigo o familiar". Esto hará que el comprador se convierta en el responsable de la tarifa de transacción y será menos probable que solicite un reembolso.
### Para el vendedor
Si eres un vendedor y tu contraparte acordó usar "enviar dinero a un amigo o familiar", pero tu contraparte usó la opción "enviar dinero por bienes o servicios", debes devolver el pago fiat y pedirle a su compañero que lo envíe con un método acordado. Si insisten en romper el acuerdo, puedes pedirle que finalice voluntariamente el intercambio o que finalice el intercambio comenzando una disputa.
### Para el comprador
Si eres un comprador y necesitas usar "enviar dinero a un amigo o familiar" para pagar dinero fiat a tu par, puedes elegir el tipo de pago especificado siguiendo estos pasos.
#### PayPal Desktop
En PayPal Desktop, se encuentra debajo de la lista desplegable de divisas, debería estar etiquetado como "Enviar a un amigo".
Si está etiquetado de otra manera, deberás hacer clic en "Cambiar" a la derecha para cambiar el tipo de pago.
<div align="center">
<img src="/assets/images/fiat-payment-methods/PayPal-main-desktop.png" width="370"/>
</div>
A continuación, selecciona "Enviar a un amigo" en la página de selección del tipo de pago.
<div align="center">
<img src="/assets/images/fiat-payment-methods/PayPal-choose-desktop.png" width="370"/>
</div>
#### PayPal movil
En PayPal móvil, se ubica debajo del método de pago (en este caso es VISA), debe estar etiquetado como “Amigos o Familiares”.
Si está etiquetado de otra manera, deberás presionar la pestaña ">" a la derecha para cambiar el tipo de pago.
<div align="center">
<img src="/assets/images/fiat-payment-methods/PayPal-main-phone.png" width="230"/>
</div>
A continuación, selecciona "Enviar a un amigo" en la página de selección del tipo de pago.
<div align="center">
<img src="/assets/images/fiat-payment-methods/PayPal-choose-phone.png" width="230"/>
</div>
{% include improve %}

View File

@ -0,0 +1,53 @@
---
layout: single
title: "Wallets Proxy"
permalink: /docs/es/proxy-wallets/
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/route.svg"/>Wallets Proxy'
nav: docs
src: "_pages/docs/es/01-best-practices/03-proxy-wallets.md"
---
Recibir en la red lightning puede revelar información personal
por lo que es importante tener en cuenta algunas cosas.
Si tu nodo tiene canales públicos
cualquier factura que hagas revelará los UTXOs que se usaron para abrir esos canales.
Si esos UTXOs provienen de un intercambio KYC,
entonces cualquiera con acceso a la base de datos del intercambio
podrá vincular tus facturas lightning a tu identidad.
Incluso si utilizas UTXOs coinjoined para abrir tus canales,
o que arrancar su nodo exclusivamente mediante el pago de los canales de entrada,
las facturas siguen siendo potencialmente comprometedoras
ya que permiten a un atacante correlacionar diferentes
pagos para saber que van a la misma entidad (tú).
Además, si cierras esos canales
los UTXOs resultantes seguirán ligados a esas
transacciones.
Si tu nodo sólo tiene canales no anunciados
será más difícil encontrar tus UTXOs onchain
pero seguirás teniendo el problema de la
correlación de pagos.
Para pequeñas cantidades, el uso de una wallet proxy de custodia es una forma razonable de
mejorar su privacidad al recibir en la red lightning.
Recibir en una buena cartera de custodia sólo revelará los UTXO del custodio.
Para conocer información sobre ti,
el pagador de tus facturas tendría que confabularse con el custodio del monedero.
Una alternativa sin custodia es usar un servidor lnproxy
para envolver las facturas a su propio nodo y recibir a las facturas envueltas en su lugar.
Simplemente genere una factura a su nodo y péguela en una interfaz web lnproxy.
El servidor lnproxy devolverá una factura "envuelta" al nodo de lightning del servidor lnproxy.
La factura empaquetada debe tener la misma
descripción y hash de pago que la que pegó,
y un importe ligeramente superior para tener en cuenta el enrutamiento.
Debe verificar esto utilizando un descodificador de facturas como https://lightningdecoder.com .
Si los hash de pago coinciden, puede estar seguro de que el nodo lnproxy
no será capaz de robar sus fondos.
A continuación, sólo tiene que utilizar la factura envuelta en cualquier lugar donde hubiera utilizado la factura original.
factura original.
Para aprender cualquier información sobre usted de una factura envuelta,
un atacante tendría que confabularse con el servidor lnproxy que usaste.
{% include wip %}

View File

@ -0,0 +1,13 @@
---
layout: single
title: "Canales Lightning"
permalink: /docs/channels/es/
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/circle-nodes.svg"/>Canales Lightning'
nav: docs
src: "_pages/docs/01-best-practices/04-channels_es.md"
---
<!-- TODO: ¿Debería abrir un canal al nodo de RoboSats? Depende. Establezca los 3 casos: 1) Como vendedor (buena idea, barata y confiable, pero podrían cerrarse eventualmente si no se usan), 2) como comprador (daría lo mismo, los compradores no pagan tarifas de enrutamiento. La privacidad es la misma) 3) Como nodo de enrutamiento (¡Vaya, súper útil! Sin embargo, no podemos garantizar que robosats sean un buen peer de enrutamiento: 1) muchos HTLC pequeños bloqueados durante largos períodos de tiempo 2) tiene tarifas altas 3) sin embargo, genera mucho movimiento legítimo de Sats, y es posible enrutar dos veces la misma orden. 4) Los Sats siempre estarán de tu lado, ¡y eso está bien! ¡Por diseño es cómo la liquidez es la más útil!) -->
{% include wip %}

View File

@ -0,0 +1,34 @@
---
layout: single
title: Privado por defecto
permalink: /docs/es/private/
toc: true
toc_sticky: true
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/user-ninja.svg"/>Privado'
nav: docs
src: "_pages/docs/es/02-features/01-private.md"
---
<!-- TODO: explain TOR, high entropy avatar, no registration, no identity reuse, lightning onion routing, no logs policy, etc. -->
RoboSats es absolutamente privado por defecto. Los cuatro ingredientes principales son:
1. **Sin registro.** Con un solo click generarás un avatar de robot: eso es todo lo que necesitas. Dado que no se necesita correo electrónico, teléfono, nombre de usuario o cualquier entrada del usuario, no hay forma posible de cometer un error y identificarte a ti mismo. Tus avatares de Robot no se pueden vincular a ti.
2. **Comunicación encriptada con PGP auditable.** Cada robot tiene un par de claves PGP para encriptar la comunicación de extremo a extremo. RoboSats hace que sea muy fácil para ti exportar tus claves y [<b>verificar por ti mismo</b>](/docs/es/pgp-encryption/) que la comunicación es privada con cualquier otra aplicación de terceros que implemente el estándar OpenPGP.
3. **Solo en la red Tor.** Tu ubicación o dirección IP nunca es conocida por el nodo o tus pares.
4. **Una identidad -> un intercambio.** Puede (y se recomienda) operar con una identidad diferente cada vez. Es conveniente y fácil. Ningún otro exchange tiene esta característica y **¡es fundamental para la privacidad!** En RoboSats, los observadores no tienen forma de saber que el mismo usuario ha realizado varios intercambios si usó diferentes avatares de robot.
La combinación de estas características hace que los intercambios en RoboSats sean lo más privados posible.
## Generación de avatares de robot
<div align="center">
<img src="/assets/images/private/usergen-pipeline.png" width="650"/>
</div>
Solo tu contraparte puede conocer cosas sobre ti mientras chateais. Mantén el chat breve y conciso y evita proporcionar más información de la estrictamente necesaria para el intercambio fiat.
**ProTip** Puedes mejorar tu privacidad usando una [billetera proxy](/docs/es/proxy-wallets/) lightning cuando compre Sats en RoboSats.
{: .notice--primary}
{% include wip %}

View File

@ -0,0 +1,13 @@
---
layout: single
title: Lightning Fast
permalink: /docs/es/fast/
toc: true
toc_sticky: true
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/jet-fighter.svg"/>Rápido'
nav: docs
src: "_pages/docs/es/02-features/02-fast.md"
---
{% include wip %}

View File

@ -0,0 +1,15 @@
---
layout: single
title: Seguro
permalink: /docs/es/safe/
toc: true
toc_sticky: true
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/shield.svg"/>Seguro'
nav: docs
src: "_pages/docs/es/02-features/03-fast.md"
---
<!-- TODO: Explain bonds, escrow, dispute resolution and community support. Be clear that this is an early development and experimental project, use with utmost caution. -->
{% include wip %}

View File

@ -0,0 +1,38 @@
---
layout: single
classes: wide
title: "Trade Pipeline"
permalink: /docs/es/trade-pipeline/
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/timeline.svg"/>Trade Pipeline'
nav: docs
src: "_pages/docs/es/03-understand/01-trade-pipeline.md"
---
Alice quiere comprar Sats de manera privada. Esto es paso a paso lo que sucede cuando compra usando RoboSats.
## Flujo de órdenes en pasos numéricos
1. Alice genera un avatar (AdequateAlice01) usando su token aleatorio privado.
2. Alice almacena de forma segura el token para poder recuperar AdequateAlice01 en el futuro.
3. Alice hace una nueva orden y bloquea una hodl invoice pequeña para publicarla (fianza de creador).
4. Bob quiere vender satoshis, ve el pedido de Alice en el libro y lo toma.
5. Bob escanea una hodl invoice pequeña como su fianza de tomador. El contrato termina.
6. Bob publica un hodl invoice con los satoshis a negociar. Mientras Alice envía su invoice de recibir.
7. En un chat privado, Bob le dice a Alice cómo enviarle el fiat.
8. Alice le paga a Bob, luego confirman que el fiat ha sido enviado y recibido.
9. Se cobra la hodl invoice de Bob y se envían los satoshis a Alice.
10. Las fianzas de Bob y Alice regresan automáticamente, ya que cumplieron con las reglas.
11. Las fianzas serían cobradas (perdidas) en caso de cancelación unilateral o engaño (disputa perdida).
## Flujo de ordenes en el organigrama
<div align="center">
<img src="/assets/images/trade-pipeline/buyer-en.jpg" width="650"/>
</div>
<div align="center">
<img src="/assets/images/trade-pipeline/seller-en.jpg" width="650"/>
</div>
{% include improve %}

View File

@ -0,0 +1,55 @@
---
layout: single
title: Robot Avatars
permalink: /docs/es/robots/
toc: true
toc_sticky: true
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/robot.svg"/>Robots'
nav: docs
src: "_pages/docs/es/03-understand/02-robots.md"
---
Identificate como un robot con su token privado correspondiente. ¡Usa esta identidad anónima para comenzar a hacer y recibir ordenes con RoboSats! No se recomienda usar el mismo robot dos veces ya que esto degrada la privacidad del usuario final.
Cada nueva visita a la página web del sitio de RoboSats presentará al usuario final un avatar de robot y un nombre de usuario generados de forma automática y aleatoria para proporcionar privacidad por defecto al usuario final.
Por lo tanto, asegúrate de **almacenar de forma segura el token privado** asociado con ese avatar específico. Sin el token, no podrás acceder ni volver a generar ese avatar único.
¡Recuerda ser conciso pero cortés cuando chatees con tus pares robots!
## **¿Por qué la privacidad?**
Dar prioridad a la privacidad absoluta del usuario final proporciona el mayor grado de protección. Los datos de los usuarios son especialmente propicios a ser explotados por piratas informáticos y ciberdelincuentes; Para evitar tales escenarios en primer lugar, RoboSats no recopila ningún dato del usuario.
Las plataformas que recopilan información personal presentan un riesgo real para el usuario. Las filtraciones de datos en la última década han filtrado informacion sensible de miles de millones de usuarios combinando piratería y seguridad deficiente de las plataformas.
La privacidad es extremadamente importante para RoboSats; sin embargo, tus transacciones en RoboSats son tan privadas como tu las realices. Los usuarios deben tener cuidado de utilizar métodos que preserven la privacidad al interactuar con RoboSats y sus pares robots. Consulte [Inicio rápido > Acceso](/docs/es/access/) para obtener información adicional.
## **Reutilización del robot: no recomendado**
Se recomienda encarecidamente generar un nuevo robot aleatorio después de cada operación para mejorar la privacidad. La reutilización de robots puede potencialmente exponer la información del usuario, ya que se pueden vincular varios pedidos a un solo avatar.
El token único asociado con cada avatar no está destinado a la reutilización del robot; más bien, está destinado a actuar como una contraseña para acceder a pedidos en curso y resolver disputas activas. Guarda este token de forma segura o correras el riesgo de no volver a acceder a ese avatar de robot en particular.
Recuperar un robot es fácil: simplemente reemplaza el token generado aleatoriamente con tu token respaldado y selecciona "Generar robot" para recuperar el perfil de tu robot.
Si bien es posible que nos encariñemos con nuestra identidad de robot único durante el breve tiempo en que se realiza o toma una orden, es mejor pasar a un nuevo avatar. ¡Piensa en todos los buenos momentos que tendrás haciendo y tomando ordenes con nuevas identidades de robot!
Como se indicó, la reutilización de robots es desaconsejable y, en última instancia, puede convertirse en un detrimento para la privacidad del usuario final.
## **Proceso de construcción de robots**
RoboSats hace referencia al código fuente de RoboHash.org como una forma rápida de generar nuevos avatares para un sitio web. Su robot se "construye" a partir de un token único, una cadena aleatoria de caracteres (ZD3I7XH...), donde solo esos caracteres en su orden exacto pueden generar ese avatar de robot exacto.
Se genera automáticamente un token para el usuario cada vez que se accede a la página web de RoboSats. Los usuarios pueden volver a generar tantos tokens aleatorios como deseen, lo cual se recomienda encarecidamente después de cada transacción. Como nota, puedes ingresar un token de entropía suficiente creada por ti mismo en lugar de confiar en RoboSats. Debido a que solo tu conoces el token, es aconsejable hacer una copia de seguridad del token de forma segura.
En el fondo, la creación de tokens en la página de inicio de RoboSats es el proceso de generar y cifrar tu clave privada PGP con tu token en el lado del cliente de la app. El usuario solicita al nodo RoboSats un avatar y un apodo generados a partir del token cifrado y le devuelve la identidad del robot correspondiente. Vea el gráfico a continuación:
![Generación de identidades de RoboSats](https://learn.robosats.com/assets/images/private/usergen-pipeline.png)
## **Comunicándose con sus pares robots**
Su identidad puede estar oculta por una identidad de robot, pero eso no es excusa para ser un compañero difícil durante los intercambios. ¡Otros robots también tienen robo-sentimientos! Se conciso y respetuoso al conversar con tus pares; esto hará que la experiencia en RoboSats sea más fácil y fluida. Nunca compartas más información de la que sea absolutamente necesaria para completar el intercambio.
Todas las comunicaciones en RoboSats están encriptadas con PGP. Los mensajes de chat cifrados entre pares están firmados por cada robot, lo que demuestra que nadie interceptó el chat y es útil para resolver disputas. Consulta [Buenas prácticas > Cifrado PGP](https://learn.robosats.com/docs/pgp-encryption/es/) para obtener información adicional.

View File

@ -0,0 +1,57 @@
---
layout: single
title: Premium sobre el Mercado
permalink: /docs/es/premium/
toc: true
toc_sticky: true
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/percent.svg"/>Premium'
nav: docs
src: "_pages/docs/es/03-understand/03-premium.md"
---
La prima asociada con su orden de par a par es la diferencia de precio que existe por encima o por debajo de la tasa actual de bitcoin-fiat que se encuentra en sus intercambios centralizados típicos.
Al navegar por el libro de ordenes, el precio de intercambio de bitcoin de los ordenes en vivo se ajusta automáticamente para incluir la prima correspondiente de la orden.
En la parte inferior de la interfaz de robosats se encuentra la prima de precio durante las últimas 24 horas, generalmente alrededor de +5%, y es de esperar en un entorno privado entre pares.
¡Elige una prima competitiva e incentiva a otros robots para que brinden liquidez al mercado con sus bitcoins y fiat anónimos!
## **Elegir una prima**
Crea una orden, luego ingresa la "Prima sobre el mercado (%)", que puede ser un valor de porcentaje positivo, negativo o cero. De forma predeterminada, la prima del pedido tiene un precio relativo a la tasa de mercado de bitcoin-fiat.
O, en lugar de la configuración predeterminada, los creadores de la orden pueden seleccionar el método fijo de precios explícito eligiendo una cantidad exacta de satoshis para intercambiar por la cantidad fiat dada.
Al seleccionar una prima, ten en cuenta los métodos de pago y el monto que hayas elegido; estos, junto con su prima deseada, competirán con otras órdenes en vivo para incentivar y atraer a los robots tomadores de la orden. Experimenta con diferentes primas para encontrar la que mejor se adapte a tus ordenes específicas.
Si compras bitcoin, entonces una prima más alta aumenta las posibilidades de que un vendedor tome la orden; o, si vendes bitcoin, entonces una prima más alta disminuye las posibilidades de que un comprador tome la orden. Como creador de ordenes, se muestra cómo se compara la prima de tu orden con el resto de ordenes activas de la misma moneda.
Resumiendo:
* Prima **Positiva**: opera BTC a un sobreprecio con respecto al precio promedio en los intercambios centralizados.
* Prima **Negativa**: opera BTC con un descuento con respecto al precio promedio en los intercambios centralizados.
* Prima **cero**: opera BTC sin diferencia de precio con respecto al precio promedio en los intercambios centralizados.
* Método de fijación de precios **relativo**: deja que la prima de precio se mueva con precio de mercado de bitcoin-fiat.
* Método de fijación de precios **explícito**: establezca una prima de precio utilizando una cantidad fija de satoshis.
* **Clasificación de prima**: indica cómo se clasifica la prima de su pedido respecto al resto de órdenes públicas con la misma moneda, desde 0 % (prima más baja) hasta 100 % (prima más alta).
Al realizar la orden, debajo del botón "Crear orden", verás un resumen en texto con la descripción tu orden. Por ejemplo, comprar bitcoin por $100 con una prima de +5,00% en relación con el precio de mercado sería: "Crear orden de compra de BTC por 100 USD con una prima del 5%".
Si se comete un error al seleccionar una prima, o el pedido no se toma dentro de tu preferencia de tiempo, entonces el pedido se puede cancelar fácilmente para hacer uno nuevo.
Ten en cuenta que el valor porcentual está limitado a dos decimales. Además, formatea los valores decimales usando "." (punto) y no "," (coma) como separador decimal.
## **¿Por qué tener primas?**
Naturalmente, muchos robots quieren comprar bitcoins pero muy pocos quieren vender; como consecuencia, existe una gran demanda de intercambio de bitcoins de forma privada. Las primas son simplemente el subproducto de esa relación de oferta y demanda en un mercado anónimo de par a par.
Por lo tanto, los compradores deben ser realistas y ajustar sus primas en consecuencia; de hecho, los vendedores que intercambian bitcoins por fiat generalmente buscarán una prima porque están proporcionando liquidez con sus bitcoins. Sin embargo, dependiendo de las condiciones del mercado, la prima puede volverse cero o negativa.
La privacidad es valiosa tanto para el comprador como para el vendedor y siempre vale la pena, ya sea por el tiempo, el esfuerzo o el riesgo; como tal, los usuarios pueden esperar una prima adicional con sus transacciones.
## **Información Adicional**
La prima relativa hace referencia a los tipos de cambio actuales de las API públicas, específicamente los precios de blockchain.io y yadio.io. Luego se calcula el precio medio de bitcoin en la moneda seleccionada y se muestra como la tasa de mercado que sigue su prima.
La prima de 24 horas que se muestra en robosats está determinada por la mediana ponderada, no por la media, de los pedidos exitosos en las últimas 24 horas. Este método de cálculo es más resistente a los valores atípicos y más representativo del consenso del mercado entre pares. En otras palabras, el usuario debe ver este valor como la prima que aproximadamente puede esperar pagar por una orden.

View File

@ -0,0 +1,80 @@
---
layout: single
title: Maker and Taker Bonds
permalink: /docs/es/bonds/
toc: true
toc_sticky: true
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/ticket-simple.svg"/>Bonds'
nav: docs
src: "_pages/docs/es/03-understand/04-bonds.md"
---
La **fianza de fidelidad** es un pequeño depósito que el usuario "bloquea" y que se desbloqueará después de que se complete la transacción; sin embargo, los usuarios pueden perder su fianza si no cumplen con las obligaciones del contrato.
El **proceso de comercio de RoboSats** utiliza fianzas de fidelidad para incentivar tanto al creador de la orden como al tomador a seguir las reglas y no engañar a su compañero robot. Más específicamente, las fianzas son [facturas bloqueadas](https://github.com/lightningnetwork/lnd/pull/2022) utilizando la Red Lightning; ¡es la tecnología que hace posible RoboSats!
Consulte [Comprender > Custodia de operaciones > ¿Qué es una factura retenida?](/docs/es/escrow/#what-is-a-hold-invoice) para comprender cómo funcionan en la práctica las facturas de retención.
Por defecto, la fianza es del 3% del monto total de la transacción. Alternativamente, los creadores de órdenes pueden personalizar este monto desde un 2% hasta un 15%. Fianzas más grandes significan más "compromiso" necesario para comerciar.
La fianza no sale de tu billetera Lightning, pero ten en cuenta que algunas billeteras funcionan mejor con RoboSats que otras debido a la naturaleza del mecanismo de factura bloqueada de Lightning. Consulta [Entender > Billeteras](/docs/es/wallets/) para obtener información adicional.
*Nota: La opción que permite a los "Tomadores sin fianza" está en desarrollo pero no está disponible por el momento.*
## **Cómo bloquear una fianza**
Primero, consulta [Entender > Billeteras](/docs/es/wallets/) para encontrar billeteras Lightning compatibles que facilitarán el uso de RoboSats. Dependiendo de la billetera, la factura puede mostrarse como un pago en tránsito, congelado o incluso como si estuviera fallando. ¡Consulta la lista de compatibilidad de billeteras!
Lee la guía correspondiente según si estás creando o tomando la orden:
* **Creador (Maker)**: Selecciona "Crear orden" y modifica las condiciones de la orden a tu gusto. La orden se puede personalizar para requerir una fianza diferente al 3% predeterminado del monto total de la transacción, variando desde un 2% hasta un 15%. Una vez completado, confirma con "Crear orden" y luego utiliza el siguiente código QR que se encuentra en el "Cuadro de contrato" con tu billetera Lightning para bloquear la cantidad indicada de satoshis para tu fianza. Siempre puedes cancelar la orden no tomada mientras esté activa y la fianza se desbloqueará automáticamente; sin embargo, si intentas cancelar la orden después de que sea tomada, perderás tu fianza. *Nota: Prepárate con tu billetera de antemano porque el cuadro de orden expira en diez minutos.*
* **Tomador (Taker)**: Explora el libro de órdenes y encuentra una orden a tu gusto. Simplemente selecciona la opción "Tomar orden" y luego utiliza el siguiente código QR que se encuentra en el "Cuadro de contrato" con tu billetera Lightning para bloquear la cantidad indicada de satoshis para tu fianza. *Nota: Prepárate con tu billetera de antemano porque el cuadro de orden expira en cuatro minutos. Si no procedes, la orden tomada vuelve a ser pública.*
Después de que se completa la transacción y ambos robots están satisfechos, las fianzas del creador y el tomador se desbloquean. Técnicamente, la fianza bloqueada nunca salió de tu billetera; pero ten cuidado, si no sigues las obligaciones del contrato intentando engañar o cancelando unilateralmente, perderás tu fianza de fidelidad.
Tu billetera puede tardar un tiempo en mostrar los fondos como desbloqueados en el saldo de tu cuenta. Algunas billeteras tienen dificultades para reconocer la factura bloqueada de Lightning como una retención temporal de tus fondos.
Si el problema persiste, ponte en contacto con el grupo de Telegram de RoboSats; pero ten cuidado con los estafadores que pueden contactarte directamente e hacerse pasar por el personal de RoboSats. El personal de RoboSats nunca se pondrá en contacto contigo primero. Consulta [Contribuir > Código > Canales de comunicación](/contribute/code/#communication-channels) para conocer los grupos de Telegram disponibles.
## **Perder tu fianza**
Básicamente, hay cinco condiciones que provocan que un usuario pierda su fianza:
* Engañar o decepcionar a tu par (y perder la disputa de la orden)
* Cancelar unilateralmente la orden sin la colaboración de tu par
* No presentar la factura de pago como comprador de bitcoin dentro del límite de tiempo dado
* No presentar la fianza de la transacción como vendedor de bitcoin dentro del límite de tiempo dado
* No confirmar que se recibió el fiat como vendedor de bitcoin
Las condiciones anteriores se detallan más a continuación.
Si el límite de tiempo para presentar la factura (comprador) o bloquear el fide
icomiso (vendedor) se agota, la orden caducará y el robot que no cumplió con su parte del trato perderá la fianza. La mitad de la fianza perdida va al robot honesto como compensación por el tiempo perdido.
Por lo tanto, no olvides tu orden porque una vez que un robot la toma y bloquea su fianza de fidelidad, podrías perder tu fianza si caduca el temporizador. ¡Asegúrate de recordar tu orden y respalda el token único de tu robot!
Si recibiste fiat pero no haces clic en "Confirmar recepción de fiat" en tu extremo, corres el riesgo de perder tu fianza, ya que se abre automáticamente una disputa y el personal de RoboSats encontrará que no seguiste las reglas del contrato.
Debido a los límites de tiempo involucrados en el proceso de orden, se recomienda utilizar métodos de pago instantáneo en fiat que ayuden a reducir las posibilidades de perder tu fianza. Consulta [Mejores prácticas > Métodos de pago](/docs/es/payment-methods/) para obtener información adicional.
No se recomienda abrir una disputa solo para cancelar una orden porque uno de los dos comerciantes perderá su fianza de fidelidad, salvo casos excepcionales que quedan a discreción del personal de RoboSats.
Como nota al margen, si RoboSats desaparece repentinamente o se cierra, las fianzas se desbloquean automáticamente ya que técnicamente nunca salieron de tu billetera.
## **¿No tienes bitcoin para las fianzas?**
Debido a que las fianzas requieren una factura bloqueada de Lightning, ¿qué puedes hacer si no tienes bitcoin desde el principio? Aunque la fianza suele ser solo del 3% de tu monto total de transacción, esto presenta una barrera real para usar RoboSats por primera vez si tu pila de satoshis no existe.
Actualmente, los tomadores sin fianza no están disponibles; sin embargo, ¡ten en cuenta que esto está en desarrollo! Los tomadores sin fianza presentan un mayor riesgo para el creador de la orden, ya que el tomador no tiene nada en juego. Puede ser razonable esperar primas más altas en órdenes que permiten tomadores sin fianza.
Hay una gran cantidad de aplicaciones y servicios disponibles donde se pueden ganar pequeñas cantidades de bitcoin. RoboSats no respalda una aplicación específica, pero los usuarios han informado éxito con aplicaciones como [Stacker News](https://stacker.news/), [Fountain](https://www.fountain.fm/), [Carrot](https://www.earncarrot.com/), [THNDR](https://www.thndr.games/), etc.
Dado que la fianza es una retención temporal de tus fondos, incluso podrías pedir prestados satoshis a un amigo solo para la fianza de fidelidad. Después de que la fianza se desbloquea de una transacción exitosa, ¡simplemente devuelve los fondos a tu amigo!
{% include improve %}

View File

@ -0,0 +1,79 @@
---
layout: single
title: Deposito de fianza
permalink: /docs/es/escrow/
toc: true
toc_sticky: true
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/money-bill-transfer.svg"/>Deposito de fianza'
nav: docs
src: "_pages/docs/es/03-understand/05-trade-escrow.md"
---
Cuando se vende bitcoin, se utiliza un deposito de fianza para proteger al comprador contra fraudes o impagos. la fianza actúa como una garantía de seguridad, aprovechando las [facturas de retención](https://github.com/lightningnetwork/lnd/pull/2022) de Lightning para una transacción sin confianza entre robots.
El tiempo asignado para presentar (bloquear) un deposito de fianza es determinado por el creador del pedido. El temporizador de vencimiento de la fianza predetermina a tres horas; sin embargo, esto se puede personalizar para variar entre una y ocho horas.
Si el vendedor no bloquea el deposito de fianza dentro del límite de tiempo dado en el pedido, entonces el vendedor pierde su fianza de fidelidad. Consulta [Entender > Fianzas](/docs/es/bonds/) para obtener información adicional sobre las fianzas de fidelidad. Además, si se abre una disputa, los satoshis en la fianza se liberan al ganador de la disputa.
Asegúrate de utilizar una billetera Lightning que funcione bien con RoboSats, consulta [Entender > Billeteras](/docs/es/wallets/) para obtener información adicional.
*Nota: El término "vendedor" se refiere a la venta de bitcoin, mientras que "comprador" se refiere a la compra de bitcoin.*
## **Qué es una Factura de Retención**
Las facturas de retención de Lightning, también conocidas como facturas "hodl", son un tipo de factura que "bloquea" fondos en tu billetera y luego "desbloquea" esos fondos según el estado de la factura, según lo determine el receptor. En algunas billeteras, la interfaz de usuario describe este tipo de pago como un pago "en tránsito" o "congelado".
A diferencia de los pagos típicos de Lightning que se bloquean y liquidan inmediatamente cuando llega el pago, una factura de retención solo bloquea el pago pero aún no lo liquida. A partir de este momento, el remitente no puede revocar su pago y, por lo tanto, los fondos están bloqueados en tu billetera pero aún no han salido de ella. El receptor elige si liquida (completa) o desbloquea (cancela) el HTLC y la factura.
En la práctica, la factura de retención de fianza está bloqueada hacia el nodo coordinador experimental de RoboSats. Esto significa que la factura se cobra exactamente cuando el vendedor hace clic en "Confirmar Fiat Recibido" y luego se paga la factura al comprador. Durante el tiempo que lleva liquidar el pago de Lightning al comprador, RoboSats tiene los fondos mientras intenta realizar repetidamente el pago al comprador.
Este método es, en este momento, el enfoque más seguro para asegurar que los compañeros cumplan con su parte del trato, ya que aún no se ha demostrado prácticamente una factura de retención directa entre el vendedor y el comprador con billeteras convencionales.
## **Cómo Presentar un deposito de fianza**
Primero, consulta [Entender > Billeteras](/docs/es/wallets/) para conocer las billeteras Lightning compatibles que facilitarán el uso de RoboSats. Dependiendo de la billetera, los fondos bloqueados pueden mostrarse como un pago en tránsito, congelado o incluso como si fallara. ¡Revisa la lista de compatibilidad de la billetera!
Lee la guía relevante según si estás creando o tomando un pedido para vender bitcoin:
- Creador: Selecciona "Hacer Pedido" y modifica las condiciones del pedido a tu gusto. El pedido se puede personalizar para requerir un "Tiempo de Espera de Depósito de fianza" (temporizador de vencimiento) diferente al predeterminado de tres horas, variando entre una y ocho horas. Cuando tu pedido en vivo sea tomado y el tomador haya presentado su fianza de fidelidad, usa el código QR que se muestra en la "Caja de Contratos" con tu billetera Lightning para bloquear la cantidad indicada de satoshis como garantía. *Nota: Los fondos de fianza se liberan al comprador una vez que seleccionas "Confirmar Fiat Recibido", lo que resuelve el pedido. Solo confirma después de que el fiat haya llegado a tu cuenta.*
- Tomador: Navega por el libro de pedidos y encuentra un pedido de tu agrado. Simplemente selecciona la opción "Tomar Pedido" y bloquea tu fianza de fidelidad. Inmediatamente después de enviar la fianza, usa el siguiente código QR que se encuentra en la "Caja de Contratos" con tu billetera Lightning para bloquear la cantidad indicada de satoshis como garantía. *Nota: Los fondos de fianza se liberan al comprador una vez que seleccionas "Confirmar Fiat Recibido", lo que resuelve el pedido. Solo confirma después de que el fiat haya llegado a tu cuenta.*
Tan pronto como el tomador del pedido bloquea su fianza, el comprador y el vendedor deben presentar la factura de pago y el deposito de fianza, respectivamente, dentro del límite de tiempo dado.
De forma predeterminada, el temporizador de vencimiento es de tres horas; sin embargo, como creador del pedido, puedes personalizar el temporizador para que varíe entre una y ocho horas. En otras palabras, modifica el tiempo permitido para bloquear los fondos de fianza y proporcionar la factura de pago. Tal vez quieras una transacción rápida y establecer el temporizador a un máximo de una hora en lugar de tres horas.
Si bloqueas los fondos de fianza antes de que el comprador haya proporcionado la factura de pago, deberás esperar para chatear con tu par hasta después de que hayan proporcionado la factura.
Si no bloqueas los fondos de fianza en absoluto, entonces el pedido expirará y el vendedor perderá su fianza. La mitad de la fianza perdida se destina al robot honesto como compensación por el tiempo perdido. Del mismo modo, si el comprador no proporciona la factura de pago dentro del límite de tiempo establecido, el comprador pierde su fianza.
Después de que se bloquea el deposito de fianza, el pedido no se puede cancelar excepto si tanto el creador como el tomador están de acuerdo en cancelarlo de manera colaborativa. Además, después de que el vendedor confirma que se recibió el fiat, el pedido ya no se puede cancelar de manera colaborativa. El pedido puede completarse con éxito o entrar en una disputa.
## **Cómo y Cuándo se Libera la fianza**
El deposito de fianza siempre se libera a su legítimo propietario según el estado del comercio o, si es necesario, el resultado de la disputa. Hay dos escenarios que hacen que el deposito de fianza se libere:
- Completar un comercio exitoso (el vendedor confirma que se recibió el fiat)
- Abrir una disputa si el comercio no tuvo éxito (el vendedor no confirmó intencionalmente que se recibió el fiat)
Los escenarios anteriores se expanden en detalle adicional a continuación.
Una vez que se coordina el método de pago en fiat con el comprador, el vendedor hace clic en "Confirmar Fiat Recibido" para finalizar el comercio, lo que libera los fondos de fianza al comprador. El vendedor solo debe confirmar que se recibió el fiat *después* de que aparezca en su posesión.
Si nunca recibiste el pago en fiat del comprador, no hagas clic en "Confirmar Fiat Recibido" y, en su lugar, abre una disputa para que el personal de RoboSats la revise. Intentar hacer trampa al no confirmar intencionalmente que se recibió el fiat resulta en que se abra automáticamente una disputa en nombre del comprador.
El robot tramposo correrá el riesgo de perder esa disputa y, consecuentemente, perderá su fianza. La totalidad de la fianza bloqueada se libera y se recompensa al robot honesto.
¡No olvides tu pedido! Si tu par envió el fiat y el temporizador del pedido expira antes de que confirmes que se recibió el fiat, correrás el riesgo de perder la siguiente disputa, lo que a su vez hará que pierdas tu fianza. ¡Asegúrate de recordar tu pedido y respalda el token único de tu robot!
Debido a los límites de tiempo involucrados en el proceso del pedido, se recomienda utilizar métodos de pago en fiat instantáneos para evitar exceder el temporizador de vencimiento. Consulta [Mejores Prácticas > Métodos de Pago](/docs/es/payment-methods/) para obtener información adicional.
Aunque sea una ventana de tiempo muy pequeña (aproximadamente un segundo), el deposito de fianza podría perderse permanentemente si RoboSats se cerrara o desapareciera repentinamente entre el momento en que el vendedor confirma que se recibió el fiat y el momento en que la billetera Lightning del comprador registra los fondos de fianza liberados. Utiliza una billetera Lightning bien conectada con suficiente liquidez entrante para ayudar a evitar fallas en el enrutamiento y, por ende, minimizar cualquier ventana de oportunidad de este tipo.
## **Información Adicional**
Algunas billeteras Lightning tienen dificultades para reconocer la factura de retención de Lightning como un bloqueo de fondos. Como vendedor, es necesario utilizar una billetera que permita múltiples HTLC pendientes, ya que deberás bloquear fondos para una fianza y luego un fideicomiso.
Si surgen problemas, comunícate con el grupo de Telegram de RoboSats; pero ten cuidado con los estafadores que pueden contactarte directamente e impersonar al personal de RoboSats. El personal de RoboSats nunca se comunicará directamente contigo primero. Consulta [Contribuir > Código > Canales de Comunicación](/contribute/code/#communication-channels) para conocer los grupos de Telegram disponibles.
{% include improve %}

View File

@ -0,0 +1,25 @@
---
layout: single
title: Disputas
permalink: /docs/esdisputes/
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/life-ring.svg"/>Disputas'
nav: docs
src: "_pages/docs/es/03-understand/06-disputes.md"
---
La mayoría de las veces, los conflictos surgen por una falta de comunicación entre compañeros. En muy raras ocasiones se producen intentos de fraude. En cualquier caso, es reconfortante saber que existe un proceso para resolver disputas y proteger al robot honrado.
## **Soporte**
El soporte y la mediación de disputas están disponibles a través del chat grupal público de RoboSats SimpleX. Consulta [Contribute > Code > Communication Channels](/contribute/code/#communication-channels) para obtener el enlace de invitación a SimpleX.
Existen otros chats grupales públicos disponibles, pero los problemas relacionados con disputas deben llevarse al chat grupal SimpleX.
*Nota: El personal de RoboSats NUNCA te enviará mensajes directos en privado. Ten cuidado con los estafadores que se hacen pasar por el personal de RoboSats y los administradores del grupo. Siempre debes ser cauteloso cuando alguien te pida que le envíes bitcoin para recibir ayuda.*
## **Ejemplo de Disputa**
Consulta [Tutoriales > Leer (en inglés) > Disputas](/read/en/#disputes) para obtener una descripción general de ejemplo del proceso de disputa.
{% include improve %}

View File

@ -0,0 +1,117 @@
---
layout: single
title: Compatibilidad de wallets RoboSats
permalink: /docs/wallets/es/
toc: true
toc_sticky: true
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/wallet.svg"/>Wallets'
nav: docs
src: "_pages/docs/03-understand/07-wallets_es.md"
# Icons
good: "<i style='color:#1976d2' class='fa-solid fa-square-check fa-2xl'></i>"
soso: "<i style='color:#9c27b0' class='fa fa-triangle-exclamation fa-2xl'></i>"
bad: "<i style='color:#ef5350' class='fa-solid fa-xmark fa-3x'></i>"
phone: "<i class='fa-solid fa-mobile-screen fa-xl'></i>"
laptop: "<i class='fa-solid fa-laptop fa-xl'></i>"
cli: "<i class='fa-solid fa-terminal fa-xl'></i>"
laptop_phone: "<i class='fa-solid fa-laptop-mobile fa-xl'></i>"
remote: "<i class='fa-solid fa-house fa-xl'></i>"
thumbsup: "<i style='color:#1976d2' class='fa-solid fa-thumbs-up fa-2xl'></i>"
thumbsdown: "<i style='color:#9c27b0' class='fa-solid fa-thumbs-down fa-2xl'></i>"
unclear: "<i style='color:#ff9800' class='fa-solid fa-question fa-2xl'></i>"
bitcoin: "<i class='fa-solid fa-bitcoin-sign'></i>"
---
Esta es una compilación no exhaustiva basada en la experiencia pasada de los usuarios. No hemos probado todas las wallets, si pruebas una wallet que aún no está cubierta, [informa aquí](https://github.com/Reckless-Satoshi/robosats/issues/44).
| Wallet | Versión | Dispositivo | UX<sup>1</sup> | Fianzas<sup>2</sup> | Pagos<sup>3</sup> | Comp<sup>4</sup> | Total<sup>5</sup> |
|:---|:---|:--:|:--:|:--:|:--:|:--:|:--:|
|[Alby](#alby-browser-extension)|[v1.14.2](https://github.com/getAlby/lightning-browser-extension)|{{page.laptop}}|{{page.good}}|{{page.good}}|{{page.good}}|{{page.good}} |{{page.thumbsup}}|
|[Blink](#blink-mobile-former-bitcoin-beach-wallet)|[2.2.73](https://www.blink.sv/)|{{page.phone}}|{{page.good}}|{{page.good}}|{{page.good}}|{{page.good}} |{{page.thumbsup}}|
|[Blixt](#blixt-androidios-lnd-light-backend-on-device)|[v0.4.1](https://github.com/hsjoberg/blixt-wallet)|{{page.phone}}|{{page.soso}}|{{page.good}}|{{page.good}}|{{page.good}}|{{page.thumbsup}}|
|[Blue](#bluewallet-mobile)|[1.4.4](https://bluewallet.io/)|{{page.phone}}|{{page.good}}|{{page.unclear}}|{{page.unclear}}|{{page.good}}|{{page.unclear}}|
|[Breez](#breez-mobile)|[0.16](https://breez.technology/mobile/)|{{page.phone}}|{{page.good}}|{{page.good}}|{{page.good}}|{{page.good}}|{{page.thumbsup}}|
|[Cash App](#cash-app-mobile)|[4.7](https://cash.app/)|{{page.phone}}|{{page.good}}|{{page.good}}|{{page.good}}|{{page.good}} |{{page.thumbsup}}|
|[Core Lightning](#core-lightning--cln-cli-interface)|[v0.11.1](https://github.com/ElementsProject/lightning)|{{page.cli}}|{{page.good}}|{{page.good}}|{{page.good}}|{{page.good}}|{{page.thumbsup}}|
|[Electrum](#electrum-desktop)|[4.1.4](https://github.com/spesmilo/electrum)|{{page.laptop}}|{{page.good}}|{{page.good}}|{{page.good}}|{{page.good}}|{{page.thumbsup}}||
|[LND](#lnd-cli-interface)|[v0.14.2](https://github.com/LightningNetwork/lnd)|{{page.cli}}|{{page.good}}|{{page.good}}|{{page.good}}|{{page.good}}|{{page.thumbsup}}|
|[lntxbot](https://github.com/RoboSats/robosats/issues/44#issuecomment-1054607956)|[NA](https://t.me/lntxbot)|{{page.laptop}}{{page.phone}}|{{page.good}}|{{page.good}}|{{page.good}}|{{page.good}} | [{{page.thumbsup}}](https://github.com/RoboSats/robosats/issues/44#issuecomment-1054607956)|
|[Mash](https://app.mash.com/wallet)|[Beta](https://mash.com/consumer-experience/)|{{page.laptop}}{{page.phone}}|{{page.good}}|{{page.good}}|{{page.good}}|{{page.good}} | {{page.thumbsup}}|
|[Muun](#muun-mobile)|[47.3](https://muun.com/)|{{page.phone}}|{{page.good}}|{{page.good}}|{{page.bad}}|{{page.bad}}|{{page.thumbsdown}}|
|[Phoenix](#phoenix-mobile)|[35-1.4.20](https://phoenix.acinq.co/)|{{page.phone}}|{{page.good}}|{{page.soso}}|{{page.soso}}|{{page.soso}}|{{page.unclear}}|
|[SBW](https://github.com/RoboSats/robosats/issues/44#issue-1135544303)|[2.4.27](https://github.com/btcontract/wallet/)|{{page.phone}}|{{page.good}}|{{page.good}}|{{page.good}}|{{page.good}}|{{page.thumbsup}}|
|[WoS](https://github.com/RoboSats/robosats/issues/44#issue-1135544303)|[1.15.0](https://www.walletofsatoshi.com/)|{{page.phone}}|{{page.good}}|{{page.good}}|{{page.good}}|{{page.good}}|{{page.thumbsup}}|
|[Zeus](#zeus-mobile-lnd-cln-eclair-remote-backend)|[v0.6.0-rc3](https://github.com/ZeusLN/zeus)|{{page.phone}}{{page.remote}}|{{page.soso}}|{{page.good}}|{{page.good}}|{{page.good}}|{{page.thumbsup}}|
1. **UX:** ¿Muestra claramente la wallet que hay un pago "en transito" (factura retenida)?
2. **Fianzas:** ¿Puede la wallet bloquear los invoices con tiempos de expiracioón largos necesarios para las fianzas?
3. **Pagos:** ¿Puede la wallet recibir pagos de RoboSats después de comprar Sats?
4. **Compatible:** ¿Es la wallet generalmente compatible con RoboSats?
5. **Total:** ¿Es la wallet suficientemente compatible y estable para ser usada consistentemente sin problemas?
### Alby (browser extension)
Alby es una extensión de navegador compatible con el estándar WebLN. Dado que RoboSats es compatible con WebLN, la experiencia con Alby es probablemente la mejor de su clase: no tendrás que escanear los códigos QR ni generar invoices, simplemente haz clic en la ventana emergente de Alby para confirmar las acciones. Puedes conectar la extensión de Alby a la mayoría de los nodos y wallets populares, o simplemente dejar que Alby aloje una wallet de custodia para ti.
Instrucciones especiales para instalar Alby en el navegador Tor:
1. Instala la extensión de Alby desde [Firefox add-ons store](https://addons.mozilla.org/en-US/firefox/addon/alby/)
2. Clicka en la extension de Alby y sigue los pasos para configurar tu wallet.
### Blink (Móvil, antiguo Bitcoin Beach Wallet)
Funciona bien con RoboSats. Las facturas de Hodl aparecen como "Pendiente" en el historial de transacciones. Los pagos a la wallet Blink funcionan según lo previsto. Wallet custodiado por Galoy que se originó en el proyecto Bitcoin Beach en El Salvador (anteriormente conocido como "Bitcoin Beach Wallet").
### Blixt (Android/iOS, backend ligero LND en el dispositivo)
La mayoría de las pruebas de desarrollo para Robosats se han realizado con Blixt. Es una de las wallets Lightning más completas que existen. Sin embargo, genera malentendidos cuando las facturas retenidas están bloqueadas, ya que muestra una rueda giratoria con el pago en tránsito. El usuario debe verificar el sitio web (robosats) para confirmar. Blixt permite múltiples HTLC pendientes, esto es necesario como vendedor ya que necesita bloquear un bono de tomador/creador y luego un fideicomiso comercial (2 HTLC concurrentes pendientes). Eventualmente, también podría mostrarse como facturas pagadas/cargadas que aún están pendientes, especialmente si el usuario fuerza el cierre de blixt y lo vuelve a abrir. Ocasionalmente pueden mostrarse como fianzas que de hecho han sido devueltas.
### Bluewallet (Móvil)
Funciona bien. Pero están teniendo problemas en el modo custodial. Las fianzas que devuelve RoboSats se cobran a los usuarios (¿entonces Bluewallet se queda con ese saldo?). Y los bonos que se reparten... ¡Blue los cobra dos veces! Más información una vez que nos respondan. EDIT: ¡Blue ha confirmado que están trabajando para resolver pronto estos errores contables!
### Breez (Móvil)
Funciona bien con RoboSats. Breez es una wallet no custodial. Así que ten en cuenta la gestión de canales y cosas así. Es una interfaz versátil y fácil de usar.
### Cash App (móvil)
Funciona bien con RoboSats. Las facturas de Hodl aparecen como "Pendientes" en el historial de transacciones. Los pagos a la wallet Cash App funcionan según lo previsto. wallet custodiada por Block, Inc, anteriormente conocido como Square, Inc, que está dirigido por Jack Dorsey.
### Core Lightning / CLN (CLI Interface)
Funciona como es esperado. El comando `lightning-cli pay <invoice>` no concluye mientras el pago está pendiente, pero puedes usar `lightning-cli paystatus <invoice>` para monitorear el estado.
### Electrum (Desktop)
La experiencia en el uso de Electrum es limitada. No parece admitir más de un HTLC pendiente (incluso si hay varios canales). No se recomienda usar esta wallet con RoboSats. Sin embargo, funciona bien si usted es un comprador, ya que solo se necesita una factura retenida para la fianza de fidelidad. El pago se muestra como pendiente con una rueda giratoria durante el tiempo de bloqueo.
### LND (CLI Interface)
Raw, muestra exactamente lo que está sucediendo y lo que sabe "IN_FLIGHT". No es fácil de usar y, por lo tanto, no se recomienda que los principiantes interactúen con Robosats. Sin embargo, todo funciona perfectamente. Si usas LNCLI regularmente, no encontrarás ningún problema para usarlo con RoboSats.
### Mash Wallet App (Mobile PWA & Desktop Web-Wallet)
En general, la wallet [Mash](https://mash.com/consumer-experience/) funciona de extremo a extremo con Robosats tanto en la venta como en la compra a través de lightning. La mayoría de los detalles relevantes de la factura en la wallet mash se muestran y son claros para los usuarios durante todo el proceso. Cuando las transacciones se completan, se abren en la aplicación móvil tanto en el lado del remitente como en el del destinatario para resaltar que las transacciones se han completado. El equipo tiene un error abierto para solucionar este problema en breve (esta nota es del 21 de agosto de 2023).
### Muun (Móvil)
Muun funciona igual de bien con las facturas retenidas que Blixt o LND. Puedes ser vendedor en RoboSats usando Muun y la experiencia de usuario será excelente. Sin embargo, para ser un comprador, debes enviar una dirección onchain donde recibir el pago, una invoice lightning no funcionará. Muun está haciendo un _ataque de desvío de tarifas_ a cualquier remitente que pague a Muun. Hay un salto obligatorio a través de un canal privado con una tarifa de +1500ppm. RoboSats estrictamente no enrutará el pago de un comprador por una pérdida neta. Dado que las tarifas de intercambio en RoboSats son del 0,2% y debe cubrir las tarifas de enrutamiento, **RoboSats nunca encontrará una ruta adecuada para un usuario de Muun**. Por el momento, RoboSats escaneará la invoice en busca de sugerencias de enrutamiento que potencialmente puedan codificar en un _ataque de desvío de tarifas_. Si se da el caso, la invoice será rechazada: envíe una dirección onchain en su lugar para un hacer un swap. Consulta [Entender > Pagos en cadena](/docs/es/on-chain-payouts/) para obtener más información sobre los intercambios en cadena. Es importante tener en cuenta que Muun tiene problemas en épocas de picos altos de comisiones en cadena. En cualquier caso, la solución para recibir a Muun es: o bien enviar una dirección en cadena o elegir un presupuesto de enrutamiento más alto después de activar el interruptor de "Opciones avanzadas".
### OBW (Móvil)
Uno de los más simples y uno de los mejores. La factura hodl muestra como "sobre la marcha", no es de custodial y puede crear sus propios canales. Compra uno a un proveedor de liquidez o utilice Hosted Channels. Es mantenido por el gran Fiatjaf y es un fork del abandonado SBW.
*Actualización 26-10-23: En este momento no tiene desarrollo ni soporte.
### Phoenix (Móvil)
Phoenix funciona muy bien como tomador de ordenes. Phoenix también funcionará bien como creador de ordenes, siempre que la configuración de la orden `duración pública` + `duración del depósito` sea inferior a 10 horas. De lo contrario, es posible que haya problemas para bloquear la fianza de creador. Si la duración total de los invoice de las fianzas/depositos supera los 450 bloques, Phoenix no permitirá que los usuarios bloqueen la fianza (`No se puede agregar htlc (...) razón = caducidad demasiado grande`).
### SBW (Móvil)
Desde la version 2.5 no soporta lightning
### Zeus (Móvil, LND, CLN, Eclair remote backend)
Es una interfaz para LND, CLN y Eclair. Funciona como es esperado. Es extremadamente engañoso con una pantalla roja completa "TIME OUT" unos segundos después de enviar el HTLC. Sin embargo, si el usuario consulta en el sitio web, el invoice se bloquea correctamente.
### Bitcoin Beach (Móvil)
La factura retenida se muestra como un ícono gris mientras espera. Debes tocar el botón Atrás para volver a la pantalla principal mientras el pago está pendiente.
## <i class="fa-solid fa-code-pull-request"></i> Ayuda a mantener actualizada esta página
Hay muchas wallets y todas siguen mejorando a la velocidad de la luz. Puedes contribuir al proyecto de código abierto RoboSats probando wallets, editando [el contenido de esta página](https://github.com/Reckless-Satoshi/robosats/tree/main/docs/{{page.src}}) y abriendo un [Pull Request](https://github.com/Reckless-Satoshi/robosats/pulls)
## Información adicional
Recibir Sats a través de Lightning no es completamente privado. Consulta [Best Practices > Proxy Wallets](/docs/es/proxy-wallets/) para más información sobre cómo recibir Sats de forma privada.
Si tienes problemas para recibir fondos en tu wallet (debido a problemas de gestión del canal, problemas de enrutamiento, problemas de la wallet, etc.), una solución rápida para recibir un pago rápido sería tener un segunda wallet a mano que esté bien conectado y con suficiente capacidad de canal. Podrías recibir Sats en tu segunda wallet y, una vez resueltos los problemas, enviarlos a tu wallet principal.
¡No dudes en contactar con el grupo de chat público RoboSats [SimpleX](/contribute/code/#communication-channels) para pedir consejo o ayuda en el uso de los wallets!
{% include improve %}

View File

@ -0,0 +1,25 @@
---
layout: single
title: Limites de intercambio
permalink: /docs/es/limits/
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/gauge-high.svg"/>Limites'
nav: docs
src: "_pages/docs/es/03-understand/08-limits.md"
---
RoboSats se basa en Lightning Network, una red de micropagos. Por lo tanto, las cantidades enviadas y recibidas a través de la Red Lightning deben ser lo suficientemente pequeñas como para encontrar con éxito una ruta adecuada.
El tamaño máximo de una operación es {{site.robosats.max_trade_limit}} Sats y el tamaño mínimo es {{site.robosats.min_trade_limit}} Sats.
Sin embargo, no hay límites a la cantidad de operaciones que puede realizar/tomar en RoboSats (aunque se recomienda encarecidamente limitar una orden por identidad de robot). Genere y gestione varias identidades de robot mediante la función Garaje de robots. Sólo asegúrese de hacer una copia de seguridad de sus tokens de robot secretos.
## **¿Por qué tener límites?**
La razón de tener un límite en la cantidad de Sats que puede enviar / recibir con RoboSats se debe a minimizar los fallos de enrutamiento Lightning. Esto hace que la experiencia del usuario final con RoboSats mucho más suave para asegurar que los fondos se pagan de forma fiable.
Cuantos más Sats intentes enviar a través de LN, más difícil será encontrar un camino. Si no hubiera límites en un pedido, entonces un usuario podría intentar recibir sats que nunca encontrarán una ruta adecuada.
Para reducir los quebraderos de cabeza y agilizar la experiencia, se ha establecido un límite sensible a la realidad de la capacidad media de los canales de la Lightning Network. Por ejemplo, intentar recibir 10 millones de saturaciones puede no resultar rentable si la capacidad media de los canales de la red es [muy inferior a 10 millones de saturaciones](https://1ml.com/statistics).
{% include improve %}

View File

@ -0,0 +1,57 @@
---
layout: single
title: P2P Swaps
permalink: /docs/es/swaps/
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/arrow-right-arrow-left.svg"/>Swaps'
nav: docs
src: "_pages/docs/es/03-understand/09-swaps.md"
---
Además de los diversos métodos de pago fiat disponibles, hay algo
llamado *Destino Swap* también. Estos son métodos de pago, pero en BTC, en una red que no sea Lightning Network. Esto es útil si deseas intercambiar satoshis lightning por satoshis on-chain (o en cualquier otra red como Liquid BTC si lo prefiere). Este proceso de intercambio de satoshis en la red Lightning a cambio de satoshis on-chain generalmente se denomina "swap".
La siguiente tabla hace facil entender el swap en términos de "comprador" y "vendedor":
| Lado | Vende | Recibe | Tipo Swap |
|-----------|-------------|------------|-----------|
| Vendedor | ⚡BTC | 🔗 BTC | Swap out |
| Comprador | 🔗 BTC | ⚡BTC | Swap in |
### Como hacer un swap P2P
Recuerda, en RoboSats siempre compras o vendes satoshis de Lightning. Si deseas recibir satoshis a través de Lightning a cambio de tus satoshis on-chain, crearás una orden de **COMPRA**. Por el contrario, si quieres recibir satoshis on-chain a cambio de tus satoshis Lightning, crearás una orden de *VENTA*.
En la pantalla de crear orden, selecciona "BTC" del menudo desplegable de moneda:
<div align="center">
<img src="/assets/images/understand/btc-swap-in-dropdown.png"/>
</div>
Selecciona el destino del Swap en el menú desplegable:
<div align="center">
<img src="/assets/images/understand/swap-destination-selection.png"/>
</div>
A continuación, establece la cantidad o rango por el que desea hacer el swap. Recuerda que si tu es un vendedor, entonces recibirás BTC on-chain; si eres el comprador, enviarás BTC on-chain:
<div align="center">
<img src="/assets/images/understand/amount-swap.png"/>
</div>
Luego simplemente crea la orden y espera a que un tomador tome la orden. En la sala de chat avanza como de costumbre, pero esta vez el método de pago es simplemente una dirección de bitcoin on-chain.
### Cantidad de orden y comisiones mineras
La cantidad a enviar on-chain debe ser del valor exacto mencionado en la orden. El que envía sats on-chain debe cubrir las tarifas de minería (tarifas de transacción on-chain).
### Que prima debería poner?
En el caso de los swaps, es mejor mantener la prima al 0%, pero si deseas hacer la oferta a tu contraparte, puedes seguir las siguientes recomendaciones:
1. Si eres el **vendedor** - estarás **recibiendo** BTC on-chain; ajustar la prima un poco por debajo de 0% (ej. -0.1%, -0.5%) hará tu oferta mas atractiva. El tomador ya paga un 0.125% de comisión en el intercambio y además tiene que pagar las tarifas de minado para enviar BTC on-chain.
2. Si eres el **comprador** - estarás **enviando** BTC on-chain; ajustar la prima un poco por encima de 0% (ej. 0.1%, 0.5%) hará tu oferta mas atractiva.
Estas son solo recomendaciones generales sobre qué prima configurar para comenzar con swaps, pero al final del día, el precio es el que establece el mercado, por lo que experimenta y comprueba lo que funciona para ti.

View File

@ -0,0 +1,110 @@
---
layout: single
title: Notificaciones, alertas y grupos en Telegram
permalink: /docs/es/telegram/
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/telegram.svg"/>Telegram'
nav: docs
src: "_pages/docs/es/03-understand/10-telegram.md"
---
<!-- Cover: telegram notification bot: how to enable (on phone and desktop). What are the privacy trade offs. Alert bot (Jacky). Telegram public support group, different language group. Warning: never reply to privates. Never share your robot token -->
{% include wip %}
**Robots Alert bot 🔔**
Puedes encontrarlo en Telegram con el nombre de usuario @RobosatsAlertBot,
cuyo administrador es @jakyhack.
**¿Que puedo hacer con @RobosatsAlertBot?**
Es un bot diseñado para notificarte cuando una orden que cumpla tus requerimientos
sea posteada en el libro de ordenes de RoboSats.
Esto quiere decir que si quieres "COMPRAR" satoshis con "EUROS" con una prima máxima
del "5%" a través de los medios de pago "BIZUM,PAYPAL,SEPA,STRIKE", díselo a
@RobosatsAlertBot y él se encargará de avisarte cuando una orden que cumple con
estos requisitos se publique en robosats.
**Guía de usuario**
Accede a @RobosatsAlertBot e inicia el bot con el comando /start
A continuación, te dará a elegir entre 2 opciones, añadir una nueva alerta o listar
las alertas que ya tienes configuradas (Obviamente cuando inicies el bot por primera
vez no tendrás ninguna).
![image](https://user-images.githubusercontent.com/47178010/170114653-f1d22f61-1db3-4a6a-b38c-5542a1b76648.png)
Crea una nueva alerta haciendo clic en el botón "+ Add new alert" o usando el comando /new
A partir de ese momento el bot está listo para guardar tus preferencias, te hará 4 preguntas:
- ¿Qué es lo que quieres hacer? Podrás elegir entre comprar o vender, esto significa
decirle al bot lo que quieres hacer dentro de Robosats.
![image](https://user-images.githubusercontent.com/47178010/170114706-a4226028-50a5-414e-8ae8-c44f90833ff6.png)
- ¿Cuál es tu moneda FIAT? Te dará una lista de monedas FIAT, solo elige la tuya
![image](https://user-images.githubusercontent.com/47178010/170114837-3e83f1c9-035a-4b59-8c8e-043f77995a33.png)
- ¿Cuál es la prima máxima que estás dispuesto a pagar? o ¿Cuál es la prima mínima
que estás dispuesto a aceptar? Dependiendo de si quieres comprar o vender satoshis
te hará una pregunta u otra.
![image](https://user-images.githubusercontent.com/47178010/170115618-66117113-e702-4faa-b02d-a8101244f7da.png)
- ¿Qué métodos de pago aceptas para realizar/recibir pagos con FIAT? Simplemente dile
al bot qué métodos de pago estarías dispuesto a aceptar para tu intercambio.
Informarle en el siguiente formato: "Revolut,SEPA,Strike,Bizum" (sin comillas).
Si es indiferente al método de pago FIAT, simplemente envía: "Any" (sin comillas).
![image](https://user-images.githubusercontent.com/47178010/170115693-7378b25a-93af-4ad3-ad7e-d0185364003d.png)
Una vez informado todo esto, tu alerta está configurada correctamente. En caso de que
se publique una orden en Robosats que cumpla con tus condiciones, @RobosatsAlertBot te
notificará por telegram con un enlace al libro de ordenes para que puedas continuar con
el intercambio si lo deseas. A continuación se muestra un ejemplo de una alerta.
![image](https://user-images.githubusercontent.com/47178010/170116003-6316c10a-0c6f-44bc-8eb6-17a1df8e1f3f.png)
**¿Con qué frecuencia mira robosats al libro de órdenes?**
Robosats revisa el libro de órdenes cada minuto, esto quiere decir que el tiempo máximo
que pasará desde que se publica una orden que cumple tus condiciones hasta que
@RobosatsAlertBot te notifica será de 1 minuto.
**¿Una vez que @RobosatsAlertBot me haya notificado, ¿puedo usar esa misma alerta nuevamente?**
Sí, una vez que @RobosatsAlertBot te notifica, tu alerta permanece en deshabilitada,
simplemente vuelve a habilitarla y @RobosatsAlertBot te notificará nuevamente cuando
una orden cumpla con tus condiciones.
**¿Qué puede ir mal?**
No pasa nada, pero puede haber decepciones, es posible que las condiciones de tu alerta
sean condiciones compartidas por muchos usuarios, esto significa que hay muchos usuarios
que quieren encontrar una orden con las mismas (o muy similares) condiciones que tú.
Esto significa que un pedido con condiciones muy restrictivas puede estar en el libro de
órdenes muy poco tiempo porque algún otro usuario lo acepta antes que tú, por lo que el
creador del bot recomienda tenerlo siempre con sonido.
**PÉRDIDA DE PRIVACIDAD**
Robosats es un exchange enfocado en la privacidad del usuario, es por eso que no se
utiliza KYC y su uso óptimo está orientado a ser utilizado con el navegador TOR.
Una vez que abandonas TOR y vas a una aplicación de terceros (Telegram en este caso)
estás perdiendo privacidad.
Este bot, como cualquier otro, almacenará tu ID de usuario de Telegram, ya que es
necesario para contactar con el usuario. También almacenará los datos de tu alerta.
Es decir, el bot sabrá que el usuario 123456789 tiene una alerta para comprar sats con
euros con un máximo del 5% de prima a través de bizum o paypal o strike.
Es importante tener esto siempre en cuenta. No debemos obsesionarnos con la privacidad,
pero sí debemos tener en cuenta lo que damos y lo que no damos de ella.

View File

@ -0,0 +1,11 @@
---
layout: default
title: RoboSats API v0.1
permalink: /docs/es/api-v0.1/
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/cloud.svg"/>API'
nav: docs
src: "_pages/docs/es/03-understand/11-api.md"
---
{% include api-latest.html %}

View File

@ -0,0 +1,13 @@
---
layout: single
title: Precio de las ordenes
permalink: /docs/es/prices/
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/bitcoin.svg"/>Precios'
nav: docs
src: "_pages/docs/es/03-understand/12-prices.md"
---
<!-- Cover: relative and explicit pricing. External APIs, and median price computation. When and how price is set and how trade_amount sats is converted into payout_amount and escrow_amount applying the fee factors -->
{% include wip %}

View File

@ -0,0 +1,93 @@
---
layout: single
title: Comisiones de la plataforma
permalink: /docs/es/fees/
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/hand-holding-hand.svg"/>Comisiones'
nav: docs
src: "_pages/docs/es/03-understand/13-fees.md"
---
RoboSats cobra una comisión de {{site.robosats.total_fee}}% del importe total de la operación; esta comisión se distribuye entre el emisor y el receptor de la orden, que pagan {{site.robosats.maker_fee}}% y {{site.robosats.taker_fee}}%, respectivamente.
Las comisiones de la plataforma se resumen en la siguiente tabla para enfatizar que el porcentaje de comisión depende de si usted hace o toma la orden:
| Lado | Maker | Taker |
|--------|------------------------------|------------------------------|
| Comprador | {{site.robosats.maker_fee}}% | {{site.robosats.taker_fee}}% |
| Vendedor | {{site.robosats.maker_fee}}% | {{site.robosats.taker_fee}}% |
*Nota: Se puede incurrir en tasas externas, como las tasas de enrutamiento de Lightning Network y las tasas de transacción en la cadena.
## **Costes de plataforma en la práctica**
La comisión total ({{site.robosats.total_fee}}%) se divide entre el creador y el receptor. El comprador paga una cantidad mayor ({{site.robosats.taker_fee}}%) que el vendedor ({{site.robosats.maker_fee}}%); esto está diseñado para animar a más vendedores y aumentar la liquidez disponible en la bolsa.
En la práctica, las comisiones se aplican cuando se presenta al usuario la presentación de la garantía de la operación (vendedor) o la factura de pago (comprador) después de que se bloquee la garantía del tomador.
Si el precio de la orden es *relativo*, entonces la cantidad de Sats que se negocia en relación con el tipo de cambio fiat (que llamaremos `trade_sats`) fluctúa hasta que se bloquea el bono tomador. En los casos de precios de órdenes *explícitos*, la cantidad de Sats que se negocia es fija. Consulte [Entender > Precios](/docs/es/prices/) para obtener información adicional sobre los métodos de fijación de precios relativos y explícitos.
Hasta que se bloquea el bono del tomador, el precio de la orden continúa moviéndose con el mercado a lo largo del tiempo. Una vez que el bono taker está bloqueado para una orden con precio relativo, la cantidad de Sats que se negocia se calcula de la siguiente manera:
````
tasa_prima = tasa_CEX * (1 + (prima / 100))
trade_sats = cantidad / tasa_prima
````
donde `trade_sats` son los Sats que se van a negociar, `premium` es lo que el creador de la orden definió durante la creación de la orden, y `CEX_rate` es el precio actual de cambio de bitcoin dada la moneda que se está utilizando.
Las comisiones de la plataforma (`fee_sats`) asociadas a tu orden se calculan usando la variable `trade_sats`:
* Para maker:
````
fee_fraction = 0.002 * 0.125
= 0.00025 ==> {{site.robosats.maker_fee}}%%.
fee_sats = trade_sats * fee_fraction
````
* Para el tomador:
````
fee_fraction = 0.002 * (1 - 0.125)
= 0.00175 ==> {{site.robosats.taker_fee}}%
fee_sats = trade_sats * fee_fraction
````
donde `fracción_de_tarifa` se combina para una tarifa de plataforma total compartida de {{site.robosats.total_fee}}%. Como se ha indicado anteriormente, el tomador paga una cantidad mayor ({{site.robosats.taker_fee}}%) que la que paga el creador ({{site.robosats.maker_fee}}%) para fomentar el crecimiento de la liquidez con más creadores de órdenes.
RoboSats cobra las comisiones en el proceso de depósito en garantía (`escrow_amount`) y factura de pago (`payout_amount`) calculando lo siguiente:
* Para el vendedor:
````
escrow_amount = trade_sats + fee_sats
````
* Para el comprador
````
payout_amount = trade_sats - fee_sats
````
En esencia, RoboSats añade a la `escrow_amount`, deduce de la `payout_amount`, y, dependiendo de si usted es el tomador de la orden o el ordenante, se aplica el apropiado `fee_fraction` cálculos.
## **¿Por qué hay comisiones?**
Las cuotas sirven para mejorar la experiencia del usuario final de la plataforma a través del desarrollo continuo, ofreciendo soporte multilingüe y elaborando guías para interactuar con la plataforma.
A su vez, las tarifas recompensan a los desarrolladores y colaboradores voluntarios de GitHub por completar tareas que son [elegibles para ganar bitcoin](https://github.com/users/Reckless-Satoshi/projects/2). ¡Compruébalo! Si ganas Sats por tus contribuciones, las tasas en las que incurras al utilizar RoboSats estarán suficientemente cubiertas.
Implementar tarifas también ayuda a mitigar la oportunidad de ataques de denegación de servicio por parte de bots maliciosos que congestionan el coordinador RoboSats.
## **Tarifas externas**
Se puede incurrir en comisiones externas de la plataforma cuando se realizan pagos en la cadena (swaps en la cadena) y cuando se enrutan pagos a través de la Red Lightning.
Al elegir recibir bitcoin en la cadena, se muestra un resumen de la tasa de minería (`fee_mining`) y la tasa de intercambio (`fee_swap`). El `payout_amount` para recibir on-chain se calcula de la siguiente manera:
````
payout_amount = trade_sats - fee_sats - fee_mining - fee_swap
````
La tasa de intercambio es una tasa adicional que RoboSats cobra por hacer el pago en la cadena y la tasa de minería es la tasa de la tasa en la cadena en sats/vbyte que se puede personalizar para adaptarse a sus necesidades. Consulte [Entender > Pagos en cadena](/docs/es/on-chain-payouts/) para obtener información adicional sobre los pagos en cadena.
RoboSats aprovecha la velocidad y la seguridad de la Red Lightning, por lo tanto los pagos enviados a través de la Red Lightning pueden incurrir en gastos dependiendo de la "ruta" necesaria que el pago debe tomar.
Los usuarios pueden recibir pagos de forma privada a través de [lnproxy](https://lnproxy.org/), una sencilla herramienta de privacidad de la Red Lightning, pero su presupuesto de enrutamiento puede aumentar para cubrir las tarifas adicionales en las que incurre el servidor lnproxy. Consulte [Best Practices > Proxy Wallets](/docs/es/proxy-wallets/) para obtener más información sobre la recepción privada.
El usuario tiene la opción de especificar el presupuesto de enrutamiento de Lightning Network, que puede ayudar a reducir los fallos de enrutamiento. Consulta [Quick Start > Lightning Network](/docs/es/lightning/) para obtener más información sobre los fallos de enrutamiento.
{% include improve %}

View File

@ -0,0 +1,48 @@
---
layout: single
title: Pagos On-chain
permalink: /docs/es/on-chain-payouts/
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/link-solid.svg"/>Pagos on-chain'
nav: docs
src: "_pages/docs/es/03-understand/14-on-chain-payouts.md"
---
Aunque Robosats es un exchange construido sobre la red lightning, hay una opción para que el comprador reciba sus sats en una dirección BTC on-chain. Esto se conoce como pago on-chain o, a veces,intercambio a on-chain (que no debe confundirse con [Swaps P2P](/docs/es/swaps/es)). En la interfaz de usuario, esta opción está disponible después de que el tomador haya bloqueado su fianza.
Cuando el estado de la orden es "Esperando factura del comprador", deberías ver dos opciones: "Lightning" y "on-chain":
<div align="center">
<img src="/assets/images/understand/14-on-chain-payouts/contract-box-on-waiting-for-buyer-invoice.png"/>
</div>
Cuando hagas click en la opción de dirección on-chain, veras lo siguiente:
<div align="center">
<img src="/assets/images/understand/14-on-chain-payouts/on-chain-box.png"/>
</div>
Se muestra una descripción general de las tarifas y puedes ingresar una dirección bitcoin on-chain donde recibir el pago y también ingresa la tarifa de minería. La *Comisión de swap* es un comisión adicional que cobra Robosats por realizar el pago on-chain. Esto no incluye las comisiones del tomador/creador. La comisión del Swap se cobra sobre el importe después de deducir las comisiones de tomador/creador.
Además de la comisión de swap, también existe la tarifa de minería para la transacción on-chain. Puedes elegir la tarifa de minería que se adapte a tus necesidades. La entrada *Tarifa minera* te permite elegir la tarifa en sats/vbyte.
Si la dirección on-chain es válida, entonces la orden pasa a la siguiente etapa como habitualmente. Al final, si la operación es exitosa, debería ver una pantalla con el id de transacción de pago:
<div align="center">
<img src="/assets/images/understand/14-on-chain-payouts/successful-trade-on-chain.png"/>
</div>
### Comisiones de pago on-chain
Las comisiones de pago on-chain (también conocidas como comisiones de swap) van cambiando de vez en cuando. Puede oscilar entre el 1% y el 10%. Para obtener las comisiones actuales on-chain, puedes consultar el resumen de intercambio haciendo clic en el botón "%" de la pantalla de inicio:
<div align="center">
<img src="/assets/images/understand/14-on-chain-payouts/exchange-info-icon.png"/>
</div>
El cuadro de diálogo de resumen de intercambio muestra el valor actual de las comisiones de pago on-chain:
<div align="center">
<img src="/assets/images/understand/14-on-chain-payouts/exchange-summary.png"/>
</div>
% include improve %}

View File

@ -7,15 +7,12 @@ sidebar:
nav: docs
---
RoboSats est un moyen simple d'échanger en privé des bitcoins contre des monnaies nationales. Il simplifie l'expérience de pair à pair et utilise des [factures en attente lightning](/docs/fr/escrow/#what-is-a-hold-invoice) pour minimiser les exigences en matière de garde et de confiance entre pairs. Vous pouvez également utiliser des RoboSats pour effectuer des [swaps](/docs/swaps/) de pair à pair.
To start using RoboSats, you only need a [<i class='fa-solid fa-wallet'></i> Lightning Wallet](/docs/wallets/) and a [TOR-enabled browser](/docs/tor/).
**Allons-y!** Pour commencer à utiliser RoboSats, vous avez seulement besoin d'un [<i class='fa-solid fa-wallet'></i> Lightning Wallet](/docs/wallets/) et d'un [navigateur compatible TOR](/docs/fr/tor/).
RoboSats est un moyen simple d'échanger en privé des bitcoins contre des monnaies nationales. Il simplifie l'expérience de pair à pair et utilise des [factures en attente lightning](/docs/fr/escrow/#what-is-a-hold-invoice) pour minimiser les exigences en matière de garde et de confiance entre pairs. Vous pouvez également utiliser des RoboSats pour effectuer des [swaps](/docs/fr/swaps/) de pair à pair.
**Allons-y!** Pour commencer à utiliser RoboSats, vous avez seulement besoin d'un [<i class='fa-solid fa-wallet'></i> Lightning Wallet](/docs/fr/wallets/) et d'un [navigateur compatible TOR](/docs/fr/tor/).
{: .notice--primary}
1. Obtener un Lightning [Wallet](/docs/fr/wallets/)
2. Installer [TOR browser](https://www.torproject.org/download/), ou une [alternative](/docs/access/)
2. Installer [TOR browser](https://www.torproject.org/download/), ou une [alternative](/docs/fr/access/)
3. Accéder à [RoboSats](/docs/fr/access/)
4. Vérifier les [tutoriels](/watch/fr/) si nécessaire !

View File

@ -20,7 +20,7 @@ La condition préalable à l'utilisation de LN est l'existence d'un portefeuille
Lorsque l'on utilise Lightning, les paiements sont effectués par le biais de factures. Le destinataire des Sats remet une facture à l'expéditeur des Sats, souvent sous la forme d'un code QR, demandant à l'expéditeur de payer le montant spécifique de Sats demandé par la facture. La facture commence par le préfixe "lnbc" et peut être décodée pour en inspecter le contenu, comme la quantité de Sats envoyée, l'ID du nœud auquel les Sats ont été envoyés, toute description fournie, etc.
Dans sa forme actuelle, Lightning n'est pas totalement privé. Les utilisateurs doivent veiller à ne pas révéler d'informations sensibles lorsqu'ils envoient et reçoivent des paiements sur LN. Ne faites pas confiance à une source fermée et à un portefeuille dépositaire pour respecter vos informations, vous pouvez obtenir un plus grand degré de confidentialité en utilisant un portefeuille non dépositaire. De même, consultez [Best Practices > Proxy Wallets] (/docs/fr/proxy-wallets/) pour plus d'informations sur les problèmes de confidentialité lors de la réception de Sats sur LN.
Dans sa forme actuelle, Lightning n'est pas totalement privé. Les utilisateurs doivent veiller à ne pas révéler d'informations sensibles lorsqu'ils envoient et reçoivent des paiements sur LN. Ne faites pas confiance à une source fermée et à un portefeuille dépositaire pour respecter vos informations, vous pouvez obtenir un plus grand degré de confidentialité en utilisant un portefeuille non dépositaire. De même, consultez [Best Practices > Proxy Wallets](/docs/fr/proxy-wallets/) pour plus d'informations sur les problèmes de confidentialité lors de la réception de Sats sur LN.
## **Réseau Lightning "Manigances"**

View File

@ -7,12 +7,12 @@ toc_sticky: true
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/tor.svg"/>TOR'
nav: docs
src: "_pages/docs/fr/00-quick-start/02-tor_fr.md"
src: "_pages/docs/fr/00-quick-start/02-tor.md"
---
[The Onion Router](https://www.torproject.org/download/), ou TOR en abrégé, est un navigateur internet libre et respectueux de la vie privée qui permet de communiquer de manière anonyme. Des milliers de relais volontaires composent le réseau pour diriger gratuitement le trafic Internet dans le monde entier. RoboSats utilise TOR comme couche de confidentialité et il est donc fortement recommandé d'[accéder à RoboSats](/docs/fr/access/#-privately-with-tor) via TOR.
[The Onion Router](https://www.torproject.org/download/), ou TOR en abrégé, est un navigateur internet libre et respectueux de la vie privée qui permet de communiquer de manière anonyme. Des milliers de relais volontaires composent le réseau pour diriger gratuitement le trafic Internet dans le monde entier. RoboSats utilise TOR comme couche de confidentialité et il est donc fortement recommandé d'[accéder à RoboSats](/docs/fr/access/#-en-privé-avec-tor) via TOR.
Une alternative à TOR est le [projet I2P](/docs/fr/access/#-privately-with-i2p). N'utilisez pas un navigateur compatible avec TOR, car les utilisateurs doivent toujours supposer qu'ils sont espionnés et veillez à accéder à RoboSats en toute sécurité.
Une alternative à TOR est le [projet I2P](/docs/fr/access/#-en-privé-avec-i2p). N'utilisez pas un navigateur compatible avec TOR, car les utilisateurs doivent toujours supposer qu'ils sont espionnés et veillez à accéder à RoboSats en toute sécurité.
## **Issues With TOR**

View File

@ -5,9 +5,9 @@ permalink: /docs/fr/best-practices/
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/hand-peace.svg"/>Bonnes pratiques'
nav: docs
src: "_pages/docs/fr/01-best-practices/00-best-practices_fr.md"
src: "_pages/docs/fr/01-best-practices/00-best-practices.md"
---
Bien que RoboSats soit très privé et sûr dès le départ, il y a toujours des étapes supplémentaires que vous pouvez suivre pour améliorer votre vie privée et minimiser vos risques.
{% include wip%}
{% include wip%}

View File

@ -7,7 +7,7 @@ toc_sticky: true
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/fingerprint.svg"/>Chiffrement PGP'
nav: docs
src: "_pages/docs/fr/01-best-practices/01-pgp-guide_fr.md"
src: "_pages/docs/fr/01-best-practices/01-pgp-guide.md"
---
Toutes les communications de RoboSats sont chiffrées par PGP. L'application client est entièrement transparente et offre un moyen facile de copier et d'exporter les clés PGP.
@ -186,4 +186,4 @@ Les données chiffrées doivent être copiées, y compris l'en-tête `(-----BEGI
Si vous souhaitez lire un tutoriel plus facile sur la façon d'utiliser OpenKeychain à des fins générales, consultez [As Easy as P,G,P](https://diverter.hostyourown.tools/as-easy-as-pgp/).
{% include improve %}
{% include improve %}

View File

@ -7,7 +7,7 @@ toc_sticky: true
sidebar:
title: '<img id="side-icon-verybig" src="/assets/vector/hand-peace.svg"/>Bonnes pratiques Fiat'
nav: docs
src: "_pages/docs/fr/01-best-practices/02-payment-methods_fr.md"
src: "_pages/docs/fr/01-best-practices/02-payment-methods.md"
---
Actuellement, il n'y a pas de restrictions sur la méthode de paiement en monnaie fiduciaire. Vous pouvez payer avec n'importe quelle méthode sur laquelle vous et votre correspondant vous êtes mis d'accord. Cela inclut les méthodes plus risquées telles que PayPal, Venmo et les applications de paiement en espèces. Vous pouvez obtenir plus de détails sur les caractéristiques et les différences de chaque méthode de paiement en monnaie fiduciaire à l'adresse suivante <a href = "https://bisq.wiki/Payment_methods#Payment_method_guides">wiki Bisq</a>. Les directives Bisq s'appliquent par défaut aux RoboSats.

View File

@ -8,4 +8,4 @@ sidebar:
src: "_pages/docs/fr/03-understand/11-api-latest.md"
---
{% include api-latest.html %}
{% include api-latest.html %}

View File

@ -10,7 +10,7 @@ sidebar:
src: "_pages/docs/fr/03-understand/14-on-chain-payouts.md"
---
Bien que RoboSats est une plateforme construite sur le Lightning Network, il existe une option pour l'acheteur de recevoir ses Sats à une adresse bitcoin on-chain. C'est ce qu'on appelle un paiement on-chain ou, parfois, un swap on-chain (à ne pas confondre avec [P2P Swaps](/docs/fr/swaps)).
Bien que RoboSats est une plateforme construite sur le Lightning Network, il existe une option pour l'acheteur de recevoir ses Sats à une adresse bitcoin on-chain. C'est ce qu'on appelle un paiement on-chain ou, parfois, un swap on-chain (à ne pas confondre avec [P2P Swaps](/docs/fr/swaps)).
Dans l'interface utilisateur, cette option est disponible une fois que le preneur a verrouillé son obligation. Lorsque l'état de la commande est "En attente de la facture de l'acheteur", vous devriez voir deux options : "Lightning" et "Onchain"

View File

@ -16,6 +16,9 @@ src: "_pages/docs/tutorials/videos-es.md"
#### Juan en Crypto (directo): Comprar y vender sin-KYC.
<iframe width="560" height="315" src="https://www.youtube.com/embed/8r8X_nSK8mc" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
#### Bitcoin2140 (directo) con KoalaSat & Kote. Introducción a la descentralización de RoboSats.
<iframe width="560" height="315" src="https://www.youtube.com/embed/woocdqqQwPg?si=bmDbodqtKD01eGPz&amp;start=823" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
#### Privacidad Avanzada (Arkad & P_hodl): Swaps de Lightning a Onchain con Stowaway
<iframe width="560" height="315" src="https://www.youtube.com/embed/RkaCv2HcIaI" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>

View File

@ -6,7 +6,7 @@ date: 2023-12-31 01:01:01 -0500
categories: robosats update
---
**Note** this is a very early release, so expect to find bugs! If you find a bug that is stopping you from continuing your order, recover your robot in the v0.5.3 client of your coordinator and continue the trade as usual.
**Note** this is a very early release, so expect to find bugs! If you find a bug that is stopping you from continuing your order, recover your robot in the v0.5.3 client of your coordinator and continue the trade as usual. We keep a [list of known bugs here](https://github.com/RoboSats/robosats/issues/1069), please report if you find a new one :D
{: .notice--primary}
We are thrilled to announce the launch for testing of the new version of RoboSats v0.6.0. This is the biggest ever upgrade to RoboSats. We have, figuratively, lifted the house and built a basement below it :)
@ -27,7 +27,7 @@ The RoboSats Federation is a set of rules that allows multiple RoboSats instance
## Key Features of the New Version
### Multiple Coordinators
With the new version, RoboSats introduces the concept of coordinators or hosts. Coordinators will now compete to provide users with the best fees, support, uptime and reliability and overall user experience. Lightning node runners can become RoboSats coordinator in the federation, given they gain the trust of the users. The coordinators host the full infrastructure needed for the p2p trades, they route the lightning payments, they solve the disputes, and much more. Therefore **is important to pick always a coordinator you trust** when creating or taking a RoboSats order, given that, there are ways a coordinator could potentially steal from you (this is true for any p2p platform, not only RoboSats, regardless of escrow system, coordinators must always be trusted).
With the new version, RoboSats introduces the concept of coordinators or hosts. Coordinators will now compete to provide users with the best fees, support, uptime and reliability and overall user experience. Lightning node runners can become RoboSats coordinator in the federation, given they gain the trust of the users. The coordinators host the full infrastructure needed for the p2p trades, they route the lightning payments, they solve the disputes, and much more. Therefore **is important to pick always a coordinator you trust** when creating or taking a RoboSats order, given that, there are ways a coordinator could potentially steal from you (this is true for any p2p btc/fiat on-off ramp, not only RoboSats, regardless of escrow system, coordinators must always be trusted).
If you operate a lightning node and are interested in becoming a coordinator yourself, refer to the [RoboSats Federation basis](https://github.com/RoboSats/robosats/blob/main/federation.md)
@ -66,6 +66,6 @@ Many other small improvements come in v0.6.0. For example, your Robot identity i
Please note trust in a coordinator is paramount, a malicious or rogue p2p coordinators can always find ways to steal from the users. Always exercise caution and make sure to understand the potential risks before engaging with any coordinator. Research them by: exploring their coordinator profile in the RoboSats app, reading about them in their website and social media, asking other users about their experience, etc.
## Acknoledgements
## Acknowledgements
The big push needed to get the Federation Client working would not have been possible without the contributions of KoalaSat and Reckless-Satoshi.

View File

@ -19,7 +19,7 @@
"@mui/material": "^5.15.3",
"@mui/system": "^5.15.3",
"@mui/x-data-grid": "^6.17.0",
"@mui/x-date-pickers": "^6.17.0",
"@mui/x-date-pickers": "^6.19.0",
"@nivo/core": "^0.84.0",
"@nivo/line": "^0.84.0",
"base-ex": "^0.8.1",
@ -67,19 +67,19 @@
"@typescript-eslint/eslint-plugin": "^5.35.1",
"@typescript-eslint/parser": "^5.35.1",
"babel-loader": "^9.1.3",
"copy-webpack-plugin": "^12.0.1",
"copy-webpack-plugin": "^12.0.2",
"eslint": "^8.45.0",
"eslint-config-prettier": "^9.1.0",
"eslint-config-standard-with-typescript": "^36.1.0",
"eslint-import-resolver-typescript": "^3.6.0",
"eslint-plugin-import": "^2.27.5",
"eslint-plugin-n": "^16.6.2",
"eslint-plugin-prettier": "^5.1.2",
"eslint-plugin-prettier": "^5.1.3",
"eslint-plugin-promise": "^6.1.1",
"eslint-plugin-react": "^7.32.2",
"eslint-plugin-react-hooks": "^4.6.0",
"jest": "^29.6.1",
"prettier": "^3.1.1",
"prettier": "^3.2.4",
"ts-node": "^10.9.2",
"typescript": "^5.3.3",
"webpack": "^5.89.0",
@ -1880,9 +1880,9 @@
"dev": true
},
"node_modules/@babel/runtime": {
"version": "7.23.6",
"resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.6.tgz",
"integrity": "sha512-zHd0eUrf5GZoOWVCXp6koAKQTfZV07eit6bGPmJgnZdnSAvvZee6zniW2XMF7Cmc4ISOOnPy3QaSiIJGJkVEDQ==",
"version": "7.23.8",
"resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.8.tgz",
"integrity": "sha512-Y7KbAP984rn1VGMbGqKmBLio9V7y5Je9GvU4rQPCPinCyNfUcToxIXl06d59URp/F3LwinvODxab5N/G6qggkw==",
"dependencies": {
"regenerator-runtime": "^0.14.0"
},
@ -2207,28 +2207,28 @@
}
},
"node_modules/@floating-ui/core": {
"version": "1.5.0",
"resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.5.0.tgz",
"integrity": "sha512-kK1h4m36DQ0UHGj5Ah4db7R0rHemTqqO0QLvUqi1/mUUp3LuAWbWxdxSIf/XsnH9VS6rRVPLJCncjRzUvyCLXg==",
"version": "1.5.3",
"resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.5.3.tgz",
"integrity": "sha512-O0WKDOo0yhJuugCx6trZQj5jVJ9yR0ystG2JaNAemYUWce+pmM6WUEFIibnWyEJKdrDxhm75NoSRME35FNaM/Q==",
"dependencies": {
"@floating-ui/utils": "^0.1.3"
"@floating-ui/utils": "^0.2.0"
}
},
"node_modules/@floating-ui/dom": {
"version": "1.5.3",
"resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.5.3.tgz",
"integrity": "sha512-ClAbQnEqJAKCJOEbbLo5IUlZHkNszqhuxS4fHAVxRPXPya6Ysf2G8KypnYcOTpx6I8xcgF9bbHb6g/2KpbV8qA==",
"version": "1.5.4",
"resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.5.4.tgz",
"integrity": "sha512-jByEsHIY+eEdCjnTVu+E3ephzTOzkQ8hgUfGwos+bg7NlH33Zc5uO+QHz1mrQUOgIKKDD1RtS201P9NvAfq3XQ==",
"dependencies": {
"@floating-ui/core": "^1.4.2",
"@floating-ui/utils": "^0.1.3"
"@floating-ui/core": "^1.5.3",
"@floating-ui/utils": "^0.2.0"
}
},
"node_modules/@floating-ui/react-dom": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.0.4.tgz",
"integrity": "sha512-CF8k2rgKeh/49UrnIBs4BdxPUV6vize/Db1d/YbCLyp9GiVZ0BEwf5AiDSxJRCr6yOkGqTFHtmrULxkEfYZ7dQ==",
"version": "2.0.6",
"resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.0.6.tgz",
"integrity": "sha512-IB8aCRFxr8nFkdYZgH+Otd9EVQPJoynxeFRGTB8voPoZMRWo8XjYuCRgpI1btvuKY69XMiLnW+ym7zoBHM90Rw==",
"dependencies": {
"@floating-ui/dom": "^1.5.1"
"@floating-ui/dom": "^1.5.4"
},
"peerDependencies": {
"react": ">=16.8.0",
@ -2236,9 +2236,9 @@
}
},
"node_modules/@floating-ui/utils": {
"version": "0.1.6",
"resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.1.6.tgz",
"integrity": "sha512-OfX7E2oUDYxtBvsuS4e/jSn4Q9Qb6DzgeYtsAdkPZ47znpoNsMgZw0+tVijiv3uGNR6dgNlty6r9rzIzHjtd/A=="
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.1.tgz",
"integrity": "sha512-9TANp6GPoMtYzQdt54kfAyMmz1+osLlXdg2ENroU7zzrtflTLrrC/lgrIfaSe+Wu0b89GKccT7vxXA0MoAIO+Q=="
},
"node_modules/@humanwhocodes/config-array": {
"version": "0.11.10",
@ -3368,9 +3368,9 @@
}
},
"node_modules/@mui/types": {
"version": "7.2.12",
"resolved": "https://registry.npmjs.org/@mui/types/-/types-7.2.12.tgz",
"integrity": "sha512-3kaHiNm9khCAo0pVe0RenketDSFoZGAlVZ4zDjB/QNZV0XiCj+sh1zkX0VVhQPgYJDlBEzAag+MHJ1tU3vf0Zw==",
"version": "7.2.13",
"resolved": "https://registry.npmjs.org/@mui/types/-/types-7.2.13.tgz",
"integrity": "sha512-qP9OgacN62s+l8rdDhSFRe05HWtLLJ5TGclC9I1+tQngbssu0m2dmFZs+Px53AcOs9fD7TbYd4gc9AXzVqO/+g==",
"peerDependencies": {
"@types/react": "^17.0.0 || ^18.0.0"
},
@ -3381,11 +3381,11 @@
}
},
"node_modules/@mui/utils": {
"version": "5.15.3",
"resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.15.3.tgz",
"integrity": "sha512-mT3LiSt9tZWCdx1pl7q4Q5tNo6gdZbvJel286ZHGuj6LQQXjWNAh8qiF9d+LogvNUI+D7eLkTnj605d1zoazfg==",
"version": "5.15.5",
"resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.15.5.tgz",
"integrity": "sha512-jEywgaMGZWPSlVFO7ZZAyXxNeLmq5XBp5At9Ne/sGohRJdesUcdxvyi8TP3odJxwQuL5L6PJV+JQ4DyIDM849A==",
"dependencies": {
"@babel/runtime": "^7.23.6",
"@babel/runtime": "^7.23.8",
"@types/prop-types": "^15.7.11",
"prop-types": "^15.8.1",
"react-is": "^18.2.0"
@ -3441,13 +3441,13 @@
}
},
"node_modules/@mui/x-date-pickers": {
"version": "6.17.0",
"resolved": "https://registry.npmjs.org/@mui/x-date-pickers/-/x-date-pickers-6.17.0.tgz",
"integrity": "sha512-rBKiw6GL1bTJpfSuD0KnOgxrERhoSip7eyqXzHbh0GODmp9f5bonE9gRZ74XmlyMQT7tcSzXdzk0c1X0HhmP1A==",
"version": "6.19.0",
"resolved": "https://registry.npmjs.org/@mui/x-date-pickers/-/x-date-pickers-6.19.0.tgz",
"integrity": "sha512-/GccT+iFJTKjI6b9b0MWojyRKnizL/VYYAfPnR1q0wSVVXjYv7a1NK0uQlan4JbnovqoQCNVeTOCy/0bUJyD2Q==",
"dependencies": {
"@babel/runtime": "^7.23.2",
"@mui/base": "^5.0.0-beta.20",
"@mui/utils": "^5.14.14",
"@mui/base": "^5.0.0-beta.22",
"@mui/utils": "^5.14.16",
"@types/react-transition-group": "^4.4.8",
"clsx": "^2.0.0",
"prop-types": "^15.8.1",
@ -3465,7 +3465,7 @@
"@emotion/styled": "^11.8.1",
"@mui/material": "^5.8.6",
"@mui/system": "^5.8.0",
"date-fns": "^2.25.0",
"date-fns": "^2.25.0 || ^3.2.0",
"date-fns-jalali": "^2.13.0-0",
"dayjs": "^1.10.7",
"luxon": "^3.0.2",
@ -3506,16 +3506,16 @@
}
},
"node_modules/@mui/x-date-pickers/node_modules/@mui/base": {
"version": "5.0.0-beta.21",
"resolved": "https://registry.npmjs.org/@mui/base/-/base-5.0.0-beta.21.tgz",
"integrity": "sha512-eTKWx3WV/nwmRUK4z4K1MzlMyWCsi3WJ3RtV4DiXZeRh4qd4JCyp1Zzzi8Wv9xM4dEBmqQntFoei716PzwmFfA==",
"version": "5.0.0-beta.32",
"resolved": "https://registry.npmjs.org/@mui/base/-/base-5.0.0-beta.32.tgz",
"integrity": "sha512-4VptvYeLUYMJhZapWBkD50GmKfOc0XT381KJcTK3ncZYIl8MdBhpR6l8jOyeP5cixUPBJhstjrnmQEAHjCLriw==",
"dependencies": {
"@babel/runtime": "^7.23.2",
"@floating-ui/react-dom": "^2.0.2",
"@mui/types": "^7.2.7",
"@mui/utils": "^5.14.15",
"@babel/runtime": "^7.23.8",
"@floating-ui/react-dom": "^2.0.5",
"@mui/types": "^7.2.13",
"@mui/utils": "^5.15.5",
"@popperjs/core": "^2.11.8",
"clsx": "^2.0.0",
"clsx": "^2.1.0",
"prop-types": "^15.8.1"
},
"engines": {
@ -3523,7 +3523,7 @@
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/mui"
"url": "https://opencollective.com/mui-org"
},
"peerDependencies": {
"@types/react": "^17.0.0 || ^18.0.0",
@ -3537,9 +3537,9 @@
}
},
"node_modules/@mui/x-date-pickers/node_modules/clsx": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/clsx/-/clsx-2.0.0.tgz",
"integrity": "sha512-rQ1+kcj+ttHG0MKVGBUXwayCCF1oh39BF5COIpRzuCEv8Mwjv0XucrI2ExNTOn9IlLifGClWQcU9BrZORvtw6Q==",
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.0.tgz",
"integrity": "sha512-m3iNNWpd9rl3jvvcBnu70ylMdrXt8Vlq4HYadnU5fwcOtvkSQWPmj7amUcDT2qYI7risszBjI5AUIUox9D16pg==",
"engines": {
"node": ">=6"
}
@ -5715,9 +5715,9 @@
"integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A=="
},
"node_modules/copy-webpack-plugin": {
"version": "12.0.1",
"resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-12.0.1.tgz",
"integrity": "sha512-dhMfjJMYKDmmbG6Yn2pRSs1g8FgeQRtbE/JM6VAM9Xouk3KO1UVrwlLHLXxaI5F+o9WgnRfhFZzY9eV34O2gZQ==",
"version": "12.0.2",
"resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-12.0.2.tgz",
"integrity": "sha512-SNwdBeHyII+rWvee/bTnAYyO8vfVdcSTud4EIb6jcZ8inLeWucJE0DnxXQBjlQ5zlteuuvooGQy3LIyGxhvlOA==",
"dev": true,
"dependencies": {
"fast-glob": "^3.3.2",
@ -6792,9 +6792,9 @@
"dev": true
},
"node_modules/eslint-plugin-prettier": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.1.2.tgz",
"integrity": "sha512-dhlpWc9vOwohcWmClFcA+HjlvUpuyynYs0Rf+L/P6/0iQE6vlHW9l5bkfzN62/Stm9fbq8ku46qzde76T1xlSg==",
"version": "5.1.3",
"resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.1.3.tgz",
"integrity": "sha512-C9GCVAs4Eq7ZC/XFQHITLiHJxQngdtraXaM+LoUFoFp/lHNl2Zn8f3WQbe9HvTBBQ9YnKFB0/2Ajdqwo5D1EAw==",
"dev": true,
"dependencies": {
"prettier-linter-helpers": "^1.0.0",
@ -13412,9 +13412,9 @@
}
},
"node_modules/prettier": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/prettier/-/prettier-3.1.1.tgz",
"integrity": "sha512-22UbSzg8luF4UuZtzgiUOfcGM8s4tjBv6dJRT7j275NXsy2jb4aJa4NNveul5x4eqlF1wuhuR2RElK71RvmVaw==",
"version": "3.2.4",
"resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.4.tgz",
"integrity": "sha512-FWu1oLHKCrtpO1ypU6J0SbK2d9Ckwysq6bHj/uaCP26DxrPpppCLQRGVuqAxSTvhF00AcvDRyYrLNW7ocBhFFQ==",
"dev": true,
"bin": {
"prettier": "bin/prettier.cjs"

View File

@ -29,19 +29,19 @@
"@typescript-eslint/eslint-plugin": "^5.35.1",
"@typescript-eslint/parser": "^5.35.1",
"babel-loader": "^9.1.3",
"copy-webpack-plugin": "^12.0.1",
"copy-webpack-plugin": "^12.0.2",
"eslint": "^8.45.0",
"eslint-config-prettier": "^9.1.0",
"eslint-config-standard-with-typescript": "^36.1.0",
"eslint-import-resolver-typescript": "^3.6.0",
"eslint-plugin-import": "^2.27.5",
"eslint-plugin-n": "^16.6.2",
"eslint-plugin-prettier": "^5.1.2",
"eslint-plugin-prettier": "^5.1.3",
"eslint-plugin-promise": "^6.1.1",
"eslint-plugin-react": "^7.32.2",
"eslint-plugin-react-hooks": "^4.6.0",
"jest": "^29.6.1",
"prettier": "^3.1.1",
"prettier": "^3.2.4",
"ts-node": "^10.9.2",
"typescript": "^5.3.3",
"webpack": "^5.89.0",
@ -58,7 +58,7 @@
"@mui/material": "^5.15.3",
"@mui/system": "^5.15.3",
"@mui/x-data-grid": "^6.17.0",
"@mui/x-date-pickers": "^6.17.0",
"@mui/x-date-pickers": "^6.19.0",
"@nivo/core": "^0.84.0",
"@nivo/line": "^0.84.0",
"base-ex": "^0.8.1",

View File

@ -38,7 +38,7 @@
"eslint-plugin-react-hooks": "^4.6.0",
"jest": "^29.5.0",
"metro-react-native-babel-preset": "^0.75.1",
"prettier": "^3.2.1",
"prettier": "^3.2.4",
"react-test-renderer": "18.2.0",
"typescript": "^5.3.3"
}
@ -12369,9 +12369,9 @@
}
},
"node_modules/prettier": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.1.tgz",
"integrity": "sha512-qSUWshj1IobVbKc226Gw2pync27t0Kf0EdufZa9j7uBSJay1CC+B3K5lAAZoqgX3ASiKuWsk6OmzKRetXNObWg==",
"version": "3.2.4",
"resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.4.tgz",
"integrity": "sha512-FWu1oLHKCrtpO1ypU6J0SbK2d9Ckwysq6bHj/uaCP26DxrPpppCLQRGVuqAxSTvhF00AcvDRyYrLNW7ocBhFFQ==",
"dev": true,
"bin": {
"prettier": "bin/prettier.cjs"

View File

@ -42,7 +42,7 @@
"eslint-plugin-react-hooks": "^4.6.0",
"jest": "^29.5.0",
"metro-react-native-babel-preset": "^0.75.1",
"prettier": "^3.2.1",
"prettier": "^3.2.4",
"react-test-renderer": "18.2.0",
"typescript": "^5.3.3"
},

View File

@ -1,54 +1,39 @@
RoboSats v0.5.3 is now out! :rocket: RoboSats client apps before v0.5.1 are no longer be compatible.
RoboSats v0.5.4 is now out! :rocket: RoboSats client apps before v0.5.1 are no longer be compatible.
# Changes
## New Features: Face to face.
We have introduced a new feature, F2F (Face-to-Face), allowing users to add a location for face-to-face cash trades. The book page now displays a map with all F2F orders. For privacy reasons, the exact location of your order is slightly randomized (uniform random 15 x 15 Km noise) when you click on the map to locate it. This means it's not possible to be precise, and the exact location can only be shared on the encrypted chat. Please note that using high-resolution maps can leak your IP to external tiling servers if you are not using Tor Browser.
This is a minor release with some small enhancements and bug fixes. This is the last release before the federated client release.
Of course, adding a geolocation tag to your order is only a good idea if you want to use face-to-face cash as a payment method. You can completely disregard this feature if you do not want to use this payment method.
## RoboSats-deploy Coordinator Orchestration
We have released the RoboSats-deploy coordinator orchestration in https://github.com/RoboSats/robosats-deploy
## Bug Fixes and Performance Improvements
- Dependency updates.
- Small bug fixes.
- Improved DB Writes performance related to last_login user field.
- Fix small bug on order logging that made automatic dispute resolutions fail.
- Devfund Donation Pubkey has been updated to RoboSats experimental LND2 node.
- Dependency updates and security fixes.
- Coordinator serves robot hash_ids needed for >v0.6.0 client side robot identity generator.
- Recommended and minimum onchain fees for payouts are now more accurate.
- Devfund node has moved. The new node now has public access to the invoices services (read-only).
- Fix book re-render on swap/fiat change (by @aftermath2)
- Docs have been fully translated to Spanish by @OSFr0g
- Perf increase on coordinator image build by @proof-of-reality
- Build new full integration tests on testnet.
- Fix API /chat endpoint bugs.
- Updated API docs, now OpenAPIspec is tested during the integration tests.
- Fix buggy pricing for ARS.
- New currency Albanian LEK.
- Updated Russian translation.
# Android
**[Click to download universal RoboSats APK for Android](https://github.com/RoboSats/robosats/releases/download/v0.5.3-alpha/robosats-v0.5.3.alpha-universal.apk)**
Smaller bundles for each CPU architecture available in the attachments.
### Verify the app using GPG:
1. [Download the ascii armored signature](https://github.com/Reckless-Satoshi/robosats/releases/download/v0.5.3-alpha/robosats-v0.5.3.alpha-universal.apk.asc)
2. Run this command on a directory that contains the apk file and and the ascii armored signature.
`gpg --verify robosats-v0.5.3.alpha-universal.apk.asc`
3. Verify the signer is actually Reckless-Satoshi (fingerprints match): [B4AB5F19113D4125DDF217739C4585B561315571](https://keys.openpgp.org/vks/v1/by-fingerprint/B4AB5F19113D4125DDF217739C4585B561315571)
Alternatively you can also verify with the release with the SHA256 checksum.
Known missing features:
- Android APK has no sound or notifications.
The Android app is not currently supported. It will come back stronger in the future.
# Docker Images
[Coordinator Backend Image v0.5.3-alpha (Docker Hub)](https://hub.docker.com/r/recksato/robosats/tags?page=1&name=v0.5.3-alpha)
[Coordinator Backend Image v0.5.4-alpha (Docker Hub)](https://hub.docker.com/r/recksato/robosats/tags?page=1&name=v0.5.4-alpha)
```bash
docker pull recksato/robosats:v0.5.3-alpha
docker pull recksato/robosats:v0.5.4-alpha
```
[Client App Image v0.5.3-alpha (Docker Hub)](https://hub.docker.com/r/recksato/robosats-client/tags?page=1&name=v0.5.3-alpha)
[Client App Image v0.5.4-alpha (Docker Hub)](https://hub.docker.com/r/recksato/robosats-client/tags?page=1&name=v0.5.4-alpha)
```bash
docker pull recksato/robosats-client:v0.5.3-alpha
docker pull recksato/robosats-client:v0.5.4-alpha
```
See [nodeapp/docker-compose.yml](https://github.com/Reckless-Satoshi/robosats/blob/2cd9d748706a8dcc0f03006b483acc6000e0572a/nodeapp/docker-compose.yml) for an example docker-compose usage of the `robosats-client` image.

View File

@ -1,4 +1,4 @@
django==4.2.7
django==4.2.9
django-admin-relation-links==0.2.5
django-celery-beat==2.5.0
django-celery-results==2.5.1
@ -24,7 +24,7 @@ django-import-export==3.3.6
requests[socks]
python-gnupg==0.5.2
daphne==4.0.0
drf-spectacular==0.27.0
drf-spectacular==0.27.1
drf-spectacular-sidecar==2024.1.1
django-cors-headers==4.3.1
base91==1.0.1

View File

@ -1,7 +1,4 @@
coverage==7.4.0
black==23.3.0
isort==5.13.2
flake8==7.0.0
pyflakes==3.2.0
ruff==0.1.14
drf-openapi-tester==2.3.3
pre-commit==3.6.0

View File

@ -2,37 +2,22 @@
# generate LND grpc definitions
cd api/lightning
[ -d googleapis ] || git clone https://github.com/googleapis/googleapis.git googleapis
[ -d googleapis ] || git clone https://github.com/googleapis/googleapis.git --depth=1 googleapis
# LND Lightning proto
curl -o lightning.proto -s https://raw.githubusercontent.com/lightningnetwork/lnd/master/lnrpc/lightning.proto
python3 -m grpc_tools.protoc --proto_path=googleapis:. --python_out=. --grpc_python_out=. lightning.proto
echo "Downloading LND & CLN GRPC specs.."
curl --parallel -o lightning.proto https://raw.githubusercontent.com/lightningnetwork/lnd/master/lnrpc/lightning.proto \
-o invoices.proto https://raw.githubusercontent.com/lightningnetwork/lnd/master/lnrpc/invoicesrpc/invoices.proto \
-o router.proto https://raw.githubusercontent.com/lightningnetwork/lnd/master/lnrpc/routerrpc/router.proto \
-o signer.proto https://raw.githubusercontent.com/lightningnetwork/lnd/master/lnrpc/signrpc/signer.proto \
-o verrpc.proto https://raw.githubusercontent.com/lightningnetwork/lnd/master/lnrpc/verrpc/verrpc.proto \
-o hold.proto https://raw.githubusercontent.com/daywalker90/lightning/cln-grpc-hold/proto/hold.proto \
-o primitives.proto https://raw.githubusercontent.com/ElementsProject/lightning/v23.08/cln-grpc/proto/primitives.proto \
-o node.proto https://raw.githubusercontent.com/ElementsProject/lightning/v23.08/cln-grpc/proto/node.proto
# LND Invoices proto
curl -o invoices.proto -s https://raw.githubusercontent.com/lightningnetwork/lnd/master/lnrpc/invoicesrpc/invoices.proto
python3 -m grpc_tools.protoc --proto_path=googleapis:. --python_out=. --grpc_python_out=. invoices.proto
# LND Router proto
curl -o router.proto -s https://raw.githubusercontent.com/lightningnetwork/lnd/master/lnrpc/routerrpc/router.proto
python3 -m grpc_tools.protoc --proto_path=googleapis:. --python_out=. --grpc_python_out=. router.proto
# LND Signer proto
curl -o signer.proto -s https://raw.githubusercontent.com/lightningnetwork/lnd/master/lnrpc/signrpc/signer.proto
python3 -m grpc_tools.protoc --proto_path=googleapis:. --python_out=. --grpc_python_out=. signer.proto
# LND Versioner proto
curl -o verrpc.proto -s https://raw.githubusercontent.com/lightningnetwork/lnd/master/lnrpc/verrpc/verrpc.proto
python3 -m grpc_tools.protoc --proto_path=googleapis:. --python_out=. --grpc_python_out=. verrpc.proto
# generate CLN grpc definitions
curl -o hold.proto -s https://raw.githubusercontent.com/daywalker90/lightning/cln-grpc-hold/proto/hold.proto
curl -o primitives.proto -s https://raw.githubusercontent.com/ElementsProject/lightning/v23.08/cln-grpc/proto/primitives.proto
curl -o node.proto -s https://raw.githubusercontent.com/ElementsProject/lightning/v23.08/cln-grpc/proto/node.proto
echo -n "Done\nBuilding api from GRPC specs..."
python3 -m grpc_tools.protoc --proto_path=googleapis:. --python_out=. --grpc_python_out=. lightning.proto invoices.proto router.proto signer.proto verrpc.proto
python3 -m grpc_tools.protoc --proto_path=. --python_out=. --grpc_python_out=. node.proto hold.proto primitives.proto
# delete googleapis
rm -r googleapis
# patch generated files relative imports
# LND
sed -i 's/^import .*_pb2 as/from . \0/' router_pb2.py
@ -51,8 +36,11 @@ sed -i 's/^import .*_pb2 as/from . \0/' hold_pb2_grpc.py
sed -i 's/^import .*_pb2 as/from . \0/' node_pb2.py
sed -i 's/^import .*_pb2 as/from . \0/' node_pb2_grpc.py
echo -n "Done\nDeleting googleapi..."
rm -rf googleapis # delete googleapis
echo "Done"
# On development environments the local volume will be mounted over these files. We copy pb2 and grpc files to /tmp/.
# This way, we can find if these files are missing with our entrypoint.sh and copy them into the volume.
cp -r *_pb2.py /tmp/
cp -r *_grpc.py /tmp/
cp -r *_grpc.py /tmp/