Hi guys ^^ i want to store PDF file on ethereum blockchain without use of IPFS. I want to do it because i have my own private network where this data will be only stored. That's why i want to store it directly on blockchain.

Thanks in advance!

1 Answer 1


Your high-level thinking about this deserves a little reorientation.

You should not use Ethereum to store large objects. It's just not efficient even if you can raise the gas limit high enough to accomodate it in a private network scenario.

Let's take a step back. Ethereum is not a suitable replacement for a database, object store or compute server - it's suitable for securing such things by proving certain aspects of what's happening.

It may sound a little flippant to say it this way but the notion of proving something implies two questions that are worth some careful consideration. What do you need to prove and who do you need to prove it to?

If there are multiple participants (should be, or you don't need to prove anything) then document storage usually has an aspect of document authentication - legitimacy and lineage.

Alice issues something important for Bob and Alice signs a transaction to a registry (Ethereum) with the hash of the file she gave to Bob. Now, Bob can prove to Carol that the document he presents is legitimate and was issued by Alice on a certain date. Carol computes the hash of the document itself and consults the registry to learn about its authenticity and origin.

In contrast with a centralized system, Alice cannot deny the fact, or withhold verification. Details about the document can be verified without her help. Whatever inspection of the registry contract reveals.

Access control and governance dimensions of a real app control who/what may generate issuance transactions.

This method is indifferent to the method of storing the document. Some implementations add a url field to go with the hash. Peer-to-peer (serverless) transfer is a candidate if it is acceptable to task the users with storage. Cloud is a possibilty. IPFS is a method with strong decentralization.

The method you choose to store the files will depend on the assurances you want provide in terms of privacy, availability, censorship resistance, points of failure and so on.

Object hashes can validate entire documents which is the prerequisite for users to parse the documents for details, with confidence. It's possible to use a variation of the method to prove the existence of key/value pairs (individual fields) without revealing complete documents. https://medium.com/robhitchens/selective-disclosure-with-proof-f6a1ac7be978

Hope it helps.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.