Author

Topic: Identifying Transactions and Making it Clear (dreaming?) (Read 182 times)

legendary
Activity: 4466
Merit: 3391
I understand bitcoin transactions can have multiple inputs/outputs but I'm intrigued on how payment providers confirm the receipt of payment in a 3rd party wallet?
A unique payment address is given to the payer. Payment is not received until the correct amount is sent to that address. Bitcoins sent to that address are assumed to come from the payer and nobody else, since only the payer is provided with the address.

I understand that once you are inside a wallet, you have a different perspective of the transaction and therefore you can provide a clear view to the user about that specific transaction - as you know which addresses belong to that wallet.

But, is there a way to guess, or get closer to an aggregation of the value of the transaction that doesn't belong to a wallet you own? So we could show it clearly to the user: How much was sent, from where to and how much. Ok, there may be multiple outputs, which we have to show, but we can aggregate them and show the sum of the transaction. In the end of the day, once you send a transaction id to a recipient (as proof of payment), they want to see your wallet, their wallet, and the total amount which was paid. Not 15 inputs and another 29 outputs, confirmations, and all that stuff.
All transactions are 100% public. All the information that you are referring to is viewable by everyone.

But I'm trying to put together an explorer where it would be easier to show (to a Bitcoin normal user) a transaction in a simple way (without all those inputs and outputs), but something simpler as From, To, Value, Fee, and that's it.

I understand that, by design, the blockchain doesn't work that way. In any case, I would like to ask the community here if you have any clue or idea on how to achieve this or closer to this Smiley

Many block explorers do provide a simple view of transactions (when they are simple), but the wallets themselves are probably sufficient for what you want. The payer's wallet will show info about the transactions sending bitcoins to the payment address, and the payee's wallet will show info about transactions sent to the payee's payment addresses.

legendary
Activity: 2450
Merit: 4414
🔐BitcoinMessage.Tools🔑
~
I also think that simplicity could make the bitcoin use more adoptable by the everyday user who is interested only to know if the payment has been done and not to how many confirmations it had, which input it came from and how many outputs it went to.
~
Simplicity will make bitcoin more attractive for not tech-savvy users, it is true. For instance, in order to use the internet, we don't have to know how tcp/ip works, how many protocol layers there are, which protocol one should use to send cat videos. Everything is hidden behind polished user friendly interfaces. Everything in bitcoin should be hidden also with use of simple interfaces. But make no mistake, please. Bitcoin is not Visa, it is a decentralized network that requires as many full nodes as possible. Therefore, we shouldn't pander average users to be interested only in sending and recieving. The more people start looking behind the simplicity, the more decentralized network we get. I would like to see more solutions in which simplicity will be making bitcoin both more user-friendly and decentralized.
legendary
Activity: 2268
Merit: 18711
But in the end, all payments are made to ONE address. - Took a leap on this one, please correct me if I'm wrong.
Not necessarily, and ideally this isn't the case.

Although it is possible to set up a single receiving address to receive payments to, it causes a number of issues. First of all, it greatly reduces your privacy, since every knows that address belongs to you and can see exactly how much money you have received on it. Secondly, it makes automating payments near impossible, since there is no way to reliably tell which customer made which payment without them manually sending you details of it, and even then, they could simply send details of someone else's transaction.

Almost all payment processors, merchants, exchanges, and so on, will generate at least a unique address for each customer, and ideally a unique address for each transaction.
legendary
Activity: 1134
Merit: 1598
The main question is: Is that possible to filter the input/outputs and make it clear (outside of a wallet) how much was paid to a certain address? Maybe the input is not that important, as longs as we can show the amount and the output (being the destination wallet - not the change).
The only way you may be able to achieve this is by prioritizing certain addresses on the explorer, but it becomes a large privacy risk in the end. It pushes new questions to the front, such as: if the tx has 10 inputs and 100 outputs, how does the explorer know which input and which output to prioritize?

A tx with prioritized inputs and outputs could be shown with a little "Part of a more complex transaction. Click here for more" warning, so that the visitor has the option to see it in detail as well.

But overall, I personally think this is a block explorer newcomers would not use at all anyway - in order to prioritize an input/output, you have to filter addresses - which newcomers would be confused about. One way would be by having an open source non-custodial wallet push all your existing addresses to the block explorer's servers - but then it becomes a huge security compromise. If all your addresses are pushed to a server, it means the server will know they're most likely all related one way or another.
newbie
Activity: 12
Merit: 0
Thanks for the answer everyone.

@pooya87 - Yes, exactly, what I'm trying to do is what is already being done from inside all the good wallets out there. But I would like to have the transactions in a clear way, like ETH does (thanks @20Kevin20), showing the person who is about to receive the payment, that is it was executed and it's on the way. 

I appreciate the transparency of the blockchain and I know it's the core for the whole thing. But I also think that simplicity could make the bitcoin use more adoptable by the everyday user who is interested only to know if the payment has been done and not to how many confirmations it had, which input it came from and how many outputs it went to. I believe 1% of us look at those details, lets be real Smiley the rest wants to know if the payment was made and how much was sent, even if that doesn't have enough amount of confirmations yet.

In some cases it's really simple to read, when its from one personal wallet to another, like in this example: https://www.blockchain.com/btc/address/1PayX8kX9VZauRUpU59F4xvh2r6jMoLJWU

But sometimes you have exchange payments, like this example where you need to figure out which payment is yours, in our case, the first one: https://www.blockchain.com/btc/address/1wZQsYhTMSEf2e5RvzVancHQnLcLruDVt

But in the end, all payments are made to ONE address. - Took a leap on this one, please correct me if I'm wrong. If I'm right, then it should be traceable, no?

The main question is: Is that possible to filter the input/outputs and make it clear (outside of a wallet) how much was paid to a certain address? Maybe the input is not that important, as longs as we can show the amount and the output (being the destination wallet - not the change).

By the way, I'm looking for a developer to build this for me, if someone is interested and have the experience (and mainly the know-how), ping me on PM.


Thanks!
legendary
Activity: 3472
Merit: 10611
Ok, there may be multiple outputs, which we have to show, but we can aggregate them and show the sum of the transaction. In the end of the day, once you send a transaction id to a recipient (as proof of payment), they want to see your wallet, their wallet, and the total amount which was paid. Not 15 inputs and another 29 outputs, confirmations, and all that stuff.

wallets are already doing that.
they usually have a window showing all transactions or categorize them into different tabs like receive/send and then they show how much bitcoin was received or sent. for this part it doesn't matter how many input/outputs the transaction has, the user won't see any of that. it could also show the address from that wallet that received that amount.

if you want to see where the coins came from there is no other way than to see the whole transaction and all the inputs. which is again also already possible in wallets by looking at the "advanced" or "details",... page of each transaction.
legendary
Activity: 1134
Merit: 1598
If I got this right, you're trying to find a way to show only one instead of multiple outputs/inputs to make the txs look simpler.

That seems kinda hard and nonsense imo. If you have multiple inputs and/or outputs, the total tx value and fees show up anyway in all wallets. Having the possibility of viewing the same tx in detail is not something that should be missing. Transparency should be there at all times.

You cannot aggregate multiple inputs and show only one. That is basically hiding the rest of the inputs and making it seem like there was only one address the money came from. If you have 10 inputs and show only one, that means you should maintain the same address now, in 1 hour, 10 days or an year. In other words, there will be no more blockchain analysis difficulty as everything would be done straight from the explorer and having multiple addresses per wallet would hence make no sense.

What you are willing to do to Bitcoin is basically what ETH does, and it's bad for various reasons.
legendary
Activity: 2268
Merit: 18711
In the end of the day, once you send a transaction id to a recipient (as proof of payment), they want to see your wallet, their wallet, and the total amount which was paid. Not 15 inputs and another 29 outputs, confirmations, and all that stuff.
Although I don't know of any service which doesn't show the full transaction, Blockchair highlights the address you are looking up so it is easy to see only the amount that address has received from any given transaction. Here's an example: https://blockchair.com/bitcoin/address/39dk7jM6HzQ8aYr8CwC4XSTNke8kXDJaQY. I would also suggest that a recipient would absolutely want to see how many confirmations a transaction has - such knowledge is vital to the safe running of any exchange, service, merchant, business, etc.

I understand that, by design, the blockchain doesn't work that way. In any case, I would like to ask the community here if you have any clue or idea on how to achieve this or closer to this Smiley
You would presumably have to identify in some way which outputs are going to which recipients, so if someone looks up the transaction the other outputs they are not interested in can be filtered out. There are huge privacy downsides to this. The easiest way, I would have thought, would be to have something like Blockchair above when looking up your own address, but instead of highlight your address it simply removes all other outputs.
legendary
Activity: 2114
Merit: 2248
Playgram - The Telegram Casino
I understand that, by design, the blockchain doesn't work that way.
I guess this part answers the main question. Omitting some information from the transaction data would leave holes and may even give out completely false details, in a bid to make it more user friendly.
I've sent txids to noobs overtime and it was fairly easy for them to understand, to make it easier I usually add a discription, so it is more specific.
copper member
Activity: 2856
Merit: 3071
https://bit.ly/387FXHi lightning theory
I guess you're wanting people to have a way of searching by output address? If you have a phone and put a btc address into btc.com for example it just shows txids confirmations and how much is going in or out of the address?

You could probably just sequence the addresses in turn in your explorer and output a more friendly approach. You could also offer and ability like blockchain.com does where people are able to add a label to an address if they can prove ownership of it by signing a message.
newbie
Activity: 12
Merit: 0
I understand bitcoin transactions can have multiple inputs/outputs but I'm intrigued on how payment providers confirm the receipt of payment in a 3rd party wallet?

I understand that once you are inside a wallet, you have a different perspective of the transaction and therefore you can provide a clear view to the user about that specific transaction - as you know which addresses belong to that wallet.

But, is there a way to guess, or get closer to an aggregation of the value of the transaction that doesn't belong to a wallet you own? So we could show it clearly to the user: How much was sent, from where to and how much. Ok, there may be multiple outputs, which we have to show, but we can aggregate them and show the sum of the transaction. In the end of the day, once you send a transaction id to a recipient (as proof of payment), they want to see your wallet, their wallet, and the total amount which was paid. Not 15 inputs and another 29 outputs, confirmations, and all that stuff.

I get it, all of that info is very important, including number of confirmation, etc, yadayadayada.

But I'm trying to put together an explorer where it would be easier to show (to a Bitcoin normal user) a transaction in a simple way (without all those inputs and outputs), but something simpler as From, To, Value, Fee, and that's it.

I understand that, by design, the blockchain doesn't work that way. In any case, I would like to ask the community here if you have any clue or idea on how to achieve this or closer to this Smiley

I'm open to suggestions and ideas on this, cheers!

Thanks in advance,
Jump to: