Greetings. I am examining porting an existing bitcoin web app into bitshares.
The current app uses 5 RPC calls.
GetBalance, validateAddress, sendFrom, getNewAddress, getReceivedByAddresss.
The first 3 are easily replaced but I am investigating the last 2.
This is a system that doesn't force user logins. It currently uses cookies and unique addresses. By generating a new address with getnewaddress() then a link can be made with the session that was given this new address and the cookie created for the phpsession.
Then all that is needed is a periodic poll to call getreceivedbyaddress() to see if the person has deposited into their account which can be triggered on the user's side.
- With TITAN this does not work. The current answer from using exchanges is to have the user put something in the memo field to make their deposit unique. This works but is ugly and confusing. Developers can come up with multiple excuses why this is easy enough but it really is a strange process from a user's perspective. To maximize click-thru something simpler is preferred.
- Another alternative is to use the login protocol to authenticate the php session with the Bitshares user-id. This would be preferable in some ways but not a clear win. It requires the client up and running to login. This would prevent people from using a demo method without a different set of code.
- A third option is to let someone input their user-id into the web-site but this causes security issues where someone else could try to claim funds. Possibly use this with a combination of login authentication when warranted.
- A fourth option would be to use just something like getnewaddress. Was there ever anything like this created or plans for it in the future?
So assuming there is no #4 then #3 would be the best.
What options are there for scanning transactions?
What is the point of “prefixes” in blockchain_get_transaction? What would make transactions share a prefix?
blockchain_list_address_transactions seems to be what I want but I'd prefer a block number.
Are there other commands that I missed that could be used for transaction scanning?