Introduction
Project name
Tiri Vault (ARC data wallet)
Name of the organization or individual submitting the proposal:
Registered Legal Entity: BELA SUPERNOVA, sistemske rešitve d.o.o.
Registered Address: Tabor 5a, 1380 Cerknica, Slovenia
Describe your project
Bela Supernova has developed a simple browser extension – the Tiri Vault – an easy to use SIA network data wallet with features for managing files stored in the SIA network. The Tiri Vault data wallet is a light client-end solution enabling private users to use the SIA storage network independently through a browser extension without a need to download and sync the SIA local node.
A demo video of the basic features of Tiri Vault you can see in this video.
A test operation of the dAapp has shown that it is a simple and convenient method for retail use of the SIA decentralized storage. However, user feedback clearly indicates that it is necessary to develop the Tiri Vault application towards a desktop background app so that users could work with files directly in the local file system.
This task partially addresses the RFP “renterd iSCSI/NFS integration.” However, since we are working on a personal application, integration with a file folder on the local disk seems more applicable in this case, rather than emulating a network disk. Moreover, such functionality can be developed using JavaScript, which will allow us to leverage the existing JS code of the Tiri backend.
Who benefits from your project?
With the increasing reliance on cloud storage solutions for managing digital assets, individuals often find themselves grappling with the challenges of managing files across multiple cloud providers. Furthermore, concerns about data privacy and security have prompted users to seek alternative solutions to safeguard their sensitive information. In response to these challenges, third-party data management applications have emerged as a viable solution, offering users the convenience of managing files from different cloud storages within a single interface while bolstering data privacy through client-end encryption mechanisms. This convenience and increased privacy cost users an extra price, usually comparable to the cost of the storage itself.
The Tiri Vault concept is to bring crypto wallets use case to a files storage workflow to provide private users with the highest level of privacy by leveraging the blockchain technology and client-end encryption with the convenience of common web2 era storage services – all that for a reasonable price in crypto.
How does the project serve the Foundation’s mission of user-owned data?
Personal files are considered as crypto assets and managed alike in a non-custodial manner. Only the user holds the keys, not a solution provider. Considering the implementation of the SIA network, Tiri Vault acts as a gateway for multi-user access to the storage network, but users’ files are encrypted on the client side with the user’s wallet key, so Tiri does not have access to anz of the user’s files or other data. Tiri Vault is an open source project and uses common SIA wallets for authorization and encryption.
Grant Specifics
The project will be supported by a group of 2 developers, 1 QA + PO and a UI/UX designer.
The total budget for the MVP development is estimated at $ 50.400 including: team’s salary (estimated FTE for this proposal is 8,4). The team is better to be paid on a monthly basis, but we can also split the work in 3 milestones to be paid upon delivery, but with the first milestone prepaid.
The timeline for the Tiri Vault local daemon MVP development is considered to be four months. As a result of this project we will deliver a working Windows app that supports files synchronization between a local file folder and the SIA blockchain using user’s wallet credentials for access and encryption/decryption.
We plan to execute the work in three milestones/steps:
- Disk change Tracking and Synchronization (17.600 USD; 1,5 months);
- WebSocket Server and Storage Change Tracking (17.600 USD; 1,5 months);
- Application UI/UX (15.200 USD; 1 month).
Risks
We see several risks both from a business and technical points:
- synchronization issues: e.g. a user works from different devices and being offline corrected a file on several of them. Then the user get’s online and both devices start synchronization. The logical way is to check correction time and upload the latest, but there could be different situatuions and we will have to test different algorithms.
- the local node is a problem itself, as we have to add an intermediary server to process user’s files. If the workload will be high (a lot of users with huge synchronizations) it could cost a lot to provide appropriate resources for this work. We will need to optimize intermediary storage algorithms, but after we meet these constraints.
- also I see one risk in the future - due to lack of smart contracts in the SIA network we can meet some intricacies in providing product features. For example, we can provide file sharing mechanism by changing a smart contract (in our PoC in FVM) for a server feature and the entire access list will be stored as an encrypted file in the user’s SIA storage, but this method could have processing speed issues and will require a user, receiving access, to get the file through the server as well. This type of tasks should be reviewed and solved on the later stages of the project.
Development Information
Will all of your project’s code be open-source?
Yes. All code will be opensource and delivered under the Apache 2.0 license.
Leave a link where code will be accessible for review.
The code will be available in our GitHub.
Do you agree to submit monthly progress reports?
We agree to submit monthly progress reports here in the forum. Additionally, all milestones will be delivered with a video demonstration of the results (in case UI demonstration won’t be available as a result of a milestone, we will show code execution).
- Disk Change Tracking and Synchronization (1,5 months)
Deliverables:
- implement recursive downloading of all folders and files and saving them to a local disk;
- develop a mechanism for tracking changes on the disk like adding/deleting/modifying folders and files. These changes will trigger synchronization with the SIA storage. Files will be encrypted with the user’s key and sent to the network using the Tiri Vault node/server. Before sending, all files will be split into chunks.
- WebSocket Server and SIA Storage Change Tracking (1,5 months)
Deliverables:
- create a WebSocket server to receive information about changes in folders/files in the SIA storage;
- implement changes tracking in the SIA storage disk like adding/deleting/modifying folders and files. Changes in the SIA storage will be synchronized with the local app using the WebSocket server. Received data will be decrypted with the user’s key and saved to the local disk to the appropriate folder. This will enable users to work across multiple devices, with changes synchronized between them.
- Application UI/UX (1 month)
Deliverables:
- develop a Windows application with various settings, including: user authorization with a wallet key, setting a local password that encrypts the user’s secret key for file encryption and stores it encrypted on the local disk, managing tariffs, managing synchronization settings, managing local folders for synchronization;
- the app should work in the background when.
Future plans:
We see the development of the Tiri Vault as two complementary products: the entire Tiri Vault and the Tiri Collaboration Suite.
The Tiri Vault should consist of a personal file storage wallet developed for use in all desktop and mobile environments and a Secret Notebook for storing short text credentials like passwords, credit cards data and etc. that will be stored in a separate encrypted file in a user’s SIA storage and uploaded by a user’s browser to be safely used in online forms on web sites.
The second product is the Tiri Collaboration Suite, that includes safe files sharing functionality: a dedicated ACL file encrypted and stored in a user’s personal SIA storage:
Currently we are developing the Tiri Vault whitepaper and a financial model for the product presentation and funding acquisition.
Contact info
Email: [email protected]
Telegram: @dsrdrk11a