Skip to content

Features

Serphentas edited this page May 5, 2016 · 22 revisions

To do:

  • Proper authentication over TLS and use scrypt for the password (or another decent KDF)
  • Shared folder
    • To be synced across all devices, whereas content on the DefaultFrame is managed on a per-item(s) basis
  • File/directory sharing via a unique access link, possibly protected by a password
    • ACLs
  • Drag and drop support for both DL and UL (from/to the client)
  • UI adjustments
    • Options menu
    • Populate Preferences menu
  • Benchmarking tool
  • Logging (for crashes, etc.)

Latest commit:

  • Single view on the DefaultFrame (unsynced remote files)
    • Basic functions
      • Upload -> entry under File menu (ctrl+o)
      • Download -> entry under File menu (ctrl+s) or popup menu via file table
      • Delete -> entry under File menu (del) or popup menu via file table
      • Create folder -> entry under File menu (ctrl+n)
      • Move -> popup menu via file table
    • Set a download folder from the Preferences menu, or get asked for one each time
  • On-the-fly encryption/decryption (achieved with GCMCipher)
    • Local files can be sent and retrieved to/from theserver

Release versions:

v0.1:

  • Encryption/decryption of local files

Deprecated features:

  • FTP
    • FTP has been replaced with a custom protocol
  • To be implemented later on Parallelized mode available (causes a memory leak)
    • Each select file will be process by its own Thread, effectively processing all files at the same time
    • Replaced by FTPS authentication Authentication over TLS, using SHA384
      • Two rounds:
        • First, the client sends its username and password over TLS to the authentication server and this one checks for a match. If correct, the client receives a unique random token. Finally, it closes the TLS connection.
        • Second, the user sends its username and the previously received token over TLS to the data server checks. This one checks if an entry username:token exists. If yes, the connection stays open and data may flow. Else it is closed.

Clone this wiki locally