How it works
We use a combination of blockchain and IPFS technologies. Each time the file is uploaded to IPSF, the network returns a hash. It is a digital fingerprint of a file that is calculated based on file size and content. It means that if you upload the same file again, as a result, you will get the same hash. After file uploading, it splits into small pieces and spreads across the network nodes. It is an open source technology, so anybody can run an own node and join the network. At the same time returned IPFS hash is an address to reach uploaded file through the network. The cool thing that same file can be reached from any node in the network. The more requests for a particular file, the more copies of that files will be on IPSF network. So in general IPFS technology allows storing the unlimited number of files with unlimited size. However, the technology does not solve the problem of trust. It means that technically uploaded files can be deleted, and the network will not notice that. Also, it is not known who uploaded the file and when it happened. And these are the problems that are handled with blockchain.
Blockchain is designed as persistent storage of immutable data. It means that once the data is added to a blockchain network it can't be deleted or edited. Another cool feature, that data itself stored in transactions. And each transaction is stored in a particular block. At the same time, each block has a height (order number) that also can't be changed. That allows to know when exactly the transaction was sent. Each transaction has an extra data field. This data/attachment field can be used for sending additional information to each transaction. Normally it is used to send data for smart-contracts, however, it can be used for sending a regular text. This text is sent in base58 encryption, so anyone can decrypt attachment text with base58 algorithm and verify sent data. At chainify we use Waves platform blockchain because of it's speed and fixed transactions fee policy.
So what exactly do we do
Chainify gives you tools to upload files to IPFS network, and then save that hash to blockchain transaction as an attachment. That will allow proving the existence of files on a particular moment and their immutability since then. But what about the ownership. Chainify solves that problem also.
Before that let's talk about pages. Pages are designed to display a specific list of files. Pages can be private and public. Each page has a title, description and address fields. Address field stands for a blockchain address. Each page will display only files/transactions that were sent to the associated address. Each blockchain address has a unique key pair of private and public keys. The key pair is generated from a seed phrase - just a random set of words. It means that a seed phrase can grant access to blockchain account. When the file is uploaded to IPFS network it's hash attaches to transaction that is sent from the page address to the same page address (self-sending). So a person can prove the account ownership by providing the seed phrase and unlocking blockchain account. And that can be done fully decentralized.
To be able to send transactions the page/address should have positive CNFY tokens balance. Each file/message sending costs 0.001 CNFY. You can get free CNFY tokens on the faucet page.
After a successful file uploading chainify will generate a file passport with a unique link. That link can be easily attached to an email or social media post.
CNFY/Waves tokens address