Bitcoin Forum
April 27, 2024, 11:27:35 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1] 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 »  All
  Print  
Author Topic: [ANN] BitcoinSpinner  (Read 45010 times)
Jan (OP)
Legendary
*
Offline Offline

Activity: 1043
Merit: 1002



View Profile
November 23, 2011, 04:10:07 PM
Last edit: September 28, 2012, 10:47:21 AM by hazek
 #1

A Danish software company Miracle A/S has implemented an awesome Bitcoin client for Android called BitcoinSpinner. The developer is not active on this forum, and since it is built on top of the BCCAPI, and I have participated with testing and suggestions I am proud to announce it here.

BitcoinSpinner is minimalistic, to the point, and is intended for broad adoption.

Features:
  • Ready for use right after installation - The block chain is managed by a server.
  • NOT a Bitcoin bank - All private keys are kept in app-private storage on your device.
  • Send & Receive Bitcoins using QR codes.
  • Share your Bitcoin address using Gmail, Twitter and more.
  • Backup & Restore your wallet using QR codes.
  • It is Open source - Geeks can download the code, review it, and roll their own.

Because BitcoinSpinner does not download and manage the Bitcoin block chain it is ready for use immediately.
This also means that it has:
  • Low storage requirements.
  • Low bandwidth requirements.
  • Low CPU requirements.
  • Low battery consumption.

BitcoinSpinner comes in two versions and is available on the Android Marketplace:

Note that this is a beta release. Use with caution.

You cannot have an announcement like this without a bounty: The first one to post a picture in this thread of their Android device with a scannable QR address code displayed with BitcoinSpinner will get a shiny new Bitcoin.

Your feedback is appreciated!

Mycelium let's you hold your private keys private.
The Bitcoin software, network, and concept is called "Bitcoin" with a capitalized "B". Bitcoin currency units are called "bitcoins" with a lowercase "b" -- this is often abbreviated BTC.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
Gabi
Legendary
*
Offline Offline

Activity: 1148
Merit: 1008


If you want to walk on water, get out of the boat


View Profile
November 23, 2011, 04:37:06 PM
 #2

Interesting!

adamstgBit
Legendary
*
Offline Offline

Activity: 1904
Merit: 1037


Trusted Bitcoiner


View Profile WWW
November 23, 2011, 04:40:18 PM
 #3

if it does not download and manage the Bitcoin block chain.

how do you get confirmations?

Jan (OP)
Legendary
*
Offline Offline

Activity: 1043
Merit: 1002



View Profile
November 23, 2011, 04:54:26 PM
 #4

if it does not download and manage the Bitcoin block chain.

how do you get confirmations?

BitcoinSpinner uses the BCCAPI,  which connects to a server. The server  holds the block chain, and the public key of your Bitcoin address is uploaded to the server. This allows the server to scan the block chain for matching incoming transactions. The corresponding private key never leaves BitcoinSpinner. Whenever BitcoinSpinner needs to send Bitcoins it asks the server to give it an unsigned transaction comprising of unspent inputs, and outputs sent to the receiver + plus change sent back to yourself. BitcoinSpinner verifies that the transaction only sends to expected receivers, signs the transaction, and lets the server transmit the transaction to the Bitcoin network. More info on the BCCAPI and sources available here.

Mycelium let's you hold your private keys private.
db
Sr. Member
****
Offline Offline

Activity: 279
Merit: 261



View Profile
November 23, 2011, 05:33:52 PM
 #5

Android market tells me it can't find it. I think it does that when a program is incompatible with the device. What are the requirements?
teflone
Hero Member
*****
Offline Offline

Activity: 770
Merit: 500


You're fat, because you dont have any pics on FB


View Profile
November 23, 2011, 05:39:28 PM
 #6

Looks nice!

For Canadians by Canadians: Canada's Bitcoin Community - https://www.coinforum.ca/
Jan (OP)
Legendary
*
Offline Offline

Activity: 1043
Merit: 1002



View Profile
November 23, 2011, 05:44:48 PM
 #7

Android market tells me it can't find it. I think it does that when a program is incompatible with the device. What are the requirements?
Android version 2.2 should do it. Just follow the links in the post.

Mycelium let's you hold your private keys private.
db
Sr. Member
****
Offline Offline

Activity: 279
Merit: 261



View Profile
November 23, 2011, 05:47:36 PM
 #8

Android version 2.2 should do it. Just follow the links in the post.

Explains it; my phone has 2.1.
Jan (OP)
Legendary
*
Offline Offline

Activity: 1043
Merit: 1002



View Profile
November 23, 2011, 05:59:03 PM
 #9

Android version 2.2 should do it. Just follow the links in the post.
Explains it; my phone has 2.1.

2.2.x and forward cover roughly 85% of the devices out there. As far as I remember the developer mentioned that it wasn't tested on 2.1.x and earlier, which is why it wasn't marked as compatible with those devices. However, it still might work. I'll send him a note and let's see what can be done.

Mycelium let's you hold your private keys private.
blueadept
Full Member
***
Offline Offline

Activity: 225
Merit: 101


View Profile
November 23, 2011, 06:07:37 PM
 #10



Here's my photo.

Like my posts?  Connect with me on LinkedIn and endorse my "Bitcoin" skill.
Decentralized, instant off-chain payments.
Jan (OP)
Legendary
*
Offline Offline

Activity: 1043
Merit: 1002



View Profile
November 23, 2011, 06:16:26 PM
 #11

Here's my photo.

We have a winner! 1 BTC on its way to you.

Please share your user experience.

Mycelium let's you hold your private keys private.
blueadept
Full Member
***
Offline Offline

Activity: 225
Merit: 101


View Profile
November 23, 2011, 06:23:12 PM
Last edit: November 23, 2011, 07:57:42 PM by blueadept
 #12

I got the bitcoin right away ("on its way" to me).  And it was confirmed as I was typing this post.

Update with full review

Compliments:  Very clean, minimalist, simple interface. Very, very fast: so much better than a BitcoinJ-based client (no offense to the creators of BitcoinJ as their efforts are incredible, but this uses mobile phone resources much more effectively).  I really like the QR code-based wallet export, too.

Negatives:  Forces a .0005BTC fee for sending a transaction rather than intelligently deciding whether it's possible to send the requested amount without a fee. No address book.  No way to connect to a different BCCAPI server in the app (if you want to run your own, I can see people using BitcoinJS and/or Electrum servers with a BCCAPI front-end in the future).

Differences that aren't necessarily negatives:  No transaction history, just a balance.  Single bitcoin address only.

All in all, it's very clean and beautiful and probably doesn't need anything more considering the primary use case (paying with/receiving bitcoins in person).  I really, really like it.  It acts like an actual cash wallet, not a bank account.  You know your balance and you pay to the address given to you by the recipient/shop in person.

Like my posts?  Connect with me on LinkedIn and endorse my "Bitcoin" skill.
Decentralized, instant off-chain payments.
BitcoinBug
Full Member
***
Offline Offline

Activity: 196
Merit: 100


View Profile
November 23, 2011, 06:45:52 PM
 #13

Simple and effective. Nice work!
dogisland
Sr. Member
****
Offline Offline

Activity: 262
Merit: 250



View Profile
November 24, 2011, 10:27:11 AM
 #14

Just tried it. This is a great piece of software.
foo
Sr. Member
****
Offline Offline

Activity: 409
Merit: 250



View Profile
November 24, 2011, 11:07:13 AM
 #15

A Bitcoin spinner? Grin

I know this because Tyler knows this.
jav
Sr. Member
****
Offline Offline

Activity: 249
Merit: 251


View Profile
November 24, 2011, 12:50:43 PM
 #16

Trying it out at the moment - nice work!

Hive, a beautiful wallet with an app platform for Mac OS X, Android and Mobile Web. Translators wanted! iOS and OS X devs see BitcoinKit. Tweets @hivewallet. Donations appreciated at 1HLRg9C1GsfEVH555hgcjzDeas14jen2Cn.
Steve
Hero Member
*****
Offline Offline

Activity: 868
Merit: 1007



View Profile WWW
November 24, 2011, 01:05:58 PM
 #17

Very nice!  What technology was used to create this?  Is it something very specific to Android or would it be easy to port to the iPhone (and run on a jailbroken iPhone)?

(gasteve on IRC) Does your website accept cash? https://bitpay.com
Jan (OP)
Legendary
*
Offline Offline

Activity: 1043
Merit: 1002



View Profile
November 24, 2011, 01:17:12 PM
 #18

I got the bitcoin right away ("on its way" to me).  And it was confirmed as I was typing this post.

Update with full review

Compliments:  Very clean, minimalist, simple interface. Very, very fast: so much better than a BitcoinJ-based client (no offense to the creators of BitcoinJ as their efforts are incredible, but this uses mobile phone resources much more effectively).  I really like the QR code-based wallet export, too.

Negatives:  Forces a .0005BTC fee for sending a transaction rather than intelligently deciding whether it's possible to send the requested amount without a fee. No address book.  No way to connect to a different BCCAPI server in the app (if you want to run your own, I can see people using BitcoinJS and/or Electrum servers with a BCCAPI front-end in the future).

Differences that aren't necessarily negatives:  No transaction history, just a balance.  Single bitcoin address only.

All in all, it's very clean and beautiful and probably doesn't need anything more considering the primary use case (paying with/receiving bitcoins in person).  I really, really like it.  It acts like an actual cash wallet, not a bank account.  You know your balance and you pay to the address given to you by the recipient/shop in person.

Thanks for the feedback.

Regarding the fee: This is a limitation of the server implementation and not the App as such, or in other words my fault. You are right that you can deduce the minimal fee, which is some cases is zero, by among others looking at the age of your inputs. Etotheipi started a thread on this here: https://bitcointalk.org/index.php?topic=51081.0
For now I have chosen a conservative approach where the fee is 0.0005 * (1+int(transactionSizeinBytes/1000)). I will be looking into optimizing this going forward.
The paramount thing to note here is that it is critical that the fee calculation is not too low, as you may risk the transaction is not propagated through the network or accepted by a miner. In scenarios where you manage your own block chain and end up with a transaction that got stuck you can basically delete the block chain, keep your wallet keys and load it anew, and finally make a new transaction with a larger fee. With the BCCAPI I cannot do this as I don't have a separate block chain per wallet, and don't want to spend the processing power to scan it anew whenever some poor guy sent out a transaction with a zero fee. In the end I would like this to be simple and safe to use.

No address book: This feature is an App feature and independent of the BCCAPI. It may be a good thing to add to the App going forward, but I guess that it depends on the use-case. If we want it to look like your ordinary wallet, then you do not have an address book or a transaction log for that matter. Whenever you pay you grab the money and pass it on to whoever you are trading with. However, the reason why I don't have an address book and transaction log for my ordinary wallet is that the first doesn't make sense and the latter is very cumbersome to manage. With a Bitcoin wallet this is both feasible and practically manageable. As for the transaction list the BCCAPI already has this functionality. It just needs to go into the App. I'll pass this onto the developer at Miracle and see what he thinks.

In the end the goal with the App is to be simple and easy for anyone to absorb, so maybe transaction logs and address books is something that could go into a Pro version?



 

Mycelium let's you hold your private keys private.
Jan (OP)
Legendary
*
Offline Offline

Activity: 1043
Merit: 1002



View Profile
November 24, 2011, 01:23:31 PM
 #19

Very nice!  What technology was used to create this?  Is it something very specific to Android or would it be easy to port to the iPhone (and run on a jailbroken iPhone)?

BitcoinSpinner is written in Java, and uses the BCCAPI which is also written in Java. To implement this for iPhone you would have to port the BCCAPI to C/C++ish languages, and implement the UI on top from scratch. This is not a big pile of work, but would take a seasoned developer some weeks. This big problem however is, as you indicate, that this would only be useable for jailbroken devices. So you would never hit the mass market.

Mycelium let's you hold your private keys private.
Steve
Hero Member
*****
Offline Offline

Activity: 868
Merit: 1007



View Profile WWW
November 24, 2011, 01:38:36 PM
 #20

Very nice!  What technology was used to create this?  Is it something very specific to Android or would it be easy to port to the iPhone (and run on a jailbroken iPhone)?

BitcoinSpinner is written in Java, and uses the BCCAPI which is also written in Java. To implement this for iPhone you would have to port the BCCAPI to C/C++ish languages, and implement the UI on top from scratch. This is not a big pile of work, but would take a seasoned developer some weeks. This big problem however is, as you indicate, that this would only be useable for jailbroken devices. So you would never hit the mass market.
I don't really care about the mass markets, I care about me. Wink

What I really want is a native app built using phonegap, HTML5 & JavaScript such that it's maximally portable.  Also, eventually Apple will allow these apps, especially when everyone is jailbreaking their phones to install them.

(gasteve on IRC) Does your website accept cash? https://bitpay.com
Pages: [1] 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!