user-1: Public key:
bitcoin-cli getdescriptorinfo "wpkh(027fda10f37e6c637a1cfeba2cbada86de36f28e63d4ded9e1314117739f6419a9)"
{
  "descriptor": "wpkh(027fda10f37e6c637a1cfeba2cbada86de36f28e63d4ded9e1314117739f6419a9)#99knjm9r",
  "checksum": "99knjm9r",
  "isrange": false,
  "issolvable": true,
  "hasprivatekeys": false
}

Private key:
bitcoin-cli getdescriptorinfo "wpkh(cRLX3mChef5FEFi6y46yH1YJ4Cy7K3WW4bJDBZ7LiygKp4CBsF6p)"
{
  "descriptor": "wpkh(027fda10f37e6c637a1cfeba2cbada86de36f28e63d4ded9e1314117739f6419a9)#99knjm9r",
  "checksum": "s5qjl8cq",
  "isrange": false,
  "issolvable": true,
  "hasprivatekeys": true
}


What is the correct way to use private keys in descriptors?
Why are two checksums returned in getdescriptorinfo for private key?
Why does the KEY inside parenthesis change when using private key with getdescriptorinfo?


user208: Descriptors with a private key (or xprv) in it are equivalent to their version with the public key instead, apart from also conveying the private key information.

For what purpose?
The descriptor field only reports the descriptor itself (i.e., without private key material). The checksum field reports the checksum for your input. This is also explained in the help text for the RPC.
It's removing private key material.


-1: <p>Public key:</p>
<pre><code>bitcoin-cli getdescriptorinfo &quot;wpkh(027fda10f37e6c637a1cfeba2cbada86de36f28e63d4ded9e1314117739f6419a9)&quot;
{
  &quot;descriptor&quot;: &quot;wpkh(027fda10f37e6c637a1cfeba2cbada86de36f28e63d4ded9e1314117739f6419a9)#99knjm9r&quot;,
  &quot;checksum&quot;: &quot;99knjm9r&quot;,
  &quot;isrange&quot;: false,
  &quot;issolvable&quot;: true,
  &quot;hasprivatekeys&quot;: false
}
</code></pre>
<p>Private key:</p>
<pre><code>bitcoin-cli getdescriptorinfo &quot;wpkh(cRLX3mChef5FEFi6y46yH1YJ4Cy7K3WW4bJDBZ7LiygKp4CBsF6p)&quot;
{
  &quot;descriptor&quot;: &quot;wpkh(027fda10f37e6c637a1cfeba2cbada86de36f28e63d4ded9e1314117739f6419a9)#99knjm9r&quot;,
  &quot;checksum&quot;: &quot;s5qjl8cq&quot;,
  &quot;isrange&quot;: false,
  &quot;issolvable&quot;: true,
  &quot;hasprivatekeys&quot;: true
}
</code></pre>
<ol>
<li>What is the correct way to use private keys in descriptors?</li>
<li>Why are two checksums returned in <code>getdescriptorinfo</code> for private key?</li>
<li>Why does the KEY inside parenthesis change when using private key with <code>getdescriptorinfo</code>?</li>
</ol>
 208: <p>Descriptors with a private key (or xprv) in it are equivalent to their version with the public key instead, apart from also conveying the private key information.</p>
<ol>
<li>For what purpose?</li>
<li>The <code>descriptor</code> field only reports the descriptor itself (i.e., without private key material). The <code>checksum</code> field reports the checksum for your input. This is also explained in the help text for the RPC.</li>
<li>It's removing private key material.</li>
</ol>
