user21539: I would like to know if a bitcoin burn address can be tied to a string. This question is not about OP_RETURN or other ways of embedding into a blockchain. 
Here's the processes that I went through:

Create a 21-byte string (aaaaaaaaaaaaaaaaaaaaa)
Convert this string to hex here: http://string-functions.com/string-hex.aspx. I get: 616161616161616161616161616161616161616161
Take the SHA256 of it here twice: http://extranet.cryptomathic.com/hashcalc/index Get the first four bytes: 7df8e299
Now I have a hex string: 7df8e299616161616161616161616161616161616161616161. I convert it using a hex to base58 encoder: https://incoherency.co.uk/base58/
Finally I get this string: sgwP7Xqw3GWATXNF9TW3RyDG16vbzTgRHA. Which I plug into the bitcoin address cheker: http://lenschulwitz.com/base58. 
The error that I get is Invalid Bitcoin address! Bad SHA-256 checksum!

Where did I go wrong?

user21539: I had a couple errors. The first byte of aaaaaaaaaaaaaaaaaaaaa should be a version number, which can be 0. 0aaaaaaaaaaaaaaaaaaaa. The hash is appended to the end of the string, not the beginning.

Select a version number: 0
Append a 20-byte string (0aaaabbbbccccddddeeee)
Convert the 21-byte string to hex: 306161616162626262636363636464646465656565
Using a hex-compatible SHA256 (like in the link above), hash the hex string from 3 twice, then take the first 4 bytes. 27ac3662 (in hex, 2 letters = 1 byte)
Append those 4 bytes to END of the 21-byte hex string:  30616161616262626263636363646464646565656527ac3662
Convert the hex to base58 using an encoder: LU6rTvpr7C1AEpQLGwJP5xq7FBthTXAAqw. 
Check in the bitcoin validator link above. should be working.


21539: <p>I would like to know if a bitcoin burn address can be tied to a string. This question is not about <code>OP_RETURN</code> or other ways of embedding into a blockchain. </p>

<p>Here's the processes that I went through:</p>

<ul>
<li>Create a 21-byte string (aaaaaaaaaaaaaaaaaaaaa)</li>
<li>Convert this string to hex here: <a href="http://string-functions.com/string-hex.aspx" rel="nofollow noreferrer">http://string-functions.com/string-hex.aspx</a>. I get: 616161616161616161616161616161616161616161</li>
<li>Take the SHA256 of it here twice: <a href="http://extranet.cryptomathic.com/hashcalc/index" rel="nofollow noreferrer">http://extranet.cryptomathic.com/hashcalc/index</a> Get the first four bytes: 7df8e299</li>
<li>Now I have a hex string: 7df8e299616161616161616161616161616161616161616161. I convert it using a hex to base58 encoder: <a href="https://incoherency.co.uk/base58/" rel="nofollow noreferrer">https://incoherency.co.uk/base58/</a></li>
<li>Finally I get this string: sgwP7Xqw3GWATXNF9TW3RyDG16vbzTgRHA. Which I plug into the bitcoin address cheker: <a href="http://lenschulwitz.com/base58" rel="nofollow noreferrer">http://lenschulwitz.com/base58</a>. </li>
<li>The error that I get is <code>Invalid Bitcoin address! Bad SHA-256 checksum!</code></li>
</ul>

<p>Where did I go wrong?</p>
 21539: <p>I had a couple errors. The first byte of <code>aaaaaaaaaaaaaaaaaaaaa</code> should be a version number, which can be 0. <code>0aaaaaaaaaaaaaaaaaaaa</code>. The hash is appended to the end of the string, not the beginning.</p>

<ol>
<li>Select a version number: <code>0</code></li>
<li>Append a 20-byte string (<code>0aaaabbbbccccddddeeee</code>)</li>
<li>Convert the 21-byte string to hex: <code>306161616162626262636363636464646465656565</code></li>
<li>Using a hex-compatible SHA256 (like in the link above), hash the hex string from 3 twice, then take the first 4 bytes. <code>27ac3662</code> (in hex, 2 letters = 1 byte)</li>
<li>Append those 4 bytes to END of the 21-byte hex string:  <code>30616161616262626263636363646464646565656527ac3662</code></li>
<li>Convert the hex to base58 using an encoder: <code>LU6rTvpr7C1AEpQLGwJP5xq7FBthTXAAqw</code>. </li>
<li>Check in the bitcoin validator link above. should be working.</li>
</ol>
