<p>No, it is not valid as explained here:</p>

<blockquote>
  <p>A Bitcoin address, or simply address, is an identifier of 26-35 alphanumeric characters, beginning with the number 1 or 3, that represents a possible destination for a bitcoin payment. Addresses can be generated at no cost by any user of Bitcoin. For example, using Bitcoin Core, one can click "New Address" and be assigned an address. It is also possible to get a Bitcoin address using an account at an exchange or online wallet service. </p>
</blockquote>

<p><a href="https://en.bitcoin.it/wiki/Address" rel="noreferrer">https://en.bitcoin.it/wiki/Address</a></p>

CC BY-SA 3.0
2018-01-01T11:13:18.597Z
2018-01-01T11:13:18.597Z
Gabriel
<p>No, it is not valid, and I have no idea why blockchain.info shows it as such.</p>

CC BY-SA 3.0
2018-01-01T14:50:07.590Z
normally I would say this should be a comment - but I see yours carry more weight http://github.com/bitcoin/bitcoin/graphs/contributors
Zombo
CC BY-SA 3.0
2018-01-01T17:00:56.613Z
I think you're right. Without some background or reference information this is not really a good answer.
Pieter Wuille
CC BY-SA 3.0
2018-01-01T10:19:31.017Z
2018-01-01T10:19:31.017Z
Pieter Wuille
<p>There are different levels of correctness here.</p>

<p>A bitcoin address uses a simple checksum, whose purpose is just to detect accidental mistyping of an address in the hopes of preventing transactions going wrong due to simple typos.  Credit card numbers also use a simple checksum for the same purpose, though in the case of bitcoin it's a 32-bit portion of a SHA256 so much less likely to match by chance, but not cryptographically so - it is after all only for detecting mistyping.</p>

<p>The checksum is easy and fast to calculate so a form on a page can do a quick check to validate the number without having to do any heavy processing or contact any third parties.</p>

<p>In this case, the address passes the checksum test but results in an address that is too short.  A form on a page should <em>not</em> accept this as a valid bitcoin address even though the checksum is valid, because it should fail a length test.  In fact, as stated in another answer this is a "null" (one zero byte) bitcoin address with a checksum.</p>

<p>Even if a bitcoin address passes the checksum and length test would still not indicate that using it would be successful.  For example, padding this address out and re-checksumming it would still not be usable.</p>

CC BY-SA 3.0
2018-01-02T00:15:36.810Z
2018-01-02T00:15:36.810Z
trr
<p>It is not a valid address, because blockchain.info doesn't even show it Hash160. Wallets send money to Hash160s, not addresses, which means money can't be sent to it. If it can't have bitcoins, it's not a valid address then.</p>

CC BY-SA 3.0
2018-01-01T16:28:39.217Z
2018-01-01T16:28:39.217Z
MCCCS
<p>As to elaborate on why this is accepted at all at <a href="https://blockchain.info/address/1Wh4bh" rel="nofollow noreferrer">blockchain.info</a>, <strong>1Wh4bh</strong> is:</p>

<pre><code>&gt;&gt;&gt; import base58  
&gt;&gt;&gt; bytes.hex(base58.b58decode('1Wh4bh'))  
'001406e058'
</code></pre>

<p>Following <a href="https://en.bitcoin.it/wiki/Protocol_documentation#Addresses" rel="nofollow noreferrer">https://en.bitcoin.it/wiki/Protocol_documentation#Addresses</a>, it only contains the preface of a bitcoin address ('0x00'), and the checksum: '1406e958'. In fact, <strong>the double SHA256 of 0x00</strong> (as <strong>the hash160 of the public key is not indicated</strong>) is:</p>

<pre><code>1406e05881e299367766d313e26c05564ec91bf721d31726bd6e46e60689539a
</code></pre>

<p>The first 4 bytes coincide, so the checksum is right.</p>

<p>Because of this, the bitcoin address <strong>could be well formed... in a sense...</strong>. I suppose this is the reason why blockchain doesn't reject it.   </p>

<p>But in fact, as no public key is indicated at all because <strong>no public key would produce a hash160 equal to the null string</strong>, it cannot be used for any purpose.</p>

<p>Note, also, that a null (or less than 160 bits) hashed public key <strong>is incorrect</strong> even in the case of (all) leading zeros, because <a href="https://bitcoin.org/en/developer-reference#address-conversion" rel="nofollow noreferrer">Base58Check algorithm used by bitcoin preserves all leading zeroes</a>.</p>

CC BY-SA 3.0
2018-01-01T18:56:16.660Z
2018-01-02T20:07:17.413Z
2018-01-02T20:07:17.413Z
circulosmeos
<p>The bitcoin address <a href="https://blockchain.info/address/1Wh4bh" rel="noreferrer"><code>1Wh4bh</code></a> looks so short. Is it even a valid address?</p>

<p>If yes, can we send bitcoins to it?</p>

CC BY-SA 3.0
2018-01-01T17:29:43.477Z
Interestingly, blockchain.info returns "Input too short" for "111" and "aaaa", but "Checksum does not validate" for "1111". So it seems blockchain.info does assume that 4 characters is the shortest possible address? (I haven't found valid address with only 4 characters though)
Andrew T.
CC BY-SA 3.0
2018-01-01T18:50:56.227Z
More info from a quick Google search:  [it appears in test data](https://github.com/nayuki/Bitcoin-Cryptography-Library/blame/0f5a546e1c0b99db4f3c722008d48448f2c7c084/java/io/nayuki/bitcoin/crypto/Base58CheckTest.java#L29), and [may be from a litecoin wallet, not bitcoin](https://bitcointalk.to/index.php?topic=326800.0).  Of note in the first link is that the next test value, `112edB6q`, [also shows up on blockchain.info](https://blockchain.info/address/112edB6q).
Izkata
<address>
Is "1Wh4bh" a valid Bitcoin address?
user71899
# Is "1Wh4bh" a valid Bitcoin address?

(Asked by: username_0 on 2018-01-01)

The bitcoin address [`1Wh4bh`](https://blockchain.info/address/1Wh4bh) looks so short. Is it even a valid address?

If yes, can we send bitcoins to it?

**Tags:** address

> **Comments:**
> **username_1**: Interestingly, blockchain.info returns "Input too short" for "111" and "aaaa", but "Checksum does not validate" for "1111". So it seems blockchain.info does assume that 4 characters is the shortest possible address? (I haven't found valid address with only 4 characters though)  
> **username_2**: More info from a quick Google search:  [it appears in test data](https://github.com/nayuki/Bitcoin-Cryptography-Library/blame/0f5a546e1c0b99db4f3c722008d48448f2c7c084/java/io/nayuki/bitcoin/crypto/Base58CheckTest.java#L29), and [may be from a litecoin wallet, not bitcoin](https://bitcointalk.to/index.php?topic=326800.0).  Of note in the first link is that the next test value, `112edB6q`, [also shows up on blockchain.info](https://blockchain.info/address/112edB6q).  

---

## 5 answers

### Answer by username_8 on 2018-01-01. Score: 11 | Accepted answer

As to elaborate on why this is accepted at all at [blockchain.info](https://blockchain.info/address/1Wh4bh), **1Wh4bh** is:

```
>>> import base58  
>>> bytes.hex(base58.b58decode('1Wh4bh'))  
'001406e058'

```

Following <https://en.bitcoin.it/wiki/Protocol_documentation#Addresses>, it only contains the preface of a bitcoin address ('0x00'), and the checksum: '1406e958'. In fact, **the double SHA256 of 0x00** (as **the hash160 of the public key is not indicated**) is:

```
1406e05881e299367766d313e26c05564ec91bf721d31726bd6e46e60689539a

```

The first 4 bytes coincide, so the checksum is right.

Because of this, the bitcoin address **could be well formed... in a sense...**. I suppose this is the reason why blockchain doesn't reject it.

But in fact, as no public key is indicated at all because **no public key would produce a hash160 equal to the null string**, it cannot be used for any purpose.

Note, also, that a null (or less than 160 bits) hashed public key **is incorrect** even in the case of (all) leading zeros, because [Base58Check algorithm used by bitcoin preserves all leading zeroes](https://bitcoin.org/en/developer-reference#address-conversion).


---

### Answer by username_3 on 2018-01-01. Score: 9

No, it is not valid as explained here:

> A Bitcoin address, or simply address, is an identifier of 26-35 alphanumeric characters, beginning with the number 1 or 3, that represents a possible destination for a bitcoin payment. Addresses can be generated at no cost by any user of Bitcoin. For example, using Bitcoin Core, one can click "New Address" and be assigned an address. It is also possible to get a Bitcoin address using an account at an exchange or online wallet service.

<https://en.bitcoin.it/wiki/Address>


---

### Answer by username_4 on 2018-01-01. Score: 4

No, it is not valid, and I have no idea why blockchain.info shows it as such.

> **Comments:**
> **username_5**: normally I would say this should be a comment - but I see yours carry more weight http://github.com/bitcoin/bitcoin/graphs/contributors  
> **username_4**: I think you're right. Without some background or reference information this is not really a good answer.  

---

### Answer by username_6 on 2018-01-02. Score: 1

There are different levels of correctness here.

A bitcoin address uses a simple checksum, whose purpose is just to detect accidental mistyping of an address in the hopes of preventing transactions going wrong due to simple typos. Credit card numbers also use a simple checksum for the same purpose, though in the case of bitcoin it's a 32-bit portion of a SHA256 so much less likely to match by chance, but not cryptographically so - it is after all only for detecting mistyping.

The checksum is easy and fast to calculate so a form on a page can do a quick check to validate the number without having to do any heavy processing or contact any third parties.

In this case, the address passes the checksum test but results in an address that is too short. A form on a page should *not* accept this as a valid bitcoin address even though the checksum is valid, because it should fail a length test. In fact, as stated in another answer this is a "null" (one zero byte) bitcoin address with a checksum.

Even if a bitcoin address passes the checksum and length test would still not indicate that using it would be successful. For example, padding this address out and re-checksumming it would still not be usable.


---

### Answer by username_7 on 2018-01-01. Score: 0

It is not a valid address, because blockchain.info doesn't even show it Hash160. Wallets send money to Hash160s, not addresses, which means money can't be sent to it. If it can't have bitcoins, it's not a valid address then.


---

