odelrio

Members
  • Content Count

    11
  • Joined

  • Last visited

Everything posted by odelrio

  1. Thank you, @Alex., for your sincere feedback gathering. First of all, I want to make clear that Sync is an incredible software solution, and I wouldn't spend time on this if I didn't truly believe in it. I don't know what your affiliation or position within Resilio Inc. is, but I would like to think out loud about Sync as a product. Needless to say that I can't and I won't tell you how to run your business. According to Crunchbase, you are a startup company in a very early stage. As far as I know, this kind of company is based on growth, which is understood as continually increasing Key Performance Indicators (e.g.: downloads, monthly active users, user acquisition, income, etc.). For the sake of your users, I honestly wish founders and stakeholders share this vision. In my opinion, the cadence you are delivering new versions and patches is clashing with what I consider a healthy software product development. If it is true that you have "enough" developers–hiring is also growing–, you should definitely embrace agile software development and release smaller builds but at a faster pace. As I see it, in terms of file synchronization you are battling giants like Google, Microsoft or Dropbox. If we just take self-hosted and E2E-encrypted services, the competition is reduced to Owncloud/Nextcloud, Seafile and a very few more. It is worth to mention that Proton is supposed to be also working on a sync service with the same security and privacy standards as they currently do with ProtonMail. Actually, I don't know what Resilio's intentions are and what is the market you are targeting, but if you want to play alongside the top-tier ones, you should let the innovation flow across your whole team. You should also pay attention to your NPS, which I think is heavily affected by the bugs Sync currently has. Just think of how negative it would be to customer satisfaction to come across with a bug that causes data loss. Now, please let me explain my particular case and why I can't rely on Sync as it is today. My usage is personal, so I have a Family Pro license. I want to run Resilio Sync in my home NAS and synchronize my files across all my devices (Windows, Mac, Android, and iOS). My main requirements are: Self-hosted Available in WAN (no VPN) P2P (no trackers or relays) Client-side encryption (untrusted server) Files on-demand (Selective Sync) Share files/folders with my family Now let's imagine I create a new Encrypted folder in my macOS desktop. Then I enable Selective Sync on it, but no peers have my key yet. I put some files on it and in Finder I select Remove from this device. My files are gone forever. Sync doesn't check at all that there's any copy of the file before creating a placeholder, and for sure it wouldn't prevent you from deleting the last existing copy. So, every time I sync a large folder, I have to be 100% sure that all files have been correctly copied into my NAS before freeing space up in my device. Furthermore, in the mobile app, you cannot manually download a file when in mobile data if you have set Allowed network to WiFi only. That makes no sense. The express intent of the user should override this limitation. UI/UX is failing here since the file looks like it's about to download, but it never does. The auto-upload of camera photos can't be done with an encrypted folder. You have to manually create an encrypted folder, then copy the RW key to your mobile device and manually set the path to the DCIM folder, which is not possible in the iOS client. I want everything to be client-side encrypted because of security (my NAS can get compromised) and because of privacy within all the users. Peers with encrypted keys are Read-only. This means that Archive in these peers, or making regular backups of the encrypted files, are quite useless because you can't just recover a file (or the whole directory, since file names are hidden) and send it back to your RW/RO peers. I can't try it right now, but I found --decrypt feature quite buggy, with crashes, "Segmentation fault" errors, 0-bits results or no output at all. Also, my firewall is constantly blocking connection attempts to your trackers or relays, even if I explicitly tell it not to use them in every individual folder and in power user preferences (plus send_statistics set to false). Last but not least, I have had many sync problems, and in the desktop app I can read "Cannot download XXX files", but it doesn't show me which ones until I stop the NAS client. It is quite scary knowing that you might have lost a file. I think it could be that you created a file and you deleted it before it was completely copied (think of a video taken by mistake in a smartphone), but I'm not sure. But what definitively pushed me away from Resilio Sync was "Bad Piece" and "FAILED HASH CHECK" errors between my NAS and my macOS client, which lacks a max sync reattempts policy and ends by clogging my logs and network. That's all that comes to my mind right now, and the reasons I can't use Resilio Sync even if I love it. And so many defects makes me wonder if you do any QA or if you even use your own product in a real-life situation. To sum up, in my opinion there's still a lot of work to do. I think I speak on behalf of most of this forum users of your users if I say we are waiting for a mature production-ready product, and this is where all our concerns come from. We don't want it to die. Thanks for reading. Yours sincerely, Oriol
  2. @Helen It was removed from the docs. Did you rollback? Is it production-ready? I got zero-bytes files when decrypting, so I guess it is not working in all cases.
  3. Thank you, guys! I can't see the app in Google Play yet. Can you provide the APK, please? This is very promising. Let's see.
  4. Hello guys, Consider the following scenario: Peer A creates an encrypted folder and shares an Encryption key with Peer B, so Peer A has the bare files and Peer B has the hashed files. Peer B creates snapshots (backups) of the encrypted files and the application directory where Sync databases lie. All this communication is limited to LAN; no tracker or relay servers. Then imagine: The RW key from Peer A is written down. Peer A is disconnected. Peer C enters the RW key. Would Peer B serve the files? Yes, it does. But now, let's suppose: The RW key from Peer A is written down. A file is created in Peer A. Peer B takes a snapshot of the file and the storage directory. The file is removed from Peer A. Peer B tracks the change by moving the encrypted file to its .sync/Archive directory and updating the databases in the storage directory. Peer A is disconnected. Peer B restores the snapshot, so the removal never happened. Peer C enters the RW key. Would Peer B serve the file that we removed in the step 4? No, it doesn't. Or, at least, Peer C is not receiving it. I have tested it in many ways and I'm still wondering what I'm missing. Is Sync leaking the folder status somewhere outside the storage directory? Has it anything to do with timestamps? I need to find a way to recover the status of an encrypted folder, otherwise I would be making backups for no reason. I will be updating the thread if I discover something else. Thank you.
  5. That is exactly what Selective Sync does. Enable it in the shared folder in the mobile device and then go to Info > Clear instead of using Remove.
  6. Amazing job. Thank you very much, guys!
  7. +1 Or at least, let the user block uploads only.
  8. @RomanZ Is the project active? You guys did an incredible work so far, but there's still much more to do. 1. The way of recovering files and versions is not user-friendly at all. 2. Deleted files can't be recovered from an encrypted peer. I still can't see why is this harder than moving the file back from the Archive and deleting a row in database. 3. "Remove from all devices" doesn't ask for user confirmation and it is very close to "Remove from this device". 4. Accidentally removing a placeholder is a complete disaster if the file only existed in an encrypted peer (think of a NAS). 5. The only way to completely prevent Sync from contacting a tracker is to block the connection via firewall - even so it will keep trying to connect the tracker. 6. In mobile clients, you can't download a file with data connection if you have disabled the sync via data. There are no options like Resilio Sync on the market. Please, don't let it die.
  9. User Story: Manually restoring files from .sync/Archive is not as intuitive as having a GUI. In the initial release it might be as simple as: MyModifiedFile.txt Restore a previous version 2018-04-10 10:30 AM 2018-04-10 10:19 AM 2018-04-09 07:50 PM 2018-04-08 02:00 PM MyDeletedFile.txt Restore file In further iterations it might implement a file preview and/or a comparison view. The most important feature regarding this would be the ability to unset the deleted status in database so the file can be re-uploaded from an encrypted peer. Thank you, guys. You did an incredible job.