Pages:
Author

Topic: Isn't wallet a bad name for your bitcoin keys? (Read 2406 times)

legendary
Activity: 1050
Merit: 1000
You are WRONG!
December 31, 2011, 06:12:30 AM
#35
sr. member
Activity: 322
Merit: 251
FirstBits: 168Bc
suggestion:
fork the client, and rename wallet to keyring.

please fork the client, if you want it to change!

i will keep my "wallet.dat" client.

Maybe you'll keep your wallet.dat, but after asking for it twice, I must indulge:

Code:
diff --git a/bitcoin-qt.pro b/bitcoin-qt.pro
index b690fae..fb267de 100644
--- a/bitcoin-qt.pro
+++ b/bitcoin-qt.pro
@@ -131,3 +131,3 @@ HEADERS += src/qt/bitcoingui.h \
     src/qt/bitcoinamountfield.h \
-    src/wallet.h \
+    src/keyring.h \
     src/keystore.h \
@@ -135,3 +135,3 @@ HEADERS += src/qt/bitcoingui.h \
     src/qt/transactionview.h \
-    src/qt/walletmodel.h \
+    src/qt/keyringmodel.h \
     src/bitcoinrpc.h \
@@ -178,3 +178,3 @@ SOURCES += src/qt/bitcoin.cpp src/qt/bitcoingui.cpp \
     src/qt/bitcoinamountfield.cpp \
-    src/wallet.cpp \
+    src/keyring.cpp \
     src/keystore.cpp \
@@ -182,3 +182,3 @@ SOURCES += src/qt/bitcoin.cpp src/qt/bitcoingui.cpp \
     src/qt/transactionview.cpp \
-    src/qt/walletmodel.cpp \
+    src/qt/keyringmodel.cpp \
     src/bitcoinrpc.cpp \
diff --git a/contrib/bitrpc/bitrpc.py b/contrib/bitrpc/bitrpc.py
index b02b299..ae109f3 100644
--- a/contrib/bitrpc/bitrpc.py
+++ b/contrib/bitrpc/bitrpc.py
@@ -17,6 +17,6 @@ cmd = sys.argv[1].lower()
 
-if cmd == "backupwallet":
+if cmd == "backupkeyring":
  try:
  path = raw_input("Enter destination path/filename: ")
- print access.backupwallet(path)
+ print access.backupkeyring(path)
  except:
@@ -302,6 +302,6 @@ elif cmd == "validateaddress":
 
-elif cmd == "walletpassphrase":
+elif cmd == "keyringpassphrase":
  try:
- pwd = raw_input("Enter wallet passphrase: ")
- access.walletpassphrase(pwd, 60)
+ pwd = raw_input("Enter keyring passphrase: ")
+ access.keyringpassphrase(pwd, 60)
  print "\n---Wallet unlocked---\n"
@@ -310,7 +310,7 @@ elif cmd == "walletpassphrase":
 
-elif cmd == "walletpassphrasechange":
+elif cmd == "keyringpassphrasechange":
  try:
- pwd = raw_input("Enter old wallet passphrase: ")
- pwd2 = raw_input("Enter new wallet passphrase: ")
- access.walletpassphrasechange(pwd, pwd2)
+ pwd = raw_input("Enter old keyring passphrase: ")
+ pwd2 = raw_input("Enter new keyring passphrase: ")
+ access.keyringpassphrasechange(pwd, pwd2)
  print
@@ -323,2 +323,2 @@ elif cmd == "walletpassphrasechange":
 else:
- print "Command not found or not supported"
\ No newline at end of file
+ print "Command not found or not supported"
diff --git a/contrib/debian/examples/bitcoin.conf b/contrib/debian/examples/bitcoin.conf
index e56c43c..8762a05 100644
--- a/contrib/debian/examples/bitcoin.conf
+++ b/contrib/debian/examples/bitcoin.conf
@@ -68,3 +68,3 @@ gen=0
 
-# Pre-generate this many public/private key pairs, so wallet backups will be valid for
+# Pre-generate this many public/private key pairs, so keyring backups will be valid for
 # both prior transactions and several dozen future transactions.
diff --git a/contrib/debian/manpages/bitcoin.conf.5 b/contrib/debian/manpages/bitcoin.conf.5
index 1243253..5802f8b 100644
--- a/contrib/debian/manpages/bitcoin.conf.5
+++ b/contrib/debian/manpages/bitcoin.conf.5
@@ -72,3 +72,3 @@ Enable or disable use SSE instructions to try to generate bitcoins faster.
 \fBkeypool=\fR\fI'100'\fR
-Pre-generate this many public/private key pairs, so wallet backups will be valid for both prior transactions and several dozen future transactions.
+Pre-generate this many public/private key pairs, so keyring backups will be valid for both prior transactions and several dozen future transactions.
 .TP
diff --git a/contrib/debian/manpages/bitcoind.1 b/contrib/debian/manpages/bitcoind.1
index 0179406..4f99899 100644
--- a/contrib/debian/manpages/bitcoind.1
+++ b/contrib/debian/manpages/bitcoind.1
@@ -83,4 +83,4 @@ This help message
 .TP
-\fBbackupwallet 'destination'\fR
-Safely copies *wallet.dat* to 'destination', which can be a directory or a path with filename.
+\fBbackupkeyring 'destination'\fR
+Safely copies *keyring.dat* to 'destination', which can be a directory or a path with filename.
 .TP
@@ -197,3 +197,3 @@ Checks that 'bitcoinaddress' looks like a proper bitcoin address. Returns an obj
     "isvalid" : true or false.
-    "ismine"  : true if the address is in the server's wallet.
+    "ismine"  : true if the address is in the server's keyring.
     "address" : bitcoinaddress.
diff --git a/contrib/wallettools/walletchangepass.py b/contrib/wallettools/walletchangepass.py
index 30f3f5b..3f2867a 100644
--- a/contrib/wallettools/walletchangepass.py
+++ b/contrib/wallettools/walletchangepass.py
@@ -2,4 +2,4 @@ from jsonrpc import ServiceProxy
 access = ServiceProxy("http://127.0.0.1:8332")
-pwd = raw_input("Enter old wallet passphrase: ")
-pwd2 = raw_input("Enter new wallet passphrase: ")
-access.walletpassphrasechange(pwd, pwd2)
\ No newline at end of file
+pwd = raw_input("Enter old keyring passphrase: ")
+pwd2 = raw_input("Enter new keyring passphrase: ")
+access.keyringpassphrasechange(pwd, pwd2)
diff --git a/contrib/wallettools/walletunlock.py b/contrib/wallettools/walletunlock.py
index f847c6f..7bcec90 100644
--- a/contrib/wallettools/walletunlock.py
+++ b/contrib/wallettools/walletunlock.py
@@ -2,3 +2,3 @@ from jsonrpc import ServiceProxy
 access = ServiceProxy("http://127.0.0.1:8332")
-pwd = raw_input("Enter wallet passphrase: ")
-access.walletpassphrase(pwd, 60)
\ No newline at end of file
+pwd = raw_input("Enter keyring passphrase: ")
+access.keyringpassphrase(pwd, 60)
diff --git a/doc/build-unix.txt b/doc/build-unix.txt
index 5389339..47e6e45 100644
--- a/doc/build-unix.txt
+++ b/doc/build-unix.txt
@@ -28,3 +28,3 @@ Dependencies
  libssl      SSL Support       Secure communications
- libdb4.8    Berkeley DB       Blockchain & wallet storage
+ libdb4.8    Berkeley DB       Blockchain & keyring storage
  libboost    Boost             C++ Library
diff --git a/doc/coding.txt b/doc/coding.txt
index b3c812a..c93479c 100644
--- a/doc/coding.txt
+++ b/doc/coding.txt
@@ -49,3 +49,3 @@ CRITICAL_BLOCK/TRY_CRITICAL_BLOCK macros to protect data structures.
 Deadlocks due to inconsistent lock ordering (thread 1 locks cs_main
-and then cs_wallet, while thread 2 locks them in the opposite order:
+and then cs_keyring, while thread 2 locks them in the opposite order:
 result, deadlock as each waits for the other to release its lock) are
@@ -79,3 +79,3 @@ ThreadTopUpKeyPool : replenishes the keystore's keypool.
 
-ThreadCleanWalletPassphrase : re-locks an encrypted wallet after user
+ThreadCleanWalletPassphrase : re-locks an encrypted keyring after user
 has unlocked it for a period of time.
@@ -86,3 +86,3 @@ ThreadDelayedRepaint : repaint the gui
 
-ThreadFlushWalletDB : Close the wallet.dat file if it hasn't been used
+ThreadFlushWalletDB : Close the keyring.dat file if it hasn't been used
 in 500ms.
diff --git a/doc/readme-qt.rst b/doc/readme-qt.rst
index 0901773..ed6d2e3 100644
--- a/doc/readme-qt.rst
+++ b/doc/readme-qt.rst
@@ -6,3 +6,3 @@ Features
 
-- All functionality of the Wx GUI, including wallet encryption
+- All functionality of the Wx GUI, including keyring encryption


... and a whole lot more

sr. member
Activity: 322
Merit: 251
FirstBits: 168Bc
Exactly! It's either arrogant or pathetic for any of us to refer to the 'idiot masses' as if to exclude ourselves by disassociation. Bitcoin has a serious acceptance problem. Just about anyone on this forum has had to learn about keys with or without the help of common terminology.

If bitcoin is to become popular, then blockchain, blocks, transactions, addresses, and keys must enter the lexicon. Just as email, browser, web, app or thousands of other terms we now take for granted.

It is true that many people do not differentiate the browser from the internet, but that should not mean that we intensionally merge or confuse the two, otherwise even fewer would understand, and the last mile might never have been traveled (the chasm might never get crossed).

In order for bitcoin to be understood, it requires a powerful metaphor. Every mass consumption computer application has a metaphor of which bitcoin currently lacks. The metaphor might evolve, but resistance to the notion impedes progress. From the desktop metaphor, the browser/navigator/explorer metaphor, to the email postal metaphor, chat, bulletin board, encyclopedia, slideshow, ...
newbie
Activity: 24
Merit: 0
I think there is a middle group that is being missed here.

Between the average masses and crypto-geeks there exists the somewhat-technical which number much greater than crypto-geeks, but not as many as the average masses.  This middle group is the people who fix computer problems for their family and friends but don't work on cryptography or program in their spare time. They are the bridge between fringe experiment and total acceptance.  I think the bitcoin project has done a great job with the long term vision by making the client super easy to use and very simple.  What is lacking is accommodation for the middle somewhat technical group that doesn't want to black-box it like the masses, but also doesn't want to read pages of documentation in order to figure out what is going on.  

I think I am closer to that middle group than the crypto geek group and I had a tough time trying to get a basic understanding of how the wallet system worked.  Persistence and enthusiasm helped me through that, but not everyone will want to put in the extra time.

donator
Activity: 1218
Merit: 1079
Gerald Davis
If geeks don't care and the idiot masses don't care, then for the 0.1% who do care and might want to understand, the keyring term is superior.

Yet I disagree with your numbers. The crypto-geeks should prefer the correct terminology, and the idiot masses are not so great.

Except to anyone other than a crypto-nerd the term keyring has no meaning.  Money goes in wallets.  Wallets are something that needs to be kept secure.  The analogy isn't perfect but to the casual user it makes sense.  Instinctively if you tell someone this is their digital wallet they understand what it is (maybe not how it works but they don't care how it works).  If you say strongcoin is an ewallet instantly they know at a high level what strongcoin is.  An online wallet.

Still there is nothing preventing people from making clients which talk about keyrings but I don't think it is going to make anything more clear to Joe Sixpack user.  If you really feel the most important change to Bitcoin is calling the wallet a keyring then make a client and have it talk about importing, exporting, backing up the keyring.

sr. member
Activity: 322
Merit: 251
FirstBits: 168Bc
If geeks don't care and the idiot masses don't care, then for the 0.1% who do care and might want to understand, the keyring term is superior.

Yet I disagree with your numbers. The crypto-geeks should prefer the correct terminology, and the idiot masses are not so great.
donator
Activity: 1218
Merit: 1079
Gerald Davis
1) The cashier rings up the goods.
2) They give you a total.
3) You enter password and transfer bitcoins to or from your wallet
4) repeat (1) 100+ times
5) computer infected with a virus or harddrive fails (guaranteed)
6) You lose all of your money because you didn't understand how a wallet works or why it should be backed up incrementally
Done.


Are all the conservative nay-sayer against 'keys' because you think 'wallet' is superior, or you believe the semantics don't matter because your target audience is silk road?

Your scenario has nothing to do w/ wallet vs keyring.  99.9% of users (if Bitcoin ever goes mainstream) will have no clue how it works.  Much like they have no clue about how internet works, how viruses work, how online games work, how xbox works, how credit cards work, etc.

It just works.  If you tell them to back it up they might.  The name key vs wallet will do nothing.  It isn't like w/ keyring they will understand the protocol completely and be able to read Satoshi paper and explain to you detailed why they need backups and how the keypool works, etc.  If you tell them to backup the wallet regularly they might.  If you tell them to backup the keyring regularly the might.  If you scare them by telling them they could lose coins a few more might backup.  If you build a client which automatically sends a backup to the cloud every 50 transactions then even fewer will lose coins.

THEY DONT CARE.  MAINSTREAM USERS WILL NEVER CARE.  The name isn't going to change that.  Building idiot proof software is the answer.






Personally I think all wallets should be determenistic.  Still they won't "understand" what that means either even though it is safer for the casual user.  However when they can recreate their wallet they will be happy.  Even after they recreate the wallet without losing anything they STILL won't know why they will just be happy that "recreate password" works.  If you build a print functionality into the client and scare the user enough they might print it out, and store it w/ other important documents.  Still they won't care or understand how/why an entire wallet can be reconstructed from just the passphrase.  They will just be happy because you made the software idiot proof and they didn't lose anything.
sr. member
Activity: 322
Merit: 251
FirstBits: 168Bc
1) The cashier rings up the goods.
2) They give you a total.
3) You enter password and transfer bitcoins to or from your wallet
4) repeat (1) 100+ times
5) computer infected with a virus or harddrive fails (guaranteed)
6) You lose all of your money because you didn't understand how a wallet works or why it should be backed up incrementally
Done.


Are all the conservative nay-sayer against 'keys' because you think 'wallet' is superior, or you believe the semantics don't matter because your target audience is silk road?
sr. member
Activity: 475
Merit: 265
Ooh La La, C'est Zoom!
I think geeks and enthusiasts tend to over think how much average person cares about anything.

Bingo! We have a winner.

J. Average User: Does it work?

J. Random Geek: Yes, blah, blah, blah, some really technically detailed stuff, blah, blah, blah

J. Average User: Umm, OK. Does it work?

J. Random Geek: Yes, blah, blah, blah, some more really technically detailed stuff, blah, blah, blah

J. Average User: Umm, sure. Does it work?

J. Random Geek: Yes, blah, blah, blah, even more really technically detailed stuff, blah, blah, blah

J. Average User: Shakes head and walks away.

J. Random Geek: fscking noobs, they are so stoopid.


- Zed
donator
Activity: 1218
Merit: 1079
Gerald Davis
Find me a single individual who is interested in bitcoin but not interested in how it works. I will find you dozens of individuals who do not use bitcoin and are afraid of bitcoin because they do not understand it.

Just about anyone using SilkRoad.  They want to know how to buy some of these "coins" and how to make a payment and that is about it.

WHEN the masses adopt Bitcoin they will have more in common w/ consumers of the Silk Road than

Most people have no clue how credit cards work.  they don't even know what is encoded on the card.  Merchants have a better understanding and processors an even higher understand.

For most users this is how a credit card "technically works":
1) The cashier rings up the goods.
2) They give you a total.
3) You swipe the card
4 Optional) You may need to sign a piece of paper
5) You get a bill at the end of the month.
Done.

That is how it works.  That is all they care about.   Bitcoin will be no different.

A wallet is a good enough metaphor for most users.  They will have no interest or care in figuring out "how" bitcoin works.  They simply know they use their wallet to pay people.

I think geeks and enthusiasts tend to over think how much average person cares about anything.  The average person has no idea how the internet works.  Hell most people don't even use the term "browser".  The software is called "the internet".  That gets fun trying to explain to someone how chrome is an alternate browser because the word browser isn't in their vocabulary.
sr. member
Activity: 322
Merit: 251
FirstBits: 168Bc
For the masses it works just fine.

Are you kidding? The masses are not using bitcoin. The masses do not understand bitcoin. Read the threads. People are CONFUSED by the terminology.

Find me a single individual who is interested in bitcoin but not interested in how it works. I will find you dozens of individuals who do not use bitcoin and are afraid of bitcoin because they do not understand it.



but made completely irrelevant if the masses don't accept your view.

Who are these masses you are talking about? I suspect you are talking out of your ass. The existing geeky user base does understand keys and do not care what the name of the wallet is - but most of them were at some point confused. I am supporting the OP suggestion not to make it easier for geeks, who would accept banana.dat, but for the potential masses who are not yet using bitcoin, or those who've just begun but are currently confused.



Building a bridge over a chasm one step at a time is easier, and many times better, than trying to leap the chasm in a single jump.

'Wallet' brings the user to the chasm (money), but it does not help them cross the bridge (understanding). In order to cross the bridge, you must throw out the 'wallet' metaphor and introduce new incompatible metaphors, namely keys. There is NO WAY to understand bitcoin at even a superficial level without 'keys'. Wallet adds nothing to the education except unnecessary baggage. A keyring brings the user to the chasm and can be used to continue over the bridge. In fact, the keyring is not just a metaphor, it is correct and leads to NO misunderstanding for neither the newbie nor geek.

Would e-mail have been adopted and understood as easily if it were called electronic-telephone? Or is the postal metaphor superior? They could have called it digital-bottle-in-the-sea-distribution. Mail was most obvious and the metaphor extended understanding, we deliver mail to a mailbox to be read passively. Digital-Telephone would have immediately signaled 'communication' (just as wallet signals money) but both would lead to misunderstandings.

The notion that one should fork the project over terminology is asinine. Bitcoin is beta software with a tiny user base. Now is a good opportunity to correct the mistakes and clarify the terminology before bitcoin reaches the masses, so that bitcoin can better and more easily reach the masses.
legendary
Activity: 1050
Merit: 1000
You are WRONG!
please fork the client, if you want it to change!

i will keep my "wallet.dat" client.
newbie
Activity: 24
Merit: 0
When this thread first started, I took the "small nuissance" position on the wallet name, but after reading the responses and thinking about it, I am leaning more towards "disservice to bitcoin."  By trying to make the name too simple and mirror something it isn't (tangible goods), the opportunity to help people understand bitcoin on a basic level is lost.  The "wallet" name lends to the idea that it actually contains the bitcoins, and hides the fact that a users bitcoins are actually OUT THERE on the internet.  I'd say net positive for the project with a name like "keys.dat."The masses have firm grasp on passwords and keys, so they should be able to understand.  


Example (speaking to the masses):

-your bitcoins are stored on the internet in locked form.
-your keys.dat file contains the keys for those bitcoins.
-keys.dat file changes over time as you buy and sell bitcoins, so backup regularly
-if you lose your keys.dat file, no one can ever unlock your bitcoins and they are lost forever.


The large majority of the masses should have no trouble understanding that, and worst case scenario is that grandma just remembers that she needs her "keys" to get her bitcoins.

sr. member
Activity: 475
Merit: 265
Ooh La La, C'est Zoom!
How does the address metaphor fit in with a wallet?

Oh, that's right. It doesn't.

Yes, you are right, it doesn't. For us.

For the masses it works just fine.

Why? Because we understand the technical details of the underlying mechanisms that make the process work. We care about those details. The masses could care less about how it works. They just care that it works.

You can be technically correct, but made completely irrelevant if the masses don't accept your view. The world is littered with technically correct, but irrelevant "new" things or views. The reason is that someone else came along and took the technically correct thing, gave it new name that made the masses feel comfortable with the new technology so they would start using it, and lo and behold, the masses followed along. Comfort level is huge with the masses. Early adopters, and we are that for sure, don't need as much "comfort" because we like new and technically interesting things and are willing to take a chance because we have a deeper and better understanding of technology. In short, we are comfortable with technology. I also would bet that your comfort threshold is lower than mine.

It has been ever thus in the technology world. Occasionally the technically correct thing sticks, but more often than not it doesn't. But it can evolve over time to become more accurate.

Think about these:
  • Memory Stick
  • DIMM
  • SODIMM
  • SIMM
  • Flash Drive
  • USB Key
  • Thumbdrive
  • Flash Card

Which ones are correct? Which ones are in common use today? Which ones are in common use in the geek world? How about in the non-geek world?

So, yes, wallet is perhaps a less than perfect reference, but it is something that most people of the world can understand and feel comfortable using. Building a bridge over a chasm one step at a time is easier, and many times better, than trying to leap the chasm in a single jump.

But, all that said, don't give up evangelizing for the "correct" thing. Every community needs people like you to keep the masses aware, so they don't forget how something works. Slowly enough of the masses will understand enough. Eventually, over time, perhaps decades, the correct thing will emerge as the masses become comfortable with the terminology and what it represents.

There was a time in the US when "two bits" was equal to $0.25 (25 cents). Today if you told someone that something cost "two bits" they would look at you funny.

http://en.wikipedia.org/wiki/Bit_(money)

We've come a long way in the physical currency world, and now we've just started down another path with a new virtual currency. The world will not change overnight, but it will change. Will Bitcoin, or any of the other crypto-currencies for that matter, really catch on sufficiently to displace physical currencies? Who knows, but it will be interesting to watch, and know that we were involved relatively close to the beginning.

- Zed
legendary
Activity: 1050
Merit: 1000
You are WRONG!
Because unlike a bike shed, the term 'wallet' is confusing and leads to unfounded assumptions and more importantly, does not lead to important critical assumptions. A metaphor should not just lead to an immediate association (wallet=money) but imply features, extending the users understanding. The wallet metaphor is a dead end. Yes, it's money, but the entire metaphor stops and noting further can be correctly implied.

Copy wallet = two unique unrelated money vessels
Copy keys = two similar devices granting access to the same vessels

Delete wallet = money falls on the floor
Delete keys = access to money lost

Wallet addresses = makes no sense
Key addresses = similar to postal address, or safe deposit box number

Import keys to wallet = makes no sense
Import keys to keyring = perfectly logical

Backup wallet after receiving change = makes no sense
Backup keyring after generating new keys = perfectly logical

Explaining how bitcoin works with wallet = metaphor is unhelpful, need to describe keys
Explaining how bitcoin works with keyring = useful metaphor that can extend user understanding

suggestion:
fork the client, and rename wallet to keyring.
i will keep my bitcoin wallet. Tongue
sr. member
Activity: 322
Merit: 251
FirstBits: 168Bc
Because unlike a bike shed, the term 'wallet' is confusing and leads to unfounded assumptions and more importantly, does not lead to important critical assumptions. A metaphor should not just lead to an immediate association (wallet=money) but imply features, extending the users understanding. The wallet metaphor is a dead end. Yes, it's money, but the entire metaphor stops and nothing further can be correctly implied.

Copy wallet = two unique unrelated money vessels
Copy keys = two similar devices granting access to the same vessels

Delete wallet = money falls on the floor
Delete keys = access to money lost

Wallet addresses = makes no sense
Key addresses = similar to postal address, or safe deposit box number

Import keys to wallet = makes no sense
Import keys to keyring = perfectly logical

Backup wallet after receiving change = makes no sense
Backup keyring after generating new keys = perfectly logical

Explaining how bitcoin works with wallet = metaphor is unhelpful, need to describe keys
Explaining how bitcoin works with keyring = useful metaphor that can extend user understanding
legendary
Activity: 1050
Merit: 1000
You are WRONG!
How does the address metaphor fit in with a wallet?

Oh, that's right. It doesn't.






keys = ... my post box
why can't we just not keep is as it is?

bikeshed.org
sr. member
Activity: 322
Merit: 251
FirstBits: 168Bc
How does the address metaphor fit in with a wallet?

Oh, that's right. It doesn't.






keys = ... my post box
hero member
Activity: 812
Merit: 1000
keys = access my house, my car, my post box, my office, my gym locker
wallet = access my money
sr. member
Activity: 322
Merit: 251
FirstBits: 168Bc
A 'wallet' is entirely inaccurate and leads to confusion and money loss. Why is a wallet metaphor which I carry in my right pocket easier to understand than a keyring which I carry in my left pocket? The fact that a keyring more closely resembles the model means that it is the superior metaphor.



The reason for using existing terminology for new concepts or paradigms is to ease the transition for the masses who are not on the bleeding edge, nor do they care to be.

Both wallet and keyring are already in the common English lexicon. A keyring is also commonly used within the digital lexicon while wallet is not. A keyring is exactly the correct terminology as a real world metaphor and an established digital term.
Pages:
Jump to: