Pages:
Author

Topic: Is this address format (e.g.: BTC.443860.3.56318) a good idea? (Read 2278 times)

JFC
newbie
Activity: 24
Merit: 17

Personally, I think the OP is definitely thinking on the right lines. Whether this particular proposal is appropriate matters less than the fact that people are thinking about these issues. I think any rational observer would agree that the usability and user-friendliness of the Bitcoin eco-system in general is woeful and anything that improves it will be welcome.

Hi tertius993,

thank you for your comments. I totally agree with that.
The particular format I am proposing is not the important thing here. Improving the usability and user-friendliness of Bitcoin is.

It is nice to know there are other people in this forum that recognize this problem and will welcome improvements in these areas.
JFC
newbie
Activity: 24
Merit: 17
In Europe we have IBAN numbers for EUR account and it is not rememberable at all by avg. person same as bitcoin address you just copy paste it and check visually it is the same (to check for clipboard modifying viruses. Replacing long bitcoin address with shorter one which is still non memorable is useless.

If you want to make something like paypal with sending to email you should think about blockchain solution in which you could voluntarily publish email address [email protected] belongs to bitcoin address ABC. Sort of named bitcoin address.

underhood, thanks for your comments.

Bank accounts are not rememberable. And yet they are used by millions of persons every day. They are still IMHO much more user friendly than a long series of case-sensitive characters. The purpose here is not creating a payment address you can remember but having something that a general population can use without fear.

Regarding the email-as-an-address it is an interesting idea. I think something could be done by using the OP_RETURN scripting operation. But you would need more than a single payment destination to avoid privacy and security problems. Also, some sort of checksum is also a necessity. But I definitely concur that something along those lines is worth studying.


JFC
newbie
Activity: 24
Merit: 17
Opening new levels of discussion to improve bitcoin is a great thing but I kind of like the address format and I'm not that  a tech-savvy type of girl, I just got used to it Smiley

Hi Mandy,

it is great that you feel comfortable with the traditional bitcoin address format. But I bet that you are more tech-savvy than you think! (What are you doing in this forum if you are not?)  Wink

Regards

P.S.: Don't worry, I am not planning on deprecating the Base58Check format (not that I could even if I wanted...). I could call it 'legacy' though if I wanted to be pretentious and mean, but I will not  Wink


Ty for replying
I don't feel tech savvy at all, I'm here to learn about bitcoin as I feel it's getting serious. Regarding the address format I find it easy to proof check addresses when I want to send or receive only by checking the first and last 2 digits of the address, I bet you can't do that with your format since the numbers are variable and not fixed from what I understood Smiley

But that method is far from certain - *many* addresses could have the first and last two characters the same.

Personally, I think the OP is definitely thinking on the right lines. Whether this particular proposal is appropriate matters less than the fact that people are thinking about these issues. I think any rational observer would agree that the usability and user-friendliness of the Bitcoin eco-system in general is woeful and anything that improves it will be welcome.

I couldn't agree more with you, more people thinking about how to improve bitcoin is excellent news Smiley
Just expressed my opinion, Op keep it up Wink
Mandy, thanks for your nice comments. I'll try to keep it up  Grin
On the other hand tertius993 is right. Just checking 4 digits of the Base58address is better than nothing, but very insecure nonetheless. It is very easy to generate another address with the same 2 starting and ending digits (For comparison a vanity address with 4 characters is free in this service.)

Quote
I find it easy to proof check addresses when I want to send or receive only by checking the first and last 2 digits of the address, I bet you can't do that with your format since the numbers are variable and not fixed from what I understood Smiley

Aside from being a poor checking, the answer is yes, you could that if you wanted. Once you have 'published' your address on the blockchain, those numbers are fixed forever (as long as your transaction isn't removed from the blockchain; that is the reason you should wait for a fair number of confirmations).


JFC
newbie
Activity: 24
Merit: 17
In the future we will hopefully have confidential transactions as proposed by gmaxwell and then it will not be possible to know what amount of BTC is being moved around, also we will have coinjoin and other privacy stuff. Wouldn't this make your format incompatible with those transactions? or you can still get the information needed?

Confidential transactions are a feature of sidechains not of Bitcoin. The Bitcoin protocol will probably not change in any significant way ever, just as the UDP protocol on which the internet is based on is essentially frozen. You can build layers on top of it (TCP/IP, http, ...) but the basics of routing packets in a best effort manner haven't changed and won't change. So, this addressing scheme should be safe from the kind of changes we can expect. On the other hand, mixing services such as coinjoin are no problem. They are just a way to make transaction linking harder, but the bitcoins end up in traditional addresses.


Also I think in the future we will have some sort of "email" format where you can give to people and when they send you coins it automatically receives them in newly generated addresses for better privacy easily instead of the complex long addresses. I think Bitcoin should have this "email of money" instead of trying to look like an annoying bank account (I hate when I have to share bank account details because the numbers are so long and one mistake and you are fucked)

I also said in my original post that paypal has a very user friendly kind of payment address. However, I don't see how you could easily integrate that kind of payment in the Bitcoin protocol. They are also not very safe. A single typing mistake and you are sending your gazillions to the wrong place. I think some sort of checksum needs to be an integral part of any address scheme, even at the cost of some loss of user friendliness.
legendary
Activity: 1610
Merit: 1183
In the future we will hopefully have confidential transactions as proposed by gmaxwell and then it will not be possible to know what amount of BTC is being moved around, also we will have coinjoin and other privacy stuff. Wouldn't this make your format incompatible with those transactions? or you can still get the information needed?

Also I think in the future we will have some sort of "email" format where you can give to people and when they send you coins it automatically receives them in newly generated addresses for better privacy easily instead of the complex long addresses. I think Bitcoin should have this "email of money" instead of trying to look like an annoying bank account (I hate when I have to share bank account details because the numbers are so long and one mistake and you are fucked)
newbie
Activity: 26
Merit: 0
Opening new levels of discussion to improve bitcoin is a great thing but I kind of like the address format and I'm not that  a tech-savvy type of girl, I just got used to it Smiley

Hi Mandy,

it is great that you feel comfortable with the traditional bitcoin address format. But I bet that you are more tech-savvy than you think! (What are you doing in this forum if you are not?)  Wink

Regards

P.S.: Don't worry, I am not planning on deprecating the Base58Check format (not that I could even if I wanted...). I could call it 'legacy' though if I wanted to be pretentious and mean, but I will not  Wink


Ty for replying
I don't feel tech savvy at all, I'm here to learn about bitcoin as I feel it's getting serious. Regarding the address format I find it easy to proof check addresses when I want to send or receive only by checking the first and last 2 digits of the address, I bet you can't do that with your format since the numbers are variable and not fixed from what I understood Smiley

But that method is far from certain - *many* addresses could have the first and last two characters the same.

Personally, I think the OP is definitely thinking on the right lines. Whether this particular proposal is appropriate matters less than the fact that people are thinking about these issues. I think any rational observer would agree that the usability and user-friendliness of the Bitcoin eco-system in general is woeful and anything that improves it will be welcome.

I couldn't agree more with you, more people thinking about how to improve bitcoin is excellent news Smiley
Just expressed my opinion, Op keep it up Wink
full member
Activity: 124
Merit: 101
In Europe we have IBAN numbers for EUR account and it is not rememberable at all by avg. person same as bitcoin address you just copy paste it and check visually it is the same (to check for clipboard modifying viruses. Replacing long bitcoin address with shorter one which is still non memorable is useless.

If you want to make something like paypal with sending to email you should think about blockchain solution in which you could voluntarily publish email address [email protected] belongs to bitcoin address ABC. Sort of named bitcoin address.
hero member
Activity: 1029
Merit: 712
Opening new levels of discussion to improve bitcoin is a great thing but I kind of like the address format and I'm not that  a tech-savvy type of girl, I just got used to it Smiley

Hi Mandy,

it is great that you feel comfortable with the traditional bitcoin address format. But I bet that you are more tech-savvy than you think! (What are you doing in this forum if you are not?)  Wink

Regards

P.S.: Don't worry, I am not planning on deprecating the Base58Check format (not that I could even if I wanted...). I could call it 'legacy' though if I wanted to be pretentious and mean, but I will not  Wink


Ty for replying
I don't feel tech savvy at all, I'm here to learn about bitcoin as I feel it's getting serious. Regarding the address format I find it easy to proof check addresses when I want to send or receive only by checking the first and last 2 digits of the address, I bet you can't do that with your format since the numbers are variable and not fixed from what I understood Smiley

But that method is far from certain - *many* addresses could have the first and last two characters the same.

Personally, I think the OP is definitely thinking on the right lines. Whether this particular proposal is appropriate matters less than the fact that people are thinking about these issues. I think any rational observer would agree that the usability and user-friendliness of the Bitcoin eco-system in general is woeful and anything that improves it will be welcome.
newbie
Activity: 26
Merit: 0
Opening new levels of discussion to improve bitcoin is a great thing but I kind of like the address format and I'm not that  a tech-savvy type of girl, I just got used to it Smiley

Hi Mandy,

it is great that you feel comfortable with the traditional bitcoin address format. But I bet that you are more tech-savvy than you think! (What are you doing in this forum if you are not?)  Wink

Regards

P.S.: Don't worry, I am not planning on deprecating the Base58Check format (not that I could even if I wanted...). I could call it 'legacy' though if I wanted to be pretentious and mean, but I will not  Wink


Ty for replying
I don't feel tech savvy at all, I'm here to learn about bitcoin as I feel it's getting serious. Regarding the address format I find it easy to proof check addresses when I want to send or receive only by checking the first and last 2 digits of the address, I bet you can't do that with your format since the numbers are variable and not fixed from what I understood Smiley
member
Activity: 79
Merit: 10
Personally, I like the original format, but that's my opinion.
What is the reason why you would like to change the address format for that one?
Is it easier to remember?
JFC
newbie
Activity: 24
Merit: 17
Opening new levels of discussion to improve bitcoin is a great thing but I kind of like the address format and I'm not that  a tech-savvy type of girl, I just got used to it Smiley

Hi Mandy,

it is great that you feel comfortable with the traditional bitcoin address format. But I bet that you are more tech-savvy than you think! (What are you doing in this forum if you are not?)  Wink

Regards

P.S.: Don't worry, I am not planning on deprecating the Base58Check format (not that I could even if I wanted...). I could call it 'legacy' though if I wanted to be pretentious and mean, but I will not  Wink
JFC
newbie
Activity: 24
Merit: 17
Hi Danny,
first let me give you triple thanks for your comments.

First, because it is obvious you have taken time and consideration to read and reply my long post.
Second, because it is clear you understand the issues at stake here and have written a well articulated answer stating your point of view.
Third, because it is also obvious you hate the idea, which I totally respect. And yet you managed to write a long post without any personal attacks.

It doesn't matter IMHO if we deeply disagree on any technical matter as long as we can have a polite exchange of ideas. Most of the people in the community have a vested interest in improving the bitcoin ecosystem. I am deeply sorry when I see people offending other people to advance their cause. The block size debate is a sad example of that. Losing giants like Mike Hearn because of those personal attacks is a tragedy and it is totally unfair.

Having said that, let's go to the battle  Wink...


The way I see it, using this way to transfer (a decent amount of) money has the following benefits:

a) Way less scary I disagree.  I don't find bitcoin addresses scary at all.Ok Danny, you have a "Legendary" badge in this forum. I bet you aren't easily scared by anything bitcoin related. But try the mother of your neighbor
b) Compact (15 decimal digits in the example vs 34 case sensitive alphanumeric positions) See? We can agree on something!  Cheesy
c) Possible to be dictated and typed easily (only needs the numerical keypad) Bitcoin addresses can also be dictated and typed easily.Ok. I'll give you this point if you concede that writing a shorter address made up of decimal digits and dots is EASIER and faster than writing a longer series of case sensitive alphanumeric characters.This is particularly true if you are using a soft keyboard on a cell phone (Ever tried to type a long random Wifi password?).
d) Secure (mostly but not only, because of the checksum) Bitcoin addresses also have a checksum. Never said they haven't. In fact -the way I am presenting this idea- Base58 addresses have a stronger checksum (32 bits vs -let's say- 20 bits). Point for you  Wink but... If we use the amount transferred to the UTXO anchoring the address as an added verification step -could be optional- then I believe we are very close or even have a significant edge.
e) Familiar; very similar to what regular people use to transfer money
f) Doesn't need any external database or service, it just makes use of the blockchain For most, the blockchain IS an external database.  Bitcoin addresses on the otherhand do NOT need an external database. Ok, but if we were to reject any improvement because it needs access to the bitcoin blockchain then our hands would really be tied. It is hard to think about any meaningful addition to the bitcoin ecosystem that does not rely on querying the blockchain. What I meant in this point is that you don't have to rely on any database other than bitcoin's own.

g) The implementation in a wallet is ridiculously easy Lite (SPV) wallets don't store the entire blockchain.  Bitcoin addresses are MUCH easier to implement in a wallet.Maybe, but those are already implemented. I only mean they are easy to implement. SPV clients could use any of the several APIs available (I'd use more than one, to be safer though)
h) Doesn't require major testing, since it doesn't change the bitcoin protocol in any way Anything handling people's wealth should be tested.  Bitcoin addresses are already tested for more than 8 years.Fair enough. But this pointer addresses are ALSO bitcoin addresses. They inherit all of that security because they are really the same. I said any major testing. Of course they need testing, just not the kind of testing you can expect from some big change like SegWit of LN
i) It is completely optional. You can use if you need it and when you need it. Bitcoin addresses are already optional.  Your solution isn't optional if the other party hasn't implemented your solution, or if the other party refuses to accept traditional addresses.I don't see this as an either or situation. If I am requesting you a payment using this pointer addressing scheme, I would send you BOTH the tradicional address in a Base58Check format AND the pointer address. That way, you have an additional way of checking that you are sending funds to the proper destination. So, even if your wallet hasn't implemented the pointer address scheme yet, you can still complete the transaction.
g) You can even use it without a software implementation (Just use the blockchain.info website) I find blockchain.info's website to be VERY unreliable.I don't have the same experience with blockchain.info; I am pretty happy with it myself. However, there are several webs that offer similar services.

It has also the following challenges:

a) Not implemented anywhere. Just an idea (yet)
b) Not valid for every transaction (it doesn't intend to, anyway)
c) It could have some security risks I am not capable of seeing (that's the top reason I posted this, btw)
d) Needs a standard (Anyone would like to help me writing a BIP for it?)
e) Best practice is to NEVER re-use a bitcoin address.  This "solution" is useless for everyone except those that are already choosing to ignore this advice. While I understand and mostly agree with the general concept that reusing addresses is a bad idea, I don't think it is fair to say that it is NEVER a good idea. Both major concerns of address reuse (loss of privacy and smaller security) do not apply in this case, if you use this scheme the way I explained, each address should only be used twice for a payment (three at most if you want to sent a partial transaction first, for added security) , and they can be all spent at once, thus preserving both safety and privacy.

Bitcoin will have to become much more user friendly to achieve the kind of reach we all expect it to.

Just like TCP/IP and UDP and HTTPS and FTP and routers and switches and gateways and firewalls need to be much more user friendly for the internet to achieve the kind of reach we all expect it to?

The solution is to add layers on top of the technology, not to change the underlying technology or expect the average user to understand the underlying technology.  I realize that your suggestion IS a layer on top of the existing technology, it's just a bad layer that discourages best practices. Again, I have to disagree that THIS restricted reuse of addresses is not a best practice. Even if you still disagree with my disagreement  Wink, at least, you'll have to concede that part of the beauty of bitcoin is its permissionless nature. I am not forcing anyone to use this system. I am just proposing an alternative that I believe useful -for certain use cases, not as a general rule-.
As an added bonus, I am going to cite another disadvantage I previously forgot to mention (I'm trying to be honest here, no matter how much I love my own idea...). Using this scheme of payments requires the receiver of the funds to pay an additional fee. I understand this is buying extra security. But again, isn't it nice that you have the freedom to trade easy of use security over cost? The way I see it, if you don't like this addressing scheme, or don't think your transaction deserves an extra fee, by any means, use the Base58 payment.


If we neglect the social aspects of bitcoin, by not improving also its non-technical deficits, it won't succeed as a payment platform.

Then I guess we don't need to change anything, because it is already succeeding as a payment platform.  Given your statement, I guess that must be proof that we've already "improved its non-technical deficits".

I can't possibly agree on that. I don't know your expectations for bitcoin. I expect nothing but total world domination...  Smiley I can't possibly know what percentage of the transaction every block contains is used for a payment. Let's say it is 100%. That would mean about 3 transactions per second with full blocks. According to this Visa handles about 2000 per second. There is much to be done in every front before we can proclaim sucess.

Maybe what we have is enough for it to succeed as a settlement network for an investor to be happy, but I think we can do much better.

And we will.  But not with this proposal.

Who knows? The beauty of Layer 2 proposals is that they are unstoppable it somebody is willing to implement them and some users want to use them. That permissionless property of bitcoin is a great asset of the ecosystem. Let a hundred flowers blossom...

Again, thank you very much for sharing your wisdom and tone!

Final note: Excuse me for ending the post citing Mao. Probably not the best person to quote from a libertarian like myself, but I like to say that you can learn something even from the most obnoxious person you know.



JFC
newbie
Activity: 24
Merit: 17

No, in my opinion that address can create collision address some day and can be manipulated easily

Kray, thanks for your comments.

I am very interested in the two points you raise here.

Could you please:

a) Give an example of a possible collision that would be undetected by the Checksum?
b) (Since you say that it "can be manipulated easily") Give me an example of an easy manipulation?

Thanks again for your time.
hero member
Activity: 658
Merit: 500
From the perspective of the user interface, the bitcoin address format is IMHO one of the big problems bitcoin faces to be widely accepted as a global payment system.

A typical bitcoin address looks like 19xuKwgfphk3mMaN7TEYYYULLou671KxfC. This must be spooky for a regular person.

Other payment systems have a WAY more user friendly address. Paypal, for instance uses your email address as the payment address.
So [email protected] is a valid payment address for Paypal users.

Bank accounts in many countries follow the IBAN format. A sample account id for Switzerland would be CH93 0076 2011 6238 5295 7 (http://www.xe.com/ibancalculator/sample/?ibancountry=switzerland).
A bit more complicated, but also more robust against mistakes than the Paypal format.

After a little bit of googling on the subject, I've been unable to find any good alternatives for expressing a bitcoin address in a more user friendly manner. (I'd welcome any information about similar or better proposals).

So (at the risk of infuriating #youknowwho# for not having done an extensive research of the prior state of the art) I'd like to share an idea for, what I believe, could be a robust and user friendly address format:

Let's present it with an example (taken from this block https://blockexplorer.com/block/0000000000000000004e389113ddc1334eaf18ce5ea944ecc6042e17a6ebb80b):

The address:

   19xuKwgfphk3mMaN7TEYYYULLou671KxfC

could be represented as :

   BTC.443860.3.56318

(Precondition: Your address exists as a single output in a transaction that has ben cemented in the bitcoin blockchain)

The format would be something like this:

...

Where:

Currency code, fixed in the case of Bitcoin.
  Block number of a transaction committed in the blockchain that has the desired address as its single output. In our example, 443860.
Ordinal number (within the block) of the transaction whose only output is the address we want to represent. In our example, 3 (zero_based)
Checksum in CRC-16 format of the bitcoin address we want to represent. In our example, CRC-16(19xuKwgfphk3mMaN7TEYYYULLou671KxfC)=56318


I see these benefits to this format:

a) Compact, with < 25 characters (18 in the example).  Many years from now, the block number will be nearly same length. As for the transaction_number, it is around 4 digits currently, probably below 6 digits for a long time.

b) User friendly, as it is not only compact, but mostly composed of decimal numbers, easy to transmit even by voice and much less intimidating than the current format.

c) Robust, the CRC-16 (just an example, other checksum algorithm could be used instead) provides safety against transcription mistakes.

e) Independent of the address format. If new address formats are introduced, the system is still valid since it is only a pointer to the address itself.

The biggest drawback I can see is the address reuse it may introduce. Using a second level of indirection would help here, by pointing to a transaction with multiple outputs E.g: BTC.443860.3.25.56318. And you can always point to a new address as soon as you have another transaction committed to the chain.

Another problem is that you can not use this address format to receive payments until you have committed an anchor transaction.

Do you see any other major problems, improvement suggestions or any other alternatives? If there are other, better ideas to improve the address format, what is hampering them?

No, in my opinion that address can create collision address some day and can be manipulated easily
legendary
Activity: 3472
Merit: 4801
The way I see it, using this way to transfer (a decent amount of) money has the following benefits:

a) Way less scary I disagree.  I don't find bitcoin addresses scary at all.
b) Compact (15 decimal digits in the example vs 34 case sensitive alphanumeric positions)
c) Possible to be dictated and typed easily (only needs the numerical keypad) Bitcoin addresses can also be dictated and typed easily.
d) Secure (mostly but not only, because of the checksum) Bitcoin addresses also have a checksum.
e) Familiar; very similar to what regular people use to transfer money
f) Doesn't need any external database or service, it just makes use of the blockchain For most, the blockchain IS an external database.  Bitcoin addresses on the otherhand do NOT need an external database.
g) The implementation in a wallet is ridiculously easy Lite (SPV) wallets don't store the entire blockchain.  Bitcoin addresses are MUCH easier to implement in a wallet.
h) Doesn't require major testing, since it doesn't change the bitcoin protocol in any way Anything handling people's wealth should be tested.  Bitcoin addresses are already tested for more than 8 years.
i) It is completely optional. You can use if you need it and when you need it. Bitcoin addresses are already optional.  Your solution isn't optional if the other party hasn't implemented your solution, or if the other party refuses to accept traditional addresses.
g) You can even use it without a software implementation (Just use the blockchain.info website) I find blockchain.info's website to be VERY unreliable.

It has also the following challenges:

a) Not implemented anywhere. Just an idea (yet)
b) Not valid for every transaction (it doesn't intend to, anyway)
c) It could have some security risks I am not capable of seeing (that's the top reason I posted this, btw)
d) Needs a standard (Anyone would like to help me writing a BIP for it?)
e) Best practice is to NEVER re-use a bitcoin address.  This "solution" is useless for everyone except those that are already choosing to ignore this advice.

Bitcoin will have to become much more user friendly to achieve the kind of reach we all expect it to.

Just like TCP/IP and UDP and HTTPS and FTP and routers and switches and gateways and firewalls need to be much more user friendly for the internet to achieve the kind of reach we all expect it to?

The solution is to add layers on top of the technology, not to change the underlying technology or expect the average user to understand the underlying technology.  I realize that your suggestion IS a layer on top of the existing technology, it's just a bad layer that discourages best practices.

If we neglect the social aspects of bitcoin, by not improving also its non-technical deficits, it won't succeed as a payment platform.

Then I guess we don't need to change anything, because it is already succeeding as a payment platform.  Given your statement, I guess that must be proof that we've already "improved its non-technical deficits".

Maybe what we have is enough for it to succeed as a settlement network for an investor to be happy, but I think we can do much better.

And we will.  But not with this proposal.
newbie
Activity: 26
Merit: 0
Opening new levels of discussion to improve bitcoin is a great thing but I kind of like the address format and I'm not that  a tech-savvy type of girl, I just got used to it Smiley
JFC
newbie
Activity: 24
Merit: 17
Not a good idea.I could go into technical stuff but let's save it for another day.The idea has been discussed before,not exactly this but much smaller range of integers like maximum 5 digits.That was a turn down too.In your case,it's equally difficult to remember.Until and unless we associate bitcoin addresses with something that is far easier to remember,example,human brains forget the text but pictorial memories live for longer time in brain.Maybe if we can associate a bitcoin address to a picture and human has to just remember the picture.

Joel,

sorry but I can't see your point. I have never intended this format to be "remembered".
It is however a format that can be typed relatively easily and doesn't (IMHO) scare an user the way a traditional bitcoin address does.

I am not sure this forum is the best place to appreciate this. We are technical people and are comfortable with hashes, Base64 encoding, hex representations...

For a normal person, an address like 19xuKwgfphk3mMaN7TEYYYULLou671KxfC is scary.

Just compare it with BTC.443860.3.0.8803362

The way I see it, using this way to transfer (a decent amount of) money has the following benefits:

a) Way less scary
b) Compact (15 decimal digits in the example vs 34 case sensitive alphanumeric positions)
c) Possible to be dictated and typed easily (only needs the numerical keypad)
d) Secure (mostly but not only, because of the checksum)
e) Familiar; very similar to what regular people use to transfer money
f) Doesn't need any external database or service, it just makes use of the blockchain
g) The implementation in a wallet is ridiculously easy
h) Doesn't require major testing, since it doesn't change the bitcoin protocol in any way
i) It is completely optional. You can use if you need it and when you need it.
g) You can even use it without a software implementation (Just use the blockchain.info website)
h) Could be a good match for LN payments (not absolutely sure of this, however, see my previous post)

It has also the following challenges:

a) Not implemented anywhere. Just an idea (yet)
b) Not valid for every transaction (it doesn't intend to, anyway)
c) It could have some security risks I am not capable of seeing (that's the top reason I posted this, btw)
d) Needs a standard (Anyone would like to help me writing a BIP for it?)

Bitcoin will have to become much more user friendly to achieve the kind of reach we all expect it to.

Bitcoin is clearly a ginormous technical achievement. However, money is not just a technology but also a social construct. Most of the people I know, couldn't care less about the trustless consensus nature of bitcoin, its mathematical properties, ...

When they hear about 'Miners' and 'Exchanges' instead of banks, 'Wallets' and 'Addresses' instead of bank accounts, 'Digital signatures', 'Elliptical curves',... they really get confused and scared. (And there are really many reasons to be scared. I would be terrified if I were the person responsible to make this 194,993 BTC transaction).  I believe we would be fooling ourselves if we think the bitcoin user interface (addresses, units of measure, confusion in the name of the network, the protocol, etc.) doesn't need a radical overhaul.

If we neglect the social aspects of bitcoin, by not improving also its non-technical deficits, it won't succeed as a payment platform. Maybe what we have is enough for it to succeed as a settlement network for an investor to be happy, but I think we can do much better.

Note: For the less technical people reading this -> let me repeat again that I am not proposing any change at all in the bitcoin protocol. This would only be an additional feature for a wallet that would not prevent you from using QRs or whatever method you are more comfortable with. Also, it doesn't need any kind of soft fork, hard fork, or fish fork  Wink
legendary
Activity: 1988
Merit: 1317
Get your game girl
Not a good idea.I could go into technical stuff but let's save it for another day.The idea has been discussed before,not exactly this but much smaller range of integers like maximum 5 digits.That was a turn down too.In your case,it's equally difficult to remember.Until and unless we associate bitcoin addresses with something that is far easier to remember,example,human brains forget the text but pictorial memories live for longer time in brain.Maybe if we can associate a bitcoin address to a picture and human has to just remember the picture.
JFC
newbie
Activity: 24
Merit: 17
There would be duplicates

Could you please elaborate?

In two ways. First, there are bound to be more than one Bitcoin address bound to certain keys. Easy to fix this one by increasing the amount of number slots. Second, by using a smaller pool of characters, you are more likely to generate the same address multiple times. This is why Bitcoin uses base58. If characters that look similar to you are not a problem, you could expand it to base64, increasing the address possibilities significantly. Taking it a step further, which would add 0, O, I, l you could add other characters like !@#$%)^()& to add even more

Hi, thanks for your extended comments.

I think you are missing a key element of this system to express an address.

As a precondition, the intended address must exist already in the blockchain. You can't use this scheme to represent a new address that you have generated but no one has seen yet.

So, you are counting the addressing capacity of this scheme the wrong way.
This address scheme is not a way of shortening any arbitrary bitcoin address by expressing it with only decimal digits.
Any such schemes are obviously destined to fail since you can't express the 2160 addresses with a few decimal characters. (You'd need up to 49 decimal digits, to be more precise; that is 0 .. 1461501637330902918203684832716283019655932542975 ).

But, given the precondition stated above, we don't need to be able to represent every possible address. We only have to be able to express an address that is already recorded in the bitcoin blockchain.

So, this address scheme is simply a secure and human friendly way to represent a pointer to an existing address.
As a result, we only need enough digits to express the pointer, like this (I am showing here the more complex case, where you can have different outputs in a transaction):

Quote
Pointer to the block . Pointer to the transaction . Pointer to the output . Checksum

How many decimal digits do we need to express any bitcoin address already recorded in the blockchain as a transaction output then?


Let's count them :

Pointer to the block -> 6 digits.

We are around block 444.000 nowadays, after 9 years of constantly producing blocks. At this speed (1 block every 10 minutes) we won't need more than 6 digits for ten more years.

Pointer to the transaction -> 4 digits (máx) Depends on the block size. Nowaways 4 digits. I don't think we'll need more than 5 digits for a long time.

Pointer to the output (within the transaction) -> 4 digit (máx) .

According to Gavin Andresen transactions larger than 100K won't be relayed. That means fewer than 2000 outputs per transaction.

Checksum -> 7 digits (max)  (I am counting on using the last 5 hex digits of a SHA256 hash to have a risk of an undetected error smaller than one in a million).

So, you need 6 + 4 + 4 + 7 = 21 decimal digits in a worst case scenario nowadays (not counting decimal separators and the BTC prefix). Most of the time, you'll need around 6 + 3 + 2 + 5 = 16 or 17 decimal digits.


jr. member
Activity: 36
Merit: 2
There would be duplicates

Could you please elaborate?

In two ways. First, there are bound to be more than one Bitcoin address bound to certain keys. Easy to fix this one by increasing the amount of number slots. Second, by using a smaller pool of characters, you are more likely to generate the same address multiple times. This is why Bitcoin uses base58. If characters that look similar to you are not a problem, you could expand it to base64, increasing the address possibilities significantly. Taking it a step further, which would add 0, O, I, l you could add other characters like !@#$%)^()& to add even more
Pages:
Jump to: