The identification of each file in the PeerEnabler network relies on two criteria combined together. These include the channel ID to which a particular file belongs and the file ID itself.
A number of channels can be found in the PeerEnabler network, and each of them has its unique identifier known as the Channel ID. This is an integer from 1 to 65,535. The main idea behind having different channels is to group related content. Typically, a single publisher will stick to only one channel to place its content.
File IDs have 128 bits, which is why the IDs allow identifying all the files in a channel uniquely. However, when the File IDs are used practically, they can either be expressed in decimal format if the ID has 16 bits or in hexadecimal format if it has 128 bits. In any case, File IDs are always sent out in string format in one of the following ways: “1234” (in case of decimal representation) or “0xaabbccddeeff112233445566779900” (for hexadecimal representation).
The File ID and Channel ID are generated at the moment of signing the file.
In order to publish a file through the PeerEnabler network, a publishing certificate needs to be acquired. The hierarchy-based certificate system used by PeerEnabler works in such a way that each individual certificate derives from the PeerEnabler Root Certificate. It means that PeerEnabler Root Certificate is possessed by Joltid, and Joltid alone has the right to provide publishing certificates to other publishers. The PeerEnabler Root Certificate, however, is the only one not revocable by Joltid.
A publishing certificate is dedicated to one particular channel and should be used exclusively for its purpose. There is a possibility to acquire several certificates at once for one single channel that would enable different publishers or even different departments of the same publisher to work with the same channel.
File publication is a multi-step procedure consisting of certain actions that should be done. Firstly, you assign the channel ID and the file ID to the file. Then, you sign the file with your publishing certificate. Finally, the file signed is published on the fallback server (web server).
The following requirements are to be met in order to sign a file:
– Publishing certificate for signing (provided by Joltid for their customers)
– Signing utility or the software developed using signing DLL that can be found at www.joltid.com
Prior to signing the file, you have to create a file ID. Channel ID is known since it is tied with the publishing certificate. There are two ways to create a file ID:
1) Sequentially use file IDs (publisher should keep the database of file IDs)
2) Use MD5 hash of the file as a file ID.
As a result, you receive a signature file. Signature file consists of the same filename as the file being signed with additional .sig extension. The task of the signature file is to check contents of a file being digitally signed.
Both files – original and signature file – should be uploaded to the fallback server after signing. Once enough amount of clients downloaded this file from the fallback server, this file becomes available in the PeerEnabler network.
Remarks:
– File publication procedure is fully offline, so there is no need to transmit any data to network management servers of other servers;
– Once a file ID assigned to file and used in PeerEnabler network cannot be used again to another file.