BIP44: What's the use of internal addresses?












9















I've read other questions (and their answers) on this but I still don't see the use for internal addresses. I get that you're supposed to send the change of a transaction there but I don't see how this benefits you, all it does is move your remaining funds on an address, right? And you could just as easily move your funds to a new external address. I understand that the point is to use an address only once, but that can also be done with external addresses.



I hope that somebody can explain what benefits internal addresses have,



Thanks in advance!










share|improve this question



























    9















    I've read other questions (and their answers) on this but I still don't see the use for internal addresses. I get that you're supposed to send the change of a transaction there but I don't see how this benefits you, all it does is move your remaining funds on an address, right? And you could just as easily move your funds to a new external address. I understand that the point is to use an address only once, but that can also be done with external addresses.



    I hope that somebody can explain what benefits internal addresses have,



    Thanks in advance!










    share|improve this question

























      9












      9








      9








      I've read other questions (and their answers) on this but I still don't see the use for internal addresses. I get that you're supposed to send the change of a transaction there but I don't see how this benefits you, all it does is move your remaining funds on an address, right? And you could just as easily move your funds to a new external address. I understand that the point is to use an address only once, but that can also be done with external addresses.



      I hope that somebody can explain what benefits internal addresses have,



      Thanks in advance!










      share|improve this question














      I've read other questions (and their answers) on this but I still don't see the use for internal addresses. I get that you're supposed to send the change of a transaction there but I don't see how this benefits you, all it does is move your remaining funds on an address, right? And you could just as easily move your funds to a new external address. I understand that the point is to use an address only once, but that can also be done with external addresses.



      I hope that somebody can explain what benefits internal addresses have,



      Thanks in advance!







      bitcoin-core bitcoin-cash bitcoincore-development bip






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Feb 15 at 17:07









      timgfxtimgfx

      482




      482






















          2 Answers
          2






          active

          oldest

          votes


















          10














          The separation between internal and external addresses comes from BIP32.



          Using a different chain for each permits you to give out an xpub for just the external ones to an auditor. They would then be able to observe your incoming payments, but not your spending.






          share|improve this answer
























          • Another question: when sending some BTC to somebody should you prioritize internal or external funds? My guess would be external because then you'd get more internal funds making your transaction history more private, but I'm not certain

            – timgfx
            Feb 15 at 18:29



















          0














          In order to keep track of who sent you how much money you make sure to hand out an address only once and make a note of who you handed out the address to in your wallet software. This way all funds sent to a particular address are attributed to a particular party. Now if your wallet was using external chain addresses for change you wouldn't be able to track who sent you how much.



          As for why there is change at all it's because unspent outputs can only be spent in their entirety so if you don't want to send the entire amount to the recipient you have to receive the excess as change back to yourself. There are two related articles on the wiki about this called change and coin analogy that you might want to read.






          share|improve this answer
























          • Ah, so you mean that you give one receiving address to one person that they will use whenever they need to send you money so you have addresses per person that sends you money instead of an address per transaction (receive + send)?

            – timgfx
            Feb 15 at 18:25











          • @timgfx ideally it's per transaction. The point is that you attribute payments based on the address where they are sent so if your wallet starts sending change to external addresses that'll only confuse things for you.

            – Abdussamad
            Feb 16 at 19:07












          Your Answer








          StackExchange.ready(function() {
          var channelOptions = {
          tags: "".split(" "),
          id: "308"
          };
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function() {
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled) {
          StackExchange.using("snippets", function() {
          createEditor();
          });
          }
          else {
          createEditor();
          }
          });

          function createEditor() {
          StackExchange.prepareEditor({
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: false,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: null,
          bindNavPrevention: true,
          postfix: "",
          imageUploader: {
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          },
          noCode: true, onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          });


          }
          });














          draft saved

          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fbitcoin.stackexchange.com%2fquestions%2f84594%2fbip44-whats-the-use-of-internal-addresses%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown

























          2 Answers
          2






          active

          oldest

          votes








          2 Answers
          2






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          10














          The separation between internal and external addresses comes from BIP32.



          Using a different chain for each permits you to give out an xpub for just the external ones to an auditor. They would then be able to observe your incoming payments, but not your spending.






          share|improve this answer
























          • Another question: when sending some BTC to somebody should you prioritize internal or external funds? My guess would be external because then you'd get more internal funds making your transaction history more private, but I'm not certain

            – timgfx
            Feb 15 at 18:29
















          10














          The separation between internal and external addresses comes from BIP32.



          Using a different chain for each permits you to give out an xpub for just the external ones to an auditor. They would then be able to observe your incoming payments, but not your spending.






          share|improve this answer
























          • Another question: when sending some BTC to somebody should you prioritize internal or external funds? My guess would be external because then you'd get more internal funds making your transaction history more private, but I'm not certain

            – timgfx
            Feb 15 at 18:29














          10












          10








          10







          The separation between internal and external addresses comes from BIP32.



          Using a different chain for each permits you to give out an xpub for just the external ones to an auditor. They would then be able to observe your incoming payments, but not your spending.






          share|improve this answer













          The separation between internal and external addresses comes from BIP32.



          Using a different chain for each permits you to give out an xpub for just the external ones to an auditor. They would then be able to observe your incoming payments, but not your spending.







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Feb 15 at 18:15









          Pieter WuillePieter Wuille

          48.6k3100163




          48.6k3100163













          • Another question: when sending some BTC to somebody should you prioritize internal or external funds? My guess would be external because then you'd get more internal funds making your transaction history more private, but I'm not certain

            – timgfx
            Feb 15 at 18:29



















          • Another question: when sending some BTC to somebody should you prioritize internal or external funds? My guess would be external because then you'd get more internal funds making your transaction history more private, but I'm not certain

            – timgfx
            Feb 15 at 18:29

















          Another question: when sending some BTC to somebody should you prioritize internal or external funds? My guess would be external because then you'd get more internal funds making your transaction history more private, but I'm not certain

          – timgfx
          Feb 15 at 18:29





          Another question: when sending some BTC to somebody should you prioritize internal or external funds? My guess would be external because then you'd get more internal funds making your transaction history more private, but I'm not certain

          – timgfx
          Feb 15 at 18:29











          0














          In order to keep track of who sent you how much money you make sure to hand out an address only once and make a note of who you handed out the address to in your wallet software. This way all funds sent to a particular address are attributed to a particular party. Now if your wallet was using external chain addresses for change you wouldn't be able to track who sent you how much.



          As for why there is change at all it's because unspent outputs can only be spent in their entirety so if you don't want to send the entire amount to the recipient you have to receive the excess as change back to yourself. There are two related articles on the wiki about this called change and coin analogy that you might want to read.






          share|improve this answer
























          • Ah, so you mean that you give one receiving address to one person that they will use whenever they need to send you money so you have addresses per person that sends you money instead of an address per transaction (receive + send)?

            – timgfx
            Feb 15 at 18:25











          • @timgfx ideally it's per transaction. The point is that you attribute payments based on the address where they are sent so if your wallet starts sending change to external addresses that'll only confuse things for you.

            – Abdussamad
            Feb 16 at 19:07
















          0














          In order to keep track of who sent you how much money you make sure to hand out an address only once and make a note of who you handed out the address to in your wallet software. This way all funds sent to a particular address are attributed to a particular party. Now if your wallet was using external chain addresses for change you wouldn't be able to track who sent you how much.



          As for why there is change at all it's because unspent outputs can only be spent in their entirety so if you don't want to send the entire amount to the recipient you have to receive the excess as change back to yourself. There are two related articles on the wiki about this called change and coin analogy that you might want to read.






          share|improve this answer
























          • Ah, so you mean that you give one receiving address to one person that they will use whenever they need to send you money so you have addresses per person that sends you money instead of an address per transaction (receive + send)?

            – timgfx
            Feb 15 at 18:25











          • @timgfx ideally it's per transaction. The point is that you attribute payments based on the address where they are sent so if your wallet starts sending change to external addresses that'll only confuse things for you.

            – Abdussamad
            Feb 16 at 19:07














          0












          0








          0







          In order to keep track of who sent you how much money you make sure to hand out an address only once and make a note of who you handed out the address to in your wallet software. This way all funds sent to a particular address are attributed to a particular party. Now if your wallet was using external chain addresses for change you wouldn't be able to track who sent you how much.



          As for why there is change at all it's because unspent outputs can only be spent in their entirety so if you don't want to send the entire amount to the recipient you have to receive the excess as change back to yourself. There are two related articles on the wiki about this called change and coin analogy that you might want to read.






          share|improve this answer













          In order to keep track of who sent you how much money you make sure to hand out an address only once and make a note of who you handed out the address to in your wallet software. This way all funds sent to a particular address are attributed to a particular party. Now if your wallet was using external chain addresses for change you wouldn't be able to track who sent you how much.



          As for why there is change at all it's because unspent outputs can only be spent in their entirety so if you don't want to send the entire amount to the recipient you have to receive the excess as change back to yourself. There are two related articles on the wiki about this called change and coin analogy that you might want to read.







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Feb 15 at 17:32









          AbdussamadAbdussamad

          1,608716




          1,608716













          • Ah, so you mean that you give one receiving address to one person that they will use whenever they need to send you money so you have addresses per person that sends you money instead of an address per transaction (receive + send)?

            – timgfx
            Feb 15 at 18:25











          • @timgfx ideally it's per transaction. The point is that you attribute payments based on the address where they are sent so if your wallet starts sending change to external addresses that'll only confuse things for you.

            – Abdussamad
            Feb 16 at 19:07



















          • Ah, so you mean that you give one receiving address to one person that they will use whenever they need to send you money so you have addresses per person that sends you money instead of an address per transaction (receive + send)?

            – timgfx
            Feb 15 at 18:25











          • @timgfx ideally it's per transaction. The point is that you attribute payments based on the address where they are sent so if your wallet starts sending change to external addresses that'll only confuse things for you.

            – Abdussamad
            Feb 16 at 19:07

















          Ah, so you mean that you give one receiving address to one person that they will use whenever they need to send you money so you have addresses per person that sends you money instead of an address per transaction (receive + send)?

          – timgfx
          Feb 15 at 18:25





          Ah, so you mean that you give one receiving address to one person that they will use whenever they need to send you money so you have addresses per person that sends you money instead of an address per transaction (receive + send)?

          – timgfx
          Feb 15 at 18:25













          @timgfx ideally it's per transaction. The point is that you attribute payments based on the address where they are sent so if your wallet starts sending change to external addresses that'll only confuse things for you.

          – Abdussamad
          Feb 16 at 19:07





          @timgfx ideally it's per transaction. The point is that you attribute payments based on the address where they are sent so if your wallet starts sending change to external addresses that'll only confuse things for you.

          – Abdussamad
          Feb 16 at 19:07


















          draft saved

          draft discarded




















































          Thanks for contributing an answer to Bitcoin Stack Exchange!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid



          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.


          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fbitcoin.stackexchange.com%2fquestions%2f84594%2fbip44-whats-the-use-of-internal-addresses%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Human spaceflight

          Can not write log (Is /dev/pts mounted?) - openpty in Ubuntu-on-Windows?

          張江高科駅