[E4] - Storeal 🏅

Storeal is a type of Database as a Service that enables users to upload and retrieve their data. Additionally, users can encrypt their data and establish ACL policies, all without having to interact with blockchain and having a web2 experience.

0
1

Challenges

#BUIDLathon 2023 Infrastructure + Scalability

Pool 15,000 USDC

We have developed a storage solution that is programmable, allowing users to use our APIs or Frontend to upload and retrieve their data with ease. Our system currently only supports JSON schema, but we plan to expand its capabilities to support various file formats. Our goal is to provide users with the best user experience when it comes to web3 storage solutions by simplifying the complexity associated with blockchain technology. At present, while developing blockchain applications, many developers still struggle when it comes to storing various forms of data. Moreover, numerous developers are not inclined to involve themselves in the complexity of managing their storage deals and protocols. We aim to ensure that users can easily utilize any available decentralized storage solution such as Greenfield, IPFS, Filecoin etc. by making it accessible through our platform.

BUIDL on Fireblocks

Ranked 25,000 USDC

Storeal provides developers with a distributed database service and a set of SDKs to securely store sensitive and critical information in a distributed environment. Our solution offers a range of APIs, including reads and writes, which are easily integrated into applications. To enhance security, we utilized the Fireblocks developer tools, including their wallet-as-a-service feature, to ensure secure sign-ins. The transaction policy feature enabled us to set policies requiring multiple users to sign transactions, ensuring added security for developers. We also explored Fireblocks' real-time monitoring and alerts, which helped us to quickly detect and prevent suspicious activity, protecting against fraud and other security threats.

OpenZeppelin Defender Integration

Ranked 10,000 USDC

We integrated the OZ library for adding Access control layers at our Smart Contracts. We also tried building the logging/monitoring systems for the database as a service product using the Defender.

Programmable Storage on BNB Greenfield

Ranked 20,000 ETH

Our solution utilizes Greenfield as a storage system and offers a programmable storage for developers to easily upload and retrieve data. We have prioritized user-friendliness and strive to provide an exceptional user experience. To enhance security, we have incorporated AES256 encryption and SHA256 blockchain technology. Furthermore, we have integrated Fireblocks, which not only improves security, but also allows for multi-user transaction signing. Our solution is highly performant as we store metadata on the blockchain and actual data on Greenfield. Additionally, data replication ensures high availability of data. Our solution is fully compatible with the BNB Greenfield protocols, allowing for extensive usage of Greenfield storage. In the current market, there is no other solution that provides a better user experience for storage usage. This solution can be utilized by both users and developers in their applications and has the potential for widespread adoption due to its cost-effectiveness for data storage.

Project details

Inspiration

📈 As the demand for data usage continues to increase, the expense of storage can become prohibitively expensive. However, we can take advantage of web3 technology to store data, which has the potential to greatly reduce storage costs.

🤷‍♂️ At present, while developing blockchain applications, many developers still struggle when it comes to storing various forms of data. Moreover, numerous developers are not inclined to involve themselves in the complexity of managing their storage deals and protocols.

🌐 We aim to ensure that users can easily utilize any available decentralized storage solution such as Greenfield, IPFS, Filecoin etc. by making it accessible through our platform.

What Storeal Is

  • We are on a mission to offer users the optimal user experience with web3 storage solutions, accomplished by removing the intricacies involved in interacting with blockchain technology.

  • As the stored data could be sensitive, we sought to utilize the transaction policy offered by Fireblocks during wallet login.

  • Storeal has the potential to help developers conserve their resources, freeing up their time and energy to focus on improving the scalability and other features of their software.

  • Storeal enhances the protection of data by encrypting it prior to being saved on a decentralized storage system. The hash value of the encrypted data is then stored on the blockchain, ensuring the accuracy of data replication.

  • Storeal offers the capability of implementing access control policies for data, allowing for the specification of different levels of data access.

Special Points:

Benefits of using Greenfield: For now we are using IPFS as a storage engine, but we will be using Greenfield which will replace the storage on IPFS/Filecoin. In the current architecture, we provide programmable storage on top of existing decentralised storage protocols, like IPFS or greenfield. 

Benefits of using Fireblock: The stored data could be sensitive, we utilised the transaction policy offered by Fireblocks where we can include 2 or more users to sign the transaction before any important operation. Currently it’s not shown in the demo as the Transactions Policy is disabled in the sandbox environment.

Technical Architecture:

Frontend: The UI layer allows users to upload their data quickly to the storage system as well as users can leverage our APIs for the operations.

Node API Server: This server will accept HTTP requests from the frontend and perform few operations where the data is encrypted and stored to the storage system. This server stores some metadata which is required for further operations and a custom ACL layer is developed. The ipfs hash is also fetched from the smart contract by making a RPC call to smart contracts and then data fetch operation is performed. 

Smart Contracts: We have implemented ACL policies in smart contracts using Open Zeppelin and we have few functions which write and read data from the blockchain. We store the ipfs hash on the blockchain.

IPFS Node: We are running a local IPFS node.

Architecture Link: https://excalidraw.com/#room=a4a433c138ca548e5be2,eNW5GZxi9P-lNVnUmMAYxw

Challenges Faced:

  • Develop ACL at smart contract level

  • IPFS + Web3 calls in Node server

  • Encryption layer integration