ShadowCloud - klien cloud universal

Saat ini, banyak perusahaan menyediakan layanan penyimpanan cloud, tetapi masing-masing memiliki klien milik sendiri dan fungsinya, sebagai aturan, menyisakan banyak yang diinginkan.
Alternatif yang ada tidak cocok untuk saya karena banyak alasan, jadi saya memutuskan untuk membuat klien universal saya sendiri - shadowcloud


Sesuatu seperti ini:


gambar


Apa yang bisa


  • Unduh langsung (tanpa menggunakan disk lokal) ke Google Drive, Yandex Disk (WebDAV), cloud Mail.Ru, Dropbox
  • Enkripsi penuh secara default, banyak pilihan algoritma dan pengaturan
  • Database yang dilindungi kata sandi
  • Checksum dan Deduplikasi
  • Menghapus batas ukuran file
  • Mereplikasi atau membagi file menjadi repositori yang berbeda
  • Streaming media tanpa batas
  • Membuat pratinjau dan mengekstrak metadata dan teks dokumen
  • File versi dan seluruh struktur direktori
  • Catatan penurunan harga, penyorotan kode
  • Simpan halaman web dengan cepat dengan sumber daya yang disematkan
  • Caching file dalam memori
  • Gunakan sebagai disk lokal menggunakan FUSE (membutuhkan winfsp)
  • Sumber terbuka, hampir setiap aspek dapat dikonfigurasi melalui shadowcloud.conf

gambar


gambar


Bagaimana cara menggunakan


Sebenarnya, repositori


Untuk menggunakannya perlu:


  • Buat kunci enkripsi (nanti Anda perlu mengimpornya di perangkat lain)
  • Siapkan penyimpanan cloud
  • Buat wilayah data dan hubungkan penyimpanan ke sana (ID wilayah harus cocok pada semua perangkat)

gambar


Setelah itu, Anda dapat pergi ke panel dengan file, pilih wilayah dan unggah dokumen.


Sedikit tentang implementasi


Program ini ditulis dalam Scala dan hampir seluruhnya dibangun di atas kerangka Akka (aktor, stream, http, persistence), frontend ditulis seluruhnya di Scala.js.


Bouncy Castle dan libsodium opsional digunakan untuk enkripsi (algoritma default: Blake2b / ChaCha20 / ECIES / ECDSA).


Apache Tika dan JavaCV dikeluarkan dari versi ringan karena ukurannya yang besar, mereka digunakan untuk mengekstraksi metadata dari dokumen dan membuat pratinjau untuk video.

Source: https://habr.com/ru/post/id428523/


All Articles