Introduction
Project Name: Wordpress Backup By Sia
Describe your project :
WordPress Plugin, Backup and Restore using Sia Decentralized Storage
Name of the organization or individual submitting the proposal:
Omgba Obono Katryn Kimberley
Jason Savelli
Bruno Antunes
Are you a resident of any jurisdiction on that list? No
Will your payment bank account be located in any jurisdiction on that list? No
Project Description
The WordPress Backup by Sia plugin offers a complete and secure solution for backing up and restoring WordPress sites. By integrating the power of Sia’s decentralized storage, this plugin provides a reliable and scalable method to protect WordPress sites against data loss and allows for easy restoration when needed.
- Main Features
- Automatic Backup
The plugin provides a programmable auto-backup feature, allowing users to set regular schedules for backing up their WordPress site.
Automatic backups ensure that the most recent data is always secure and ready to restore in the event of an incident.
- Decentralized Storage
By using a decentralized storage system, the plugin provides data redundancy, eliminating the single point of failure often associated with centralized storage solutions.
This approach provides enhanced security and greater resilience in the event of data loss.
- Easy Restauration
When needed, users can restore their WordPress site from backups stored on the decentralized storage system with just a few clicks.
Recovery is fast, reliable and helps minimize site interruptions in the event of a problem.
- Data Encryption
All backups made by the plugin are automatically encrypted, ensuring the confidentiality and security of sensitive data stored on the decentralized storage system.
- User-Friendly Interface
The plugin features a user-friendly and intuitive interface, allowing users to easily manage backup settings, schedule automatic backups, and restore their site with ease.
- Wide Compatibility
The plugin is designed to be compatible with a wide variety of WordPress hosts as well as popular themes and plugins, ensuring smooth integration with various site setups.
2- How the plugin works
-
Integration with the Sia API
-
Identification of an entry point: The WordPress plugin will establish a secure connection with the S3 and Renterd API of Sia. Since Renterd is not open, we will create a small, easily deployable middleware to provide this function.
-
The choice of relevant functions: The Sia API offers a variety of functions. The plugin will focus on those related to file uploads, the creation of storage contracts and data management.
-
Operating mode: The plugin will offer 2 operating modes, a self-hosted mode that will allow the user to use their own renterd server or by using our public renterd server.
-
Data Selection and Preparation
-
Definition of data to be backed up: The plugin will allow the user to choose the items to be backed up (databases, media files, etc.).
-
Compression and encryption: To optimize storage space on Sia and strengthen security, the data will be compressed and encrypted using an AES 256 CBC algorithm using a unique mnemonic for each user as an encryption key before uploading to the Renterd server.
-
Upload to Sia
-
Chunking: Large backup files will generally be cut into smaller chunks to facilitate storage and recovery of backups (the choice of algorithm has not yet been made).
-
Creation of storage contracts: Each piece of file will be associated with a storage contract on Sia. These contracts will define the storage conditions (duration, price, etc.). The creation of storage contracts will be done from a unique seed key used on the renterd server and an encrypted version of which will be displayed to users (it would be good if the developers of the Sia platform considered adding a multi key/account feature to facilitate its use for multi-user applications).
-
Distribution on the network: Sia will distribute the pieces on several nodes of the network to ensure redundancy and data availability. Given the low cost of data storage as well as the low cost of storage contracts, distributing data on several hosts (at least fifty as you have proposed) will remain a much more viable option than other existing solutions on the market.
-
Monitoring and Management of Backups
-
User interface: The plugin will offer an intuitive interface to allow the user to view the status of backups, download files and perform backups.
-
Notifications: The user can receive notifications in case of problems by email and also on the plugin interface (backup failure, contract expiration, etc.).
-
Scheduling: The plugin can be configured to perform backups at regular intervals.
3- Plugin architecture
We have architected our plugin to be able to facilitate data exchanges between the user website, our web interface and the Sia Blockchain.
Plugin Wordpress.drawio (2)951×591 48.8 KB
In this architecture, we want to use S5 to store user files while ensuring their constant accessibility by using the CIDs of the files. Renterd is used both for the management of storage systems and for the management of user accounts to be able to assign a sia account to each user of the platform.
How does the projected outcome serve the Foundation’s mission of user-owned data?
The project serves the foundation’s mission by enabling the formidable community of WordPress users (more than 60 million WordPress sites). This is a fantastic opportunity to increase the number of users of the Sia platform and also to better participate in securing Web2 by creating a bridge between web3 and web2.
Grant Specifics
We are requesting a total budget of $12,000 to design, test and put this plugin into production within 3 months.
The budget will be used for a period of 3 months with deliverables each month.
- Milestone 1:
Frontend PHP Dev Salary $1500
Backend/Blockchain Dev Salary $1500
UI Designer Salary $800
Cloud $200
Deliverables
- *Feasibility study
- *Architecture and diagram
- *Renterd deployment
- *S5 deployment
- *Mapping of interfaces
-Milestone 2:
Frontend PHP Dev Salary $1500
Backend/BlockchainDev Salary $1500
UI Designer Salary $800
Cloud $200
Deliverables
- *Creation of APIs
- *Creation of the Website backup system
- *Creation of the encryption system for websites
- *Creation of the backup module on Renterd
- *Creation of the incremental backup system
-Milestone 3:
Frontend PHP Dev Salary $1500
Backend/Blockchain Dev Salary $1500
UI Designer Salary $800
Cloud $200
Deliverables
- *Functional tests of the plugin
- *Publication of the plugin on wordpress.org 1
What are the goals of this small grant?
The objective of this Small Grant is to create an MVP which will integrate the different functionalities mentioned for each of the milestones above. The MVP is the first step for this project and subsequently, we will extend its functionalities by creating a web platform which will serve as support for managing backups.
Potential risks that will affect the outcome of the project:
The potentials risks that could affect the project include:
- Risk of extending deadlines; It may be necessary to extend development or testing deadlines
- Risk on technological compatibility; Wordpress could present compatibility limits with blockchain technologies
- Risk on human resources; The development teams could represent a risk to the development of the project.
Development Information
Will all of your project’s code be open-source?
No, All the project will be not open source for security reason. Only the saving and encryption module on Sia will be open source.
Leave a link where code will be accessible for review.
We will create a dedicated github for the project
Do you agree to submit monthly progress reports?
Yes, I agree
Contact info :
Email: [email protected]
Any other preferred contact methods:
Linkedin : Jason Savelli 🔝 - Splio | LinkedIn
Linkedin: Bruno ANTUNES - Intervalle | LinkedIn
Github : Newpoki (Jason Savelli) · GitHub