ABSTRACT: In this Document, we will go through the structure of a variant of hashing that will introduce Hashfiles, Hashservers and Ishaq Codes, which revolves around generating random codes stored in a key-value pairs file called a Hashfile linked to their original value, such will be an HTTP web service called a Hashserver that will host this program, which is called a Hasher, and users will be able to request Ishaq Codes from the Hashserver, and so will the Hashserver retrieve those codes from the Hashfile and respond with them back to the user.
The Hasher is the main program that receives a string value, called a text, and then validate if the text is already coded in the Hashfile or not. If it was, then the Hasher will return the code (i.e. the Ishaq Code) back to the user.
If the text wasn’t found in the Hashfile then the Hasher will generate a random 28-letter sequence of characters and insert Q-
in the beginning. Such will be the new Ishaq Code for that value, which will be returned to the user and appended to the Hashfile.
Such means that the User will always receive the same Ishaq Code if he has given the same text value.
Hashfiles are files named .hashfile
which will contain the hashes generated by the Hasher. An Example of the content of a Hashfile is the following:
ishaq: Q-vN8HH8ZBnjJZaemFGr.B5Z8qlKBI
random text: Q-MsG4Lf0O9zCZgTqmy21UvtAVKUai
hello: Q-2I6FNiwHvIWuEl2tnW3229N5ZAaY
A Hashserver is an HTTP web service that hosts a Hasher which performs the functionality explained above, which is an implementation of decentralised Ishaq Codes, as the use of a Hasher alone isn’t practical.
Users may send POST
requests to the Hashserver’s home /
route and the Response will be a JSON-formatted response that consists of an object containing two values, that are text
which is the original value requested, and tcoi
which is the Ishaq Code.
If the /
Route gets a DELETE
Request, which clears the Hashfile and deletes all codes, the HTTP Request would need an Authorization
Header which contains a Secret Passphrase that permits him to perform that operation.
If the /
Route gets an authorised GET
request, it will return a list of all the currently generated codes.
If the /
Route gets a usual GET
request, it'll respond with text saying:
TCOI Hashserver @ [Hashserver's IP Address or full Domain]
Hashservers are conventionally hosted on the subdomain hs
, as an example:
http://hs.example.com
The Code of Ishaq is an alternative form of hashing that aims to implement decentralised hashservers that accomplish the goal needed to validate information.