====== Hashing ====== [[dido:public:ra:xapend:xapend.a_glossary:start| Return to Glossary ]] **Hashing** is the process of transforming any given key or a string of characters into another value. This is usually represented by a shorter, fixed-length value or key that represents and makes it easier to find or employ the original string. The most popular use for **Hashing** is the implementation of **Hash Tables**. A **Hash Table** stores key and value pairs in a list that is accessible through its index. Because key and value pairs are unlimited, the [[dido:public:ra:xapend:xapend.a_glossary:h:hash_function]] will map the keys to the table size. A hash value then becomes the index for a specific element. A [[dido:public:ra:xapend:xapend.a_glossary:h:hash_function]] generates new values according to a mathematical **Hashing** algorithm, known as a hash value or simply a hash. To prevent the conversion of the hash back into the original key, a good hash always uses a one-way **Hashing** algorithm. **Hashing** is relevant to -- but not limited to -- data indexing and retrieval, [[dido:public:ra:xapend:xapend.a_glossary:d:digital_certificate]], [[dido:public:ra:xapend:xapend.a_glossary:d:digital_signature]], [[dido:public:ra:xapend:xapend.a_glossary:c:cyber_security]] and [[dido:public:ra:xapend:xapend.a_glossary:c:cryptography]]. Source: [[https://searchsqlserver.techtarget.com/definition/hashing ]] /**=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- /* To add a discussion page to this page, comment out the line that says ~~DISCUSSION:off~~ */ ~~DISCUSSION:on|Outstanding Issues~~ ~~DISCUSSION:off~~