Skip to content

gijzelaerr/FileBender

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

INTRODUCTION
============

This is filebender, the django clone of filesender. I use this for prototyping
things that probably will be implemented into filesender.

BIG FAT DISCLAMER: This is no way production ready, and just a toy thingy.

FileSender and FileBender are client side software to share (large) files over
HTTP using a browser only. It supports large files. FileBender also supports
client side file encryption.


LICENSE
=======
All code in this repo is released under the conditions of the Apache License 2.0
unless indicated infile otherwise.


REQUIREMENTS
============

server:
* Django 1.3

for saml:
    * python-saml2
        * https://code.launchpad.net/~lgs/pysaml2/main
        * http://code.google.com/p/django-saml2-sp/
    * xmlsec1
    * pip install httplib2
    * pip install decorator

client:
* Google Chrome 13+ OR
* Mozilla Firefox 6+ OR
* Safari 6+ (probably, not yet released)
* Internet Explorer 10+ (probably, not yet released)

Not working:
* Safari 5
* Internet Explorer 9
* Opera (11.52/11.60)
* Firefox 8, somehow the webwokers stopped working.

notes:
* Google Chrome 15 seems te be really slow while encrypting in a worker thread. This seems to be solved in the current
  dev version (17).
* There is a memory leak in Firefox (probably) in FileReader that inflates memory usage while encrypting.
* Safari 5 can't slice blobs
* Internet Explorer lacks the complete File API
* Opera misses the XMLHttpRequest FormData stuff (XMLRequest level 2)
* Firefox 7 and 8 can't load a webworker from localhost, this is probably solved in ff9


CREDITS
=======

This project uses:
 * Django
 * Stanford Javascript Crypto Library http://crypto.stanford.edu/sjcl/
 * Downloadify (https://github.com/dcneiner/Downloadify)


PERFORMANCE
===========

Encryption speed at 5MB chunks with default crypt settings is about 1.8MB/s
on a Intel 2500K met 16GB mem with Google Chrome. Upload doesn't require
a lot of memory, but download does. This is because the file needs to be
reconstructed in memory. Maybe LocalStorage Javascript can solve this in the
future.

About

HTTP File upload & sharing. Django clone prototype of FileSender

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors