#StackBounty: #blockchain Healthcare and blockchains

Bounty: 50

I’ve seen Blockchain use case in healthcare but it doesn’t quite answer my question.

I would like to know if there is a real use case for blockchain in healthcare or if it is just a buzzword that they are trying to incorporate to impress people who don’t know better.

The general problem in healthcare appears to be that data is stored in various siloed locations and has multiple formats. The other key concern is patient anonymity but at the same time, if the data is fully anonymized and aggregated, researchers would like to use it for their work.

I have seen some proposals to use blockchains to solve these issues but I can’t yet clearly see how or why it has to be blockchains. Does anyone see why traditional distributed databases with standardized data formats are insufficient for the things I’ve mentioned?

TL;DR How can one really use blockchains in healthcare applications, if at all?


Get this bounty!!!

#StackBounty: #blockchain #alternatives #scalability How scalable is a Blockchain-based system?

Bounty: 50

This question as stated above is a bit vague, but let me make it a bit more clear:

Recently, I have seen many services pop up that state that they are secure, fault-tolerant, trustless and scalable because they use a blockchain (often the Bitcoin block chain, the Ethereum blockchain or one of many other or proprietary ‘block chains’) to store the important parts of the data the services handle.

Now, security and fault-tolerancy I can understand, because (after a few more blocks are mined):

  • Everone can check the integrity and authenticity of a transaction because ECDSA-signatures are used, giving the system non-repudiation as property.
  • Everyone has a copy of the block chain so-far stored locally, making it virtually impossible to destroy data. ❦
  • it becomes virtually impossible to alter a previously-made transaction, because this means that all hashes of blocks after that need to be re-calculated.

Now, because of ❦, the system is also trustless, assuming everyone can read/understand the data from the blockchain directly (i.e. the service’s interface to the block chain is released as open-source software). This is where quite a few services claims fall short.

However, the final claim: scalability. I cannot understand how a system can be scalable if it involves the copying of all the (trans)actions its users did to all other users’ computers (again, this follows from ❦): It will
both take a lot of time and a lot of disk space to do all this copying, and at some point a physical limit will be reached in which more actions are taken than can be written to the blockchain and in which it takes longer to catch up to the head of the chain than that new transactions appear. In both cases the system will break down (?).

I can see only one ways to resolve this, which is to use ‘light wallets’ for the end users, in which case the system is no longer trustless, as these users need to trust that the parties they talk with are honest in the version of the block chain they show, so this breaks the other claims.

I don’t believe all of the systems that state ‘Blockchain inside’ use this approach.

So my question: What other techniques are used to make a Blockchain-based system more scalable, and how scalable (in transaction throughput) is a system as a result?


Get this bounty!!!

#StackBounty: #blockchain #address #altcoin Building an blockchain address monitoring service. Best way to monitor an address for bitco…

Bounty: 50

I’m looking to build a blockchain address monitoring service for bitcoin and other altcoins. What is the best way to monitor a bunch of addresses for incoming/outgoing transactions?

Currently I wrote a php script that checks the address every 5 minutes for any new activity and then store this data to a file and then another 5 minutes I fetch the data again and diff the file to see any differences and if so do something.

Another method I was thinking was to fetch each block as its mined then see if any of the addresses match what I have listed then do something.


Get this bounty!!!

#StackBounty: #go-ethereum #blockchain #nodes #golang #upgrading Geth 1.6.1 hangs throwing "unexpected fault address" fatal e…

Bounty: 50

Since upgraded to version 1.6.1, Geth node hangs form time to time (once a week) with following fatal error:

fatal error: fault
[signal SIGSEGV: segmentation violation code=0x1 addr=0x7f6453b72c88 pc=0x461097]

goroutine 1500070 [running]:
runtime.throw(0xe9b327, 0x5)
    /home/travis/.gimme/versions/go1.8.1.linux.amd64/src/runtime/panic.go:596 +0x95 fp=0xc43095a9f0 sp=0xc43095a9d0
runtime.sigpanic()
    /home/travis/.gimme/versions/go1.8.1.linux.amd64/src/runtime/signal_unix.go:297 +0x28c fp=0xc43095aa40 sp=0xc43095a9f0
runtime.memmove(0xc423ad8b80, 0x7f6453b72c88, 0x40)
    /home/travis/.gimme/versions/go1.8.1.linux.amd64/src/runtime/memmove_amd64.s:184 +0x657 fp=0xc43095aa48 sp=0xc43095aa40
github.com/ethereum/go-ethereum/consensus/ethash.hashimoto(0xc43095ad78, 0x20, 0x20, 0x3ff85f426cae9afa, 0x50ffff80, 0xc448b3abe0, 0xc43095ac48, 0x40b944, 0xd2b540, 0xc427ef5320, ...)
    /home/travis/gopath/src/github.com/ethereum/go-ethereum/consensus/ethash/algorithm.go:314 +0x36e fp=0xc43095abe0 sp=0xc43095aa48
github.com/ethereum/go-ethereum/consensus/ethash.hashimotoFull(0x7f6453000008, 0x143fffe0, 0x143fffe0, 0xc43095ad78, 0x20, 0x20, 0x3ff85f426cae9afa, 0xc448b3ab20, 0x20, 0x20, ...)
    /home/travis/gopath/src/github.com/ethereum/go-ethereum/consensus/ethash/algorithm.go:357 +0xbe fp=0xc43095ac58 sp=0xc43095abe0
github.com/ethereum/go-ethereum/consensus/ethash.(*Ethash).mine(0xc420fc0b40, 0xc43363c990, 0x0, 0x3ff85f426cac4155, 0xc427ef5320, 0xc427ef5380)
    /home/travis/gopath/src/github.com/ethereum/go-ethereum/consensus/ethash/sealer.go:130 +0x451 fp=0xc43095af68 sp=0xc43095ac58
github.com/ethereum/go-ethereum/consensus/ethash.(*Ethash).Seal.func1(0xc420695aa0, 0xc420fc0b40, 0xc43363c990, 0xc427ef5320, 0xc427ef5380, 0x0, 0x3ff85f426cac4155)
    /home/travis/gopath/src/github.com/ethereum/go-ethereum/consensus/ethash/sealer.go:72 +0x87 fp=0xc43095afa8 sp=0xc43095af68
runtime.goexit()
    /home/travis/.gimme/versions/go1.8.1.linux.amd64/src/runtime/asm_amd64.s:2197 +0x1 fp=0xc43095afb0 sp=0xc43095afa8
created by github.com/ethereum/go-ethereum/consensus/ethash.(*Ethash).Seal
    /home/travis/gopath/src/github.com/ethereum/go-ethereum/consensus/ethash/sealer.go:73 +0x1d7

Any idea what is the reason for this error? how to fix? Thx!


Get this bounty!!!

#StackBounty: #transactions #blockchain #script Hex to ASCII conversion of output scripts generates unexpected characters

Bounty: 100

Embedded in this transaction, there is a blockchain file upload tool written in Python.

I’m trying to convert the hex of the output scripts to ASCII, so I can assemble it all into an actual runnable Python script. However doing a direct hex to ASCII conversion generates some unexpected characters.

For example, the third output script has the following hex:

51412c756e6865786c6966790a66726f6d20646563696d616c20696d706f727420446563696d616c0a0a6966206c656e287379732e6172677629203c20353a0a20202041207072696e74285c0a2222225c0a55736167653a202573203c66696c653e203c6465737420616464723e203c6465737420616d6f756e743e207b3c6665652d706541722d6b623e7d0a0a5365742042544352504355524c3d687474703a2f2f757365723a70617373406c6f63616c686f73743a706f72746e756d22222220252073797353ae

Using a hex to ASCII converter, it becomes this Python code:

QA,unhexlify
from decimal import Decimal

if len(sys.argv) < 5:
   A print(
"""
Usage: %s <file> <dest addr> <dest amount> {<fee-peAr-kb>}

Set BTCRPCURL=http://user:pass@localhost:portnum""" % sysS.

Why is the character A preceding print for no reason? As well as QA and S at the beginning and ends, respectively?

From what I’ve seen referenced on the Web, the third output script is meant to look like this:

,unhexlify
from decimal import Decimal

if len(sys.argv) < 5:
    print(
"""
Usage: %s <file> <dest addr> <dest amount> {<fee-per-kb>}
Set BTCRPCURL=http://user:pass@localhost:portnum""" % sys.

What am I missing here? I’m completely new to Bitcoin, so I’m guessing it’s something obvious.


Get this bounty!!!

#StackBounty: #go-ethereum #blockchain #mining #ropsten #tesnets Geth node not mining anymore since synced to new Ropsten testnet

Bounty: 100

After upgrading geth node to new Ropsten testnet node is not mining anymore, even though log messages seem it is trying to:

I0328 09:51:54.537322 miner/worker.go:542] commit new work on block 645501 with 3 txs & 0 uncles. Took 7.0169ms
I0328 09:51:54.510653 core/blockchain.go:1042] imported 1 blocks,     1 txs (  2.461 Mg) in  19.615ms (125.473 Mg/s). #645500 [decf1899…]
I0328 09:51:49.199444 miner/worker.go:542] commit new work on block 645500 with 3 txs & 0 uncles. Took 10.9284ms
I0328 09:51:49.188250 core/blockchain.go:1042] imported 1 blocks,     0 txs (  0.000 Mg) in   8.887ms ( 0.000 Mg/s). #645499 [d7e75631…]
I0328 09:51:41.826702 miner/worker.go:542] commit new work on block 645499 with 2 txs & 0 uncles. Took 1.0329ms
I0328 09:51:41.825596 core/blockchain.go:1042] imported 1 blocks,     0 txs (  0.000 Mg) in   2.866ms ( 0.000 Mg/s). #645498 [4fde3f80…]
I0328 09:51:40.335148 miner/worker.go:542] commit new work on block 645498 with 2 txs & 0 uncles. Took 1.0338ms

The miner address is the following:

https://ropsten.etherscan.io/address/0xf28dafbfeb41bf32869c9d498da0d651d0206ed4#mine

The command line to launch geth node is this one:

geth --testnet --rpc --rpcapi "db,eth,net,web3,personal" --mine --etherbase "0xf28dafbfeb41bf32869c9d498da0d651d0206ed4" --gasprice "1000000000" --bootnodes "enode://20c9ad97c081d63397d7b685a412227a40e23c8bdc6688c6f37e97cfbc22d2b4d1db1510d8f61e6a8866ad7f0e17c02b14182d37ea7c3c8b9c2683aeb6b733a1@52.169.14.227:30303,enode://6ce05930c72abc632c58e2e4324f7c7ea478cec0ed4fa2528982cf34483094e9cbc9216e7aa349691242576d552a2a56aaeae426c5303ded677ce455ba1acd9d@13.84.180.240:30303"

After 2 days mining the geth node got 1 block mined:

https://ropsten.etherscan.io/block/653885

Before Ropsten the same node was mining at a rate of 2 blocks per hour, but now it mines at 1 block per day or even slower.

Any hint about what is happening? Thx!


Get this bounty!!!

#StackBounty: #blockchain #transaction-fees #utxo How many UTXOs have a marginal fee cost that's higher than its worth?

Bounty: 100

I define marginal fee cost as the number of bytes required to add that UTXO as an input to a TX multiplied by the satoshi/byte rate of the blocks being found.

So for a normal p2pkh UTXO, this would currently be roughly 180 bytes (number of bytes this UTXO would take up in a TX as an input) * 200 satoshi/byte, or 36000 satoshi. So the answer would be however many UTXOs exist that are 36000 satoshi or below for p2pkh. Essentially, I want to know how many UTXOs are currently in the UTXO set that would not be worth redeeming should the fees be above a certain satoshi/byte.

I would like this data at 100 satoshi/byte, 200 satoshi/byte, 300 satoshi/byte, 500 satoshi/byte and 1000 satoshi/byte.


Get this bounty!!!

#StackBounty: #blockchain #transaction-fees #utxo How many UTXOs have a marginal fee cost that's higher than its worth?

Bounty: 100

I define marginal fee cost as the number of bytes required to add that UTXO as an input to a TX multiplied by the satoshi/byte rate of the blocks being found.

So for a normal p2pkh UTXO, this would currently be roughly 180 bytes (number of bytes this UTXO would take up in a TX as an input) * 200 satoshi/byte, or 36000 satoshi. So the answer would be however many UTXOs exist that are 36000 satoshi or below for p2pkh. Essentially, I want to know how many UTXOs are currently in the UTXO set that would not be worth redeeming should the fees be above a certain satoshi/byte.

I would like this data at 100 satoshi/byte, 200 satoshi/byte, 300 satoshi/byte, 500 satoshi/byte and 1000 satoshi/byte.


Get this bounty!!!

#StackBounty: #blockchain #transaction-fees #utxo How many UTXOs have a marginal fee cost that's higher than its worth?

Bounty: 100

I define marginal fee cost as the number of bytes required to add that UTXO as an input to a TX multiplied by the satoshi/byte rate of the blocks being found.

So for a normal p2pkh UTXO, this would currently be roughly 180 bytes (number of bytes this UTXO would take up in a TX as an input) * 200 satoshi/byte, or 36000 satoshi. So the answer would be however many UTXOs exist that are 36000 satoshi or below for p2pkh. Essentially, I want to know how many UTXOs are currently in the UTXO set that would not be worth redeeming should the fees be above a certain satoshi/byte.

I would like this data at 100 satoshi/byte, 200 satoshi/byte, 300 satoshi/byte, 500 satoshi/byte and 1000 satoshi/byte.


Get this bounty!!!

#StackBounty: #blockchain #transaction-fees #utxo How many UTXOs have a marginal fee cost that's higher than its worth?

Bounty: 100

I define marginal fee cost as the number of bytes required to add that UTXO as an input to a TX multiplied by the satoshi/byte rate of the blocks being found.

So for a normal p2pkh UTXO, this would currently be roughly 180 bytes (number of bytes this UTXO would take up in a TX as an input) * 200 satoshi/byte, or 36000 satoshi. So the answer would be however many UTXOs exist that are 36000 satoshi or below for p2pkh. Essentially, I want to know how many UTXOs are currently in the UTXO set that would not be worth redeeming should the fees be above a certain satoshi/byte.

I would like this data at 100 satoshi/byte, 200 satoshi/byte, 300 satoshi/byte, 500 satoshi/byte and 1000 satoshi/byte.


Get this bounty!!!