<blockquote>
  <p>Normally, one of the purposes of hashing a string (such as a transaction) is summarizing the data to save the size because of the space limitation.</p>
</blockquote>

<p>No, that would be a compression function. Hash functions are not compression functions, there is no reversing a hash. The point of a hash is to get a unique representation of the data that is the same size for any farbitrary length data.</p>

<blockquote>
  <p>If this proposition is true, now assume we need to read the original data and so we need to extract the exact original data (with all details). </p>
</blockquote>

<p>No, that is false. You cannot get the original data back.</p>

<blockquote>
  <p>And if we cannot retrieve the original data from a hashed value, how hashed data can help us for validating an original data? </p>
</blockquote>

<p>If you have the original data and a hash of it (calculated at a different time or by someone else), you can hash the original data and check that the hash matches the hash you were given.</p>

CC BY-SA 4.0
2018-09-19T13:38:56.407Z
2018-09-19T13:38:56.407Z
Ava Chow
<p>Normally, one of the purposes of <strong>hashing</strong> a string (such as a transaction) is summarizing the data to save the size because of the space limitation.</p>

<p>If this proposition is true, now assume we need to <strong>read</strong> the original data and so we need to <strong>extract</strong> the <strong>exact</strong> original data (<strong>with all details</strong>). </p>

<p>Now the question is if the <strong>extracted</strong> data from the hash data is exotically equal to the original data?</p>

<p>And if yes, is there any tool to do this? (for example, for retrivieng the original data from <code>SHA256</code> hashing algorithm).</p>

<p>And if we cannot retrieve the original data from a hashed value, how hashed data can help us for validating an original data?   </p>

<hash>
retrieving an original data from a hash: is it reliable?
Questioner
# retrieving an original data from a hash: is it reliable?

(Asked by: username_0 on 2018-09-19)

Normally, one of the purposes of **hashing** a string (such as a transaction) is summarizing the data to save the size because of the space limitation.

If this proposition is true, now assume we need to **read** the original data and so we need to **extract** the **exact** original data (**with all details**).

Now the question is if the **extracted** data from the hash data is exotically equal to the original data?

And if yes, is there any tool to do this? (for example, for retrivieng the original data from `SHA256` hashing algorithm).

And if we cannot retrieve the original data from a hashed value, how hashed data can help us for validating an original data?

**Tags:** hash


---

## 1 answers

### Answer by username_1 on 2018-09-19. Score: 3 | Accepted answer

> Normally, one of the purposes of hashing a string (such as a transaction) is summarizing the data to save the size because of the space limitation.

No, that would be a compression function. Hash functions are not compression functions, there is no reversing a hash. The point of a hash is to get a unique representation of the data that is the same size for any farbitrary length data.

> If this proposition is true, now assume we need to read the original data and so we need to extract the exact original data (with all details).

No, that is false. You cannot get the original data back.

> And if we cannot retrieve the original data from a hashed value, how hashed data can help us for validating an original data?

If you have the original data and a hash of it (calculated at a different time or by someone else), you can hash the original data and check that the hash matches the hash you were given.


---

