Transacciones instantáneas y muy económicas (0.05€) entre Coinbase y Uphold

Hola,

soy el desarrollador de Beewallet para iOS. Ya escribí en este otro hilo buscando betatesters (https://forobits.com/t/buscamos-betatesters-para-probar-transacciones-instantaneas-y-sin-pagar-network-fee-desde-coinbase-o-uphold/3828) y hoy presento la versión definitiva ya disponible en el Appstore.
Beewallet es un cliente para Coinbase y Uphold que permite conectar una o ambas cuentas a la vez y manejarlas con sencillez.
Lo que presento hoy es una nueva funcionalidad llamada Sentinel integrada completamente en Beewallet.

Sentinel detecta cuando un usuario, por ejemplo de Coinbase, está a punto de enviar dinero a un usuario de Uphold (o viceversa). En tal caso entra en juego haciendo de puente entre los 2 servicios y otorgando al usuario principalmente 3 beneficios:

· Transacción instantánea sin necesidad de esperar confirmaciones
· Evitar el pago de la Network Fee por lo tanto válido para microtransacciones
· Evitar problemas de congestión de la red

Esta funcionalidad está completamente integrada en la app y no requiere ningún registro o configuración adicional, simplemente cuando Beewallet detecta que Sentinel puede trabajar, entonces se activa.

Esto es lo que ve el usuario antes de que se envíe una transacción a través de Sentinel:

De este modo el usuario sabe lo que está pasando en todo momento.

El uso de Sentinel tiene una comisión fija de 0.05€ (0.01€ era la comisión durante la fase de pruebas). Teniendo en cuenta que la network fee puede rondar los 0.50 perfectamente, el ahorro es considerable y puede ser especialmente útil en micro transacciones.

He decidido limitar las transacciones a un máximo de USD 10 durante el lanzamiento para ver que tal va, no obstante este límite probablemente se eleve en el futuro.

Dejo el enlace al App Store por si alguien se anima a probarlo.

https://itunes.apple.com/es/app/beewallet-for-uphold-bitcoin/id991736619?l=en&mt=8

Saludos

7 Me gusta

Al final era inevitable que salieran este tipo de servicios ante el bloque al aumento del tamaño de bloques. Me alegro que lo haya hecho alguien de casa, felicidades!

Gracias @anon82341619, me alegro de que te guste. La idea es ver si tiene acogida y en tal caso ampliarlo a otros servicios como Xapo y Luno, para que todos estos wallets estén interconectados de esta forma.
Ahora a esperar a ver que tal lo recibe el usuario.

1 me gusta

Yo soy un simple usuario, y en estas cosas lo que me da miedo es que nada mas instalar la app ya me pide que me autentifique en coinbase, Me da la impresion (y puede que solo sea impresion) de que mis datos de coinbase los va a tener Beewallet y me da mal rollo. Tomatelo como critica constructiva, Sin embargo lo de reducir la comision me parece muy buena idea. Lo seguire de cerca.

SUERTE.

1 me gusta

Es más seguro utilizar casi cualquier altcoin, si tan cara te parece la tasa de btc, que dejar tus bitcoins en manos de terceros. Además, va contra la naturaleza de Bitcoin, creado para no tener que depender de terceros. Recuerda:

Si no tienes el control de tus claves privadas, no tienes bitcoins.

1 me gusta

Lo entiendo @manestevez, más de lo que imaginas, te diría que yo mismo probablemente no la instalaría (si no la hubiera hecho yo claro ;)). Es decir, comprendo que es buena praxis no confiar y meter datos de login en apps de terceros y nunca intentaré convencer a nadie de lo contrario. Ese es el gran escollo de todas las aplicaciones que actuan como cliente no oficial de algún servicio. Al final lo que acaba dando seguridad a los usuarios más cautos es ver determinadas cosas como que una app lleve años en el mercado sin incidencias conocidas, que haya cientos de comentarios de usuarios satisfechos y demás, son cosas que se van construyendo poco a poco. Beewallet, aunque ya tiene un par de años todavía está en la fase en la que hay más usuarios cautos que no la instalan que osados que sí lo hacen. Afortunadamente, ya cuenta con algunos miles de descargas y la gente se va animando, el número de descargas diarias sube y van apareciendo buenos comentarios en el App Store.

He dicho que jamás intentaría convencer a alguien de que poner sus credenciales en apps de terceros era seguro, pero sí que puedo intentar hacerlo con Beewallet porque esta es la que yo desarrollo y por la que puedo poner la mano en el fuego.

Beewallet usa una clave de API tanto para poder conectarse a la API de Coinbase como la de Uphold. En ambos casos la clave ha sido emitida por su respectivo servicio. Eso quiere decir que tanto Coinbase como Uphold han hecho unas comprobaciones mínimas antes de emitir dichas claves. ¿Eso garantiza algo? En realidad no mucho, si el propósito de alguien fuera perpetrar un robo, probablemente se mostraría como alguien inocente con buenas intenciones para obtener dichas claves. Lo que pasa es que esas claves pueden ser revocadas en cualquier momento y te aseguro que no llevarían 2 años activas si Beewallet se hubiera dedicado a robar datos o fondos de los usuarios.
Además es importante tener en cuenta que cada servicio impone unos límites asociados a la clave que emite, esos límites suelen ser en forma de importe máximo por transacción, importe máximo por día, etc…
Aun así hay más, y puede que lo más importante sea lo siguiente. Tanto Coinbase como Uphold, y por tanto Beewallet, usan OAuth2 para realizar el login del usuario. OAuth2 es el estándar que se usa para permitir la conexión segura de apps de terceros a cualquier servicio. OAuth2 es usado por Twitter, Facebook, Google… por poner algunos ejemplos. Cualquier servicio que tenga una API y valore mínimamente la seguridad de sus usuarios, implementará OAuth2. Básicamente consiste en que el login al servicio lo haces en la web del propio servicio y una vez comprobado que el login ha sido correcto, el servicio envía a la app una clave nueva denominada Access Token que la app usará desde ese momento en adelante para realizar todas las conexiones. Lógicamente esa clave también se puede revocar y en esta ocasión quien tiene la capacidad de hacerlo es el usuario. Lo importante es que en este proceso de login, la app no tiene acceso en ningún momento al nombre de usuario ni la contraseña ya que como digo quien maneja esa parte es la página web del propio servicio.
¿Es infalible este método? Pues aunque me gustaría decirte que sí para que confiaras en Beewallet, lo cierto es que no y te digo por qué. En Android cuando cuando pulsas en algún botón OAuth2, la página del servicio en la que vas a hacer login se puede abrir en una ventana de Google Chrome o el navegador que tengas instalado, y una vez realizado el login automáticamente se vuelve a la App. En iOS, Apple no permite que esas páginas de login se abran en safari, sino que obliga a cargar la página web dentro de un WebView incrustado en la misma app, así que no dejas de estar en los dominios del desarrollador de la app. Aún así repito que si una app se estuviera dedicando a actividades ilícitas, el servicio le habría revocado la clave de la API, y por supuesto Apple la habría retirado del Appstore. Si a todo esto le añades que tienes (y si no lo tienes deberías) activado el 2FA, se consiguen unos niveles de seguridad muy elevados.

En resumen, y en términos generales en lo que se refiere a conectarse a servicios en apps de terceros. Siempre habrá que hacer un pequeño salto de fe, pero se estará mucho más seguro si se verifica que la app se conecte con OAuth2, que lleve suficiente tiempo en el store sin incidencias (a ser posible años) y si los comentarios de los usuarios corroboran el propósito de la App. Así que contestando a tu miedo y teniendo en cuenta lo anteriormente explicado, la respuesta es no, ni Beewallet ni cualquier otra app que se conecte mediante OAuth2 tendrá acceso a tus datos de login.

@manestevez si no consigo que instales Beewallet hoy, lo cual me seguiría pareciendo lógico, espero que dentro de otro par de años Beewallet haya seguido mejorando, sin incidencias, y espero que para ese momento, cientos de comentarios en el Appstore puedan darte la confianza suficiente para probarla.

Dicho esto, ante la duda, mejor ser cauto tal y como haces, esa es la buena praxis.

Saludos

@tasmanpkr estoy totalmente de acuerdo con esto:

Si no tienes el control de tus claves privadas, no tienes bitcoins.

Pero cuidado ¿Es más seguro responsabilizarte de tus propios bitcoins que dejarlos en manos de terceros? A nivel individual y precisamente dependiendo del individuo, en algunos casos sí pero respóndeme a una cosa. ¿Cómo crees que se producen más muertes en le mundo, caminando por la calle o en viajes en avión? Esta claro que caminando por la calle, lo que pasa es que cuando cae un avión fallecen cientos de personas y a nivel mediático tiene un impacto tremendo.

Con tu lógica me podrías argumentar que es mejor tener tus pies en el suelo, dar tus propios pasos y elegir tu propia dirección que delegar en una compañía aérea para que te transporte a algún lugar. Pues te repito, a nivel individual podría ser. Si eres una persona joven, fuerte, alerta, cauta y epabilada, posiblemente tengas menos probabilidad de morir caminando por la calle que viajando en avión, pero a nivel global la realidad es que las muertes por accidente de avión son mucho menores. No todo el mundo es como tú, por las calles también caminan viejecitos frágiles, ciegos, sordos, cojos, gente con poco conocimiento, incautos que se meten en sitios que no deberían, que cruzan sin mirar, personas que viven en un entorno muy hostil, o que simplemente no tienen la formación suficiente para entender los peligros que les rodean. Por eso mueren más personas caminando por la calle que viajando en avión, porque no todos somos iguales ni tenemos las mismas circunstancias, pero todos tenemos derecho a desplazarnos ¿No? Las compañías aéreas son expertas en lo que hacen y por mucho que te pese son más expertas en lo que hacen que tú y que yo. No sé quien eres, no te conozco así que no puedo hablar con rotundidad pero probablemente Coinbase tenga mucha más experiencia y le ponga muchos más recursos que tú y que yo en poner a salvo los bitcoins.

Parece que la llegada de bitcoin y toda la revolución que ha traído haya cegado a muchas personas. Últimamente en determinados sitios parece que compitan por ver quien menciona más veces las palabras descentralizado, anónimo, autonomía. Si no lo haces no eres cool, o eres casi un hereje. Bitcoin es una herramienta, un martillo, pero no le puedes dar un martillo a todo el mundo y pretender que lo usen sin pillarse un dedo, habrá quien lo pueda usar y habrá quien necesite delegar en otros para que lo usen por él, es así de sencillo, bitcoin ha cambiado el panorama pero no ha cambiado a las personas e ir aconsejando a diestro y siniestro que cada uno guarde sus propios bitcoins es temerario, porque habrá quien sea capaz de hacerlo pero te aseguro que también habrá mucha gente para la que guardar sus propios bitcoins sea mucho más arriesgado que dejárselos a Coinbase. No todo lo hecho por uno mismo es mejor que delegar y confiar, ¿O acaso has construido con tus propias manos la casa en la que vives?

No hay que perder la objetividad, bitcoin es lo que es y lo puedes experimentar en muchos niveles, pero esto no es una carrera a ver quien es más fundamentalista. A nivel personal a algunas personas les recomiendo que se ocupen de sus propios bitcoins y a otras no. Yo no puedo estar velando por los bitcoins de todos mis conocidos y cuando alguien me pregunta qué tiene que hacer para tener bitcoins, adapto la respuesta a su “nivel” así que lo siento pero tu frase es falsa:

Es más seguro utilizar casi cualquier altcoin, si tan cara te parece la tasa de btc, que dejar tus bitcoins en manos de terceros.

Habrá que revisar caso por caso. Pásate por reddit y cuenta el número de hilos que se abren cada día por gente que ha perdido sus claves y por tanto sus bitcoins y compáralo con el número de usuarios que aseguran que sus bitcoins han desaparecido de Coinbase, que yo sepa hasta la fecha 0.
Puede parecer en esta respuesta que yo prefiera el confiar y delegar que el háztelo tú mismo, es la impresión que suele dar cuando se contesta a un comentario como el tuyo pero nada más lejos de la realidad, digo que hay soluciones para cada caso, y hay que individualizar, los fundamentalismos no sirven de nada, más bien son deletéreos. No dudo que seas muy capaz de guardar tus propios bitcoins y que los tengas más seguros que en ningún sitio, pero hay que tener cierta responsabilidad al escribir en sitios que puede leer cualquiera, desde el más experto hasta el recién llegado, porque la historia es más compleja de lo que la pintas y hay que contarla completa.

1 me gusta

No sé quien eres, no te conozco así que no puedo hablar con rotundidad pero probablemente Coinbase tenga mucha más experiencia y le ponga muchos más recursos que tú y que yo en poner a salvo los bitcoins.

No conozco a ese tal Coinbase, pero por suerte puedo utilizar Bitcoin para mis actividades financieras, donde no tengo por qué confiar en alguien para que guarde mi dinero. Por muchos recursos que Coinbase ponga para guardar “mis” btc, en cualquier momento puede decidir que alguien se los hackee, y sólo dependeré de su buena voluntad para evitarlo.
Justificarse en que la gente pierde sus btc no exculpa que la gracia de todo eso tan “cool” como la autonomía financiera o la descentralización es la razón de ser de bitcoin. Si quiero que alguien guarde mis ahorros, los dejo en un banco.
Suma a los 750.000 btc perdidos inicialmente en Mt Gox los que se han perdido en otros exchanges o en diversas exit scam de la deep web, junto con diversos ponzis, y compara con los bitcoins que hayan podido perder los usuarios, sobretodo los que han seguido unas mínimas pautas de seguridad y respaldo. Y dime qué es más seguro.
Un usuario motivado en guardar sus propios ahorros en btc (el incentivo es muy alto) tiene herramientas de sobra a su alcance para hacerlo de forma segura.

Igual que te pueden hackear a ti ¿O es que crees que eres invulnerable? Y por cierto, para eso hay leyes y hay empresas a las que se les exige adaptarse a una regulación, para que cuando pase algo haya mecanismos que cubran las pérdidas. Y sí en mtgox se perdieron muchos bitcoins y en toda la lista de sitios que me has soltado pero recuerda mi ejemplo de la compañía aérea, ¿Harías un viaje transatlántico subido en el avión de una compañía aérea local nigeriana o elegirías Iberia? Sigues sin entender lo que intento decirte, bitcoin tiene muchos niveles y hay que individualizar, hay que escoger el mejor para cada uno, si escoges el peor ya sabes a lo que te expones.

Un usuario motivado en guardar sus propios ahorros en btc (el incentivo es muy alto) tiene herramientas de sobra a su alcance para hacerlo de forma segura.

Discrepo rotundamente, se me ocurren múltiples personas de mi entorno a las que jamás les recomendaría hacerlo. Quizá de donde tú vengas tengáis todos una formación exquisita en el manejo de las TIC, pero en el mundo real hay personas que dicen cosas como “se me ha borrado el Internet” o “cómo me instalo youtube en el portátil”, y darles la responsabilidad de guardar sus propios bitcoins sería como un arma de destrucción masiva para su economía.

Y por cierto:
Si me dices que guardas tus bitcoins en un Trezor te diré que tú mismo estás confiando en otra empresa para tu cold storage?
Si me dices que su hardware es de código abierto, te preguntaré si lo has desmontado y has desensamblado la ROM para comprobarlo.
Si me dices que tú no pero que seguramente otras personas sí que revisan el código, te recordaré que heartbleed fue una vulnerabilidad muy grave que estuvo presente durante casi 3 años en Openssl antes de que nadie se diera cuenta.
Si me dices que guardas tus bitcoins en papel te diré que confiaste en la web que generó las claves, en que tu sistema operativo no estuviera comprometido y en que tu wifi tampoco lo estuviera, también te diré que esperas que tu casa no se queme o que esperas no olvidar tu semilla o contraseña o lo que uses de un golpe en la cabeza.

Nada es invulnerable, que tú pienses que tus bitcoins están más seguros en tus manos que en Coinbase es una opinión, no un hecho, y quizá sea cierta pero quizá no, y eso hay que explicárselo a todo el mundo para que cada cual tome sus propias decisiones.

Y repito, esto parece que se haya convertido en un debate bitcoins en propiedad vs bitcoins en servicio de terceros y no es el caso, todo lo que digo es que los dogmas o los mantras que algunos no hacéis más que repetir una y otra vez como un mono bien entrenado, no aportan nada. Lo que aporta es contar la historia completa, poner las alternativas sobre la mesa y que cada cual elija según sus capacidades.

Por cierto, hablas de que el propósito de bitcoin es ser descentralizado. ¿Es que acaso confiar un un tercero para que guarde tus bitcoins es centralizarlo? Creo que tienes los conceptos un poco equivocados, por muchos hosted wallets que existan y por mucha gente que haya que deposite su dinero en ellos, la red va a seguir siendo descentralizada, nada tiene que ver donde pongo mis bitcoins con como de centralizada es la red.

1 me gusta

A mi me pueden robar, pero una empresa tiene incentivos para robarse a sí misma. También tiene menos incentivos para proteger esos fondos. Si encima me hablas de que las pérdidas serían cubiertas, ya ni te digo: dejo que me roben los bitcoins y hago que pague por ello un fondo común, espero que con fondos provenientes de una cooperativa de diferentes empresas, y no de dinero público.
¿Qué pasaría si también roban los fondos de cobertura?

No tengo ninguna razón para pensar que Coinbase utilice métodos mucho mejores de los que pueda utilizar yo para proteger mis ahorros, pero es que además, cuando soy yo quien los protege no tengo que confiar en una tercera persona además de confiar en que las herramientas que utilizo son las adecuadas. Es así de sencillo.
Decirle a alguien que guardar sus bitcoins es una tarea muy complicada para que tenga que confiar en un tercero es corromper la motivación principal de Bitcoin y de cualquier otra criptomoneda. Si hay alguien que no se siente seguro para proteger sus bitcoins es mejor que no compre bitcoins todavía, que siga formándose hasta tener una idea de por qué es importante utilizar Bitcoin y por qué es importante tener el control de tus ahorros utilizando herramientas de software libre auditadas por terceros o, aún mejor, por uno mismo.

Insisto, no tengo ninguna razón para pensar que Coinbase utilice métodos mucho mejores de los que pueda utilizar yo para proteger mis ahorros. Yo sé que puedo, por mí mismo, repartir mis fondos en una dirección multifirma donde una firma esté protegida por Trezor, pero no me fío de Trezor pese a que aporta muchas más razones para confiar en ellos que lo que pueda hacer Coinbase, la otra firma la he hecho con la ayuda de un dado y un boli, o con un ordenador aislado de internet y bitaddress. Si me da miedo que vengan con una pistola a robarme, puedo meter mis fondos en una dirección multifirma 3/4 donde, además de las dos anteriores firmas, necesite 1 de las dos firmas que he dado a mis dos mejores amigos.

Mt gox llegó a tener casi 1/10 parte de los bitcoins en circulación. Eso es un riesgo de centralización. A cualquier ladrón le va a costar más tener que ir ordenador por ordenador para robar bitcoins que ir a la casa de cambio X a robar. Y el botín va a ser mucho mayor si va a la casa de cambio X. Eso es un riesgo de centralización.