Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Checksums to Verify Up- and Download #2542

Closed
dragotin opened this issue Nov 25, 2014 · 11 comments
Closed

Checksums to Verify Up- and Download #2542

dragotin opened this issue Nov 25, 2014 · 11 comments
Assignees

Comments

@dragotin
Copy link
Contributor

Some storage backends support hash sums of files. These could be used to ensure the files integrity when up- or downloaded between sync client and server. This adds another level of security.

The basic idea is to add a hashsum as HTTP header to GET or PUT and compare on the other communication side. If the numbers do not match, the transmission has to be an error.

@moscicki has drafted a specification: https://github.com/cernbox/smashbox/blob/master/protocol/checksum.md as discussed on a meeting with @DeepDiver1975 and @dragotin.

Tracked in core repo owncloud/core#12417

@guruz
Copy link
Contributor

guruz commented Feb 3, 2015

Another issue where this might help: owncloud/core#13044

@guruz
Copy link
Contributor

guruz commented Mar 26, 2015

Related #3018

@dragotin
Copy link
Contributor Author

There is a client branch already: https://github.com/owncloud/client/tree/checksum_verify

@nekoal
Copy link

nekoal commented Mar 28, 2015

What about perfomance? Checksum calculation need very long time for large files. I tried earlier with using crc32 function in zlib.dll 1.2.3 for my project. Walking directory tree time became 3-4 times longer when checksum enabled for all files include files with size larger than 1 MiB. And I expect md5 hash need more time than crc32. For simple integrity check may be using more fast function as adler32 enough.

@moscicki
Copy link
Contributor

@nekoal: let's see in practice what is the impact. For now I'd say that the choice is yours: screw performance or screw file contents ;-)

@guruz
Copy link
Contributor

guruz commented Aug 5, 2015

Shall we have this for 2.1 ?
Something to discuss on the contributor meetup..

CC @MTRichards

@moscicki
Copy link
Contributor

moscicki commented Aug 5, 2015

@guruz: I assume this functionality is available (but must be explicitly activated in the configuration/branding) in all releases starting with 1.8.0, correct?

@guruz
Copy link
Contributor

guruz commented Aug 5, 2015

@moscicki If things didn't change yes. I just wanted to emphasize that i think the non-CernCloud should have this.. :)
Are you coming to the contributor summit?

@moscicki
Copy link
Contributor

moscicki commented Aug 5, 2015

Cool. Yes!

@MTRichards
Copy link

@guruz Ok, to discuss. In general, I like.

However, I think we should take a look at real tested performance impact...and then depending on those results, make a more informed decision.

@dragotin
Copy link
Contributor Author

dragotin commented Dec 7, 2015

This is outdated, client version 2.1.0 and later have checksums. See #3735

@dragotin dragotin closed this as completed Dec 7, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants