Title: public key assignment Post by: chrisoffice on March 02, 2018, 10:58:45 PM just wondering,
because bitcoin is a de-centralized system, who is responsible for assigning the public key (i.e., the bitcoin address)? if any individual node is able to assign the public key, won't there be a potential collision? Title: Re: public key assignment Post by: gantez on March 02, 2018, 11:16:02 PM Your question is just like when you put a 🔑 in the opening of the door, who opens the door huh? Does the door open by itself? Yes, because the key has a code that is sensored to the door.
Therefore to your question, it has simply been codified and programmed. Title: Re: public key assignment Post by: Meysa_richa on March 02, 2018, 11:28:29 PM It is true that bitcoin is a centralized system in Blockchain technology, and the bitcoin wallet is created by itself by bitcoin, and nothing will be knocked down or the same.
Title: Re: public key assignment Post by: Suharti12 on March 02, 2018, 11:42:03 PM Here nobody is responsible because bitcoin is an unattended system, it runs by itself in a decentralized way, that's what makes the greatness of bitcoin differentiate it from the bank.
Title: Re: public key assignment Post by: DooMAD on March 02, 2018, 11:44:00 PM Addresses are generated through a combination of ECDSA (https://en.bitcoin.it/wiki/ECDSA), SHA-256 (https://en.bitcoin.it/wiki/SHA-256) and RIPEMD-160 (https://en.bitcoin.it/wiki/RIPEMD-160). It's all just software and encryption.
This post (https://bitcointalk.org/index.php?topic=254559.msg2709580#msg2709580) from 2013 (and every other post in that thread by the same author) tells you everything you need to know about the possibility of address collisions. 2160 is a very large number. Title: Re: public key assignment Post by: bitperson on March 02, 2018, 11:47:45 PM who is responsible for assigning the public key (i.e., the bitcoin address)? Each node creates its own keys. This is important for security; nobody but you must know your private key. A collision is still very unlikely, as the key length allows for a huge number of combinations.if any individual node is able to assign the public key, won't there be a potential collision? Title: Re: public key assignment Post by: chrisoffice on March 02, 2018, 11:57:18 PM So if any individual node can create a public and private key pair, that particular node should know my private key, right? And there is no way to change the private key.
If a bank gave its customer the PIN for debit card and told he/her that he/she could not change it, everyone would fear for the security of the money in that account, right? who is responsible for assigning the public key (i.e., the bitcoin address)? Each node creates its own keys. This is important for security; nobody but you must know your private key. A collision is still very unlikely, as the key length allows for a huge number of combinations.if any individual node is able to assign the public key, won't there be a potential collision? Title: Re: public key assignment Post by: Kokondao on March 03, 2018, 12:02:42 AM Bitcoin is a decentralized Blockchain technology centered in Blockchain, and I do not think anyone is personally in control because it runs automatically.
Title: Re: public key assignment Post by: bitperson on March 03, 2018, 12:14:54 AM So if any individual node can create a public and private key pair, that particular node should know my private key, right? And there is no way to change the private key. I’m not sure what you’re getting at here. Any node can, and indeed does, create their own key pairs, but they must always keep their private keys secret. The number of available key combinations is such that for all practical purposes, private keys are unguessable. So you’re the only one who should know your private key. If a bank gave its customer the PIN for debit card and told he/her that he/she could not change it, everyone would fear for the security of the money in that account, right? As for your card example: FWIW, the credit and debit cards I’ve used have usually come with a preset PIN that I have not had any means to change. But payment cards are different from bitcoins in that you also need the actual card; you cannot make purchases from my account by knowing just my PIN. Additionally, if someone at my bank would abuse their knowledge of my PIN code, they would stand a good chance of being caught, and the transactions would probably be reversed in any case if I could prove the charges to be fraudulent. Bitcoin transactions, however, are anonymous and non-repudiable. Anyone who knows your private key can instantly transfer your bitcoins to their address, and investigators can’t easily ‘follow the money’. This means that if your private key is compromised, you’re likely to lose all balances associated with that key, and you will have very slim hopes of ever catching the perpetrator. There is also no central authority that would be able to nullify fraudulent bitcoin transactions. Title: Re: public key assignment Post by: chrisoffice on March 03, 2018, 01:01:35 AM If everyone runs his/her own node and generate private and public key pair for him/her self, then yes, no others know his/her private key.
But for people who generate the public/private key pair online through a wallet or some kind of key generating services, i.e., without running his/her own node. Doesn't that mean whoever generated the key for him/her, the generator has the private key as well? That's why I used the PIN code for the debt card as an example. So if any individual node can create a public and private key pair, that particular node should know my private key, right? And there is no way to change the private key. I’m not sure what you’re getting at here. Any node can, and indeed does, create their own key pairs, but they must always keep their private keys secret. The number of available key combinations is such that for all practical purposes, private keys are unguessable. So you’re the only one who should know your private key. If a bank gave its customer the PIN for debit card and told he/her that he/she could not change it, everyone would fear for the security of the money in that account, right? As for your card example: FWIW, the credit and debit cards I’ve used have usually come with a preset PIN that I have not had any means to change. But payment cards are different from bitcoins in that you also need the actual card; you cannot make purchases from my account by knowing just my PIN. Additionally, if someone at my bank would abuse their knowledge of my PIN code, they would stand a good chance of being caught, and the transactions would probably be reversed in any case if I could prove the charges to be fraudulent. Bitcoin transactions, however, are anonymous and non-repudiable. Anyone who knows your private key can instantly transfer your bitcoins to their address, and investigators can’t easily ‘follow the money’. This means that if your private key is compromised, you’re likely to lose all balances associated with that key, and you will have very slim hopes of ever catching the perpetrator. There is also no central authority that would be able to nullify fraudulent bitcoin transactions. Title: Re: public key assignment Post by: xhomerx10 on March 03, 2018, 02:07:20 AM Your online wallet better use client side encryption so the server will never see your private keys. If it doesn't, you haven't done your homework.
If everyone runs his/her own node and generate private and public key pair for him/her self, then yes, no others know his/her private key. But for people who generate the public/private key pair online through a wallet or some kind of key generating services, i.e., without running his/her own node. Doesn't that mean whoever generated the key for him/her, the generator has the private key as well? That's why I used the PIN code for the debt card as an example. So if any individual node can create a public and private key pair, that particular node should know my private key, right? And there is no way to change the private key. I’m not sure what you’re getting at here. Any node can, and indeed does, create their own key pairs, but they must always keep their private keys secret. The number of available key combinations is such that for all practical purposes, private keys are unguessable. So you’re the only one who should know your private key. If a bank gave its customer the PIN for debit card and told he/her that he/she could not change it, everyone would fear for the security of the money in that account, right? As for your card example: FWIW, the credit and debit cards I’ve used have usually come with a preset PIN that I have not had any means to change. But payment cards are different from bitcoins in that you also need the actual card; you cannot make purchases from my account by knowing just my PIN. Additionally, if someone at my bank would abuse their knowledge of my PIN code, they would stand a good chance of being caught, and the transactions would probably be reversed in any case if I could prove the charges to be fraudulent. Bitcoin transactions, however, are anonymous and non-repudiable. Anyone who knows your private key can instantly transfer your bitcoins to their address, and investigators can’t easily ‘follow the money’. This means that if your private key is compromised, you’re likely to lose all balances associated with that key, and you will have very slim hopes of ever catching the perpetrator. There is also no central authority that would be able to nullify fraudulent bitcoin transactions. Title: Re: public key assignment Post by: chrisoffice on March 03, 2018, 02:22:12 AM so if one generates the public/private key using an online service, doesn't that mean his/her identity is not anonymous anymore, at least to the law enforcement, because the online service must have his/her IP address?
even if one generate the key pair by running a node him/herself, the IP address should be known to the other nodes on the network, right? in this regard, how could someone use bitcoin as a mean for illicit activities? Your online wallet better use client side encryption so the server will never see your private keys. If it doesn't, you haven't done your homework. Title: Re: public key assignment Post by: xhomerx10 on March 03, 2018, 04:11:10 PM so if one generates the public/private key using an online service, doesn't that mean his/her identity is not anonymous anymore, at least to the law enforcement, because the online service must have his/her IP address? even if one generate the key pair by running a node him/herself, the IP address should be known to the other nodes on the network, right? in this regard, how could someone use bitcoin as a mean for illicit activities? Your online wallet better use client side encryption so the server will never see your private keys. If it doesn't, you haven't done your homework. Roger Ver, a “Bitcoin Angel Investor & Evangelist”, once released the name and address of a BitcoinStore.com customer on a public forum, and then used his administrative privileges on Blockchain.info to lookup this person’s IP address, phone number, and other personal information using the customer’s Bitcoin address — all of which ended up being posted on the forum as well. Why? Because the BitcoinStore accidentally refunded an extra $50 worth of bitcoins to the customer, and the customer didn’t return the extra coins. Roger owns BitcoinStore.com. Presumably, he felt posting the customer’s details would help identify the customer to other merchants… or maybe it was to just settle a score. from: https://99bitcoins.com/know-more-top-seven-ways-your-identity-can-be-linked-to-your-bitcoin-address/ Title: Re: public key assignment Post by: Velkro on March 03, 2018, 05:56:09 PM just wondering, very good question, quite basic but importantbecause bitcoin is a de-centralized system, who is responsible for assigning the public key (i.e., the bitcoin address)? if any individual node is able to assign the public key, won't there be a potential collision? there are more possible addresses than all grains of sand on our entire planet possibility of collision is astronomically low you can lower it two times more even, not keeping everything on one address |