title_body: Why is there a small difference between addresses derived by the cardano-address tool and Yoroi?
upvoted_answer: There is indeed missing a part of the address: the delegation part. For more information, please refer to this partially duplicate question and CIP-0019.
  To derive Yoroi addresses from a seed phrase using the cardano-addresses tool:
  ./cardano-address key from-recovery-phrase Shelley &lt; phrase.prv &gt; root.xsk
  cat root.xsk | ./cardano-address key child 1852H/1815H/0H | ./cardano-address key public --with-chain-code &gt; root.xvk
  
  # Derive the stake key.
  cat root.xvk | ./cardano-address key child 2/0 &gt; stake.xvk
  
  # Only the index of the payment address is incremented to yield the next Yoroi address:
  
  # First address
  cat root.xvk | ./cardano-address key child 0/0 | ./cardano-address address payment --network-tag mainnet &gt; payment.addr
  ./cardano-address address delegation $(cat stake.xvk) &lt; payment.addr &gt; payment-delegated.addr
  
  # Second address
  cat root.xvk | ./cardano-address key child 0/1 | ./cardano-address address payment --network-tag mainnet &gt; payment.addr
  ./cardano-address address delegation $(cat stake.xvk) &lt; payment.addr &gt; payment-delegated.addr
  
  # Third address
  cat root.xvk | ./cardano-address key child 0/2 | ./cardano-address address payment --network-tag mainnet &gt; payment.addr
  ./cardano-address address delegation $(cat stake.xvk) &lt; payment.addr &gt; payment-delegated.addr