EzyFS( Easy File System ) is an application that facilitates File system operations, making them accessible to non technical users.
EzyFS is undergoing a major refactoring phase. I stopped new features
development and decided to move to a new microservice architecture. You can view
the old one at the old-architecture
branch.
Compression And encryption come in really handy, but they also consume alot of computation power when used on large files. This may lead to performance issues in NodeJs APPs. NodeJs is a single threaded engine. So to make use of multiple CPUs cores, EzyFS introduced Parallel Processors.
- Compression/Decompression:
.tgz
- Encryption/Decryption: Will have support for
rsa
,ECC
.Our encryption engine will have compression by default.
EzyFS implements a high security hybrid encryption system. Either RSA-AES
or
ECC-AES
, depending on the user's choice! Here are the steps:
- A random Cihper key is generated then used to encrypt. It is then encrypted with the owner's ECC/RSA key and stored in our DB. Every job will have its own cipher key for obvious security reasons.
- A random initialazation vector is generated and streamed to the file.
- The file is then encrypted with AES256.
- To decrypt, the owner must provide his private key to decrypt the cipherkey first. Then it's used to decrypt the file.
EzyFS will offer you the option to use our Key Recovery System. From a security point of view it comes with risks. But its benefits have a real merit too. If you wish to read more about it. Click on this link. The policies to achieve this can be reduced to these main points:
- Keying material that should be recoverable by application
- How and where the keying material will be saved
- Who is responsible for the keying material, this could be an individual, a department, or even a trusted vendor
- Who can request the recovery of a key
- What decisive factors will allow or disallow a key recovery
- Who owns the final decision if the decisive factors are not met
- Audit procedure for the recovery process
- Proper handling and destruction of recovered keying material
- Identification of anyone that should be notified of recovered keying material.
- Procedures to follow if the Key Recovery System has been compromised
EzyFS will offer an easy to use interface to schedule Encryption/Compression jobs. But also, needless to say, the ability to Decrypt/Decompress!
- A GraphQL API to interact with the Backend services.
- You can schedule periodic jobs (you can define them with CRON strings).
- You can update/pause/delete/restart your ongoing jobs.
- You can secure ur backups and sensitive files with EzyFS Asymmetic encryption. You'll be granted your private Key, and the job you launch, delete or do will have your fingerprint on them.
- History of all the actions you take that impact jobs.
- ...
- Key Restoration after it has been corrupt
- Key Revokation
- Reassign a User key to another after that user leaves the company
- Ability to only respond to a certain Pool of IP Adresses ( Preferrably from VPNs )