openstack team mailing list archive
-
openstack team
-
Mailing list archive
-
Message #08508
Re: Enabling data deduplication on Swift
Hi Joe,
There's one huge difference between page deduplication and object deduplication: Page size is small and predictable, whereas object size is not. Given this, full compares would not be a good way to implement performant object deduplication in swift.
Thanks,
Maru
On 2012-03-10, at 9:57 AM, Joe Gordon wrote:
> Paulo, Caitlin,
>
>
> Can SHA-1 collisions be generated? If so can you point me to the article?
>
> Also why compare hashes in the first place? Linux 'Kenel Samepage Merging', which does page deduplication for KVM, does a full compare to be safe [1]. Even if collisions can't be generated, what are the odds of a collision (for SHA-1 and SHA-256) happening by chance when using Swift at scale?
>
>
> best,
> Joe Gordon
>
>
>
> [1] http://www.linux-kvm.com/sites/default/files/KvmForum2008_KSM.pdf
>
>
> On Fri, Mar 9, 2012 at 4:44 PM, Caitlin Bestler <Caitlin.Bestler@xxxxxxxxxxx> wrote:
> Paulo,
>
>
>
> I believe you’ll find that we’re thinking along the same lines. Please review my proposal at http://etherpad.openstack.org/P9MMYSWE6U
>
>
>
> One quick observation is that SHA-1 is totally inadequate for fingerprinting objects in a public object store. An attacker could easily
>
> predict the fingerprint of content likely to be posted, generate alternate content that had the same SHA-1 fingerprint and pre-empt
>
> the signature. For example: an ISO of an open source OS distribution. If I get my false content with the same fingerprint into the
>
> repository first then everyone who downloads that ISO will get my altered copy.
>
>
>
>
> SHA-256 is really needed to make this type of attack infeasible.
>
>
>
> I also think that distributed deduplication works very well with object versioning. Your comments on the proposal cited above
>
> would be great to hear.
>
>
>
> From: openstack-bounces+caitlin.bestler=nexenta.com@xxxxxxxxxxxxxxxxxxx [mailto:openstack-bounces+caitlin.bestler=nexenta.com@xxxxxxxxxxxxxxxxxxx] On Behalf Of Paulo Ricardo Motta Gomes
> Sent: Thursday, March 08, 2012 1:19 PM
> To: openstack@xxxxxxxxxxxxxxxxxxx
>
>
> Subject: [Openstack] Enabling data deduplication on Swift
>
>
>
> Hello everyone,
>
>
>
> I'm a student of the European Master in Distributed Computing (EMDC) currently working on my master thesis on distributed content-addressable storage/deduplication.
>
>
>
> I'm happy to announce I will be contributing the outcome of my thesis work to OpenStack by enabling both object-level and block-level deduplication functionality on Swift (https://answers.launchpad.net/swift/+question/156862).
>
>
>
> I have written a detailed blog post where I describe the initial architecture of my solution: http://paulormg.com/2012/03/05/enabling-deduplication-in-a-distributed-object-storage/
>
>
>
> Feedback from the OpenStack/Swift community would be very appreciated.
>
>
>
> Cheers,
>
>
>
> Paulo
>
>
>
> --
> European Master in Distributed Computing - www.kth.se/emdc
> Royal Institute of Technology - KTH
>
> Instituto Superior Técnico - IST
>
> http://paulormg.com
>
>
> _______________________________________________
> Mailing list: https://launchpad.net/~openstack
> Post to : openstack@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~openstack
> More help : https://help.launchpad.net/ListHelp
>
>
> _______________________________________________
> Mailing list: https://launchpad.net/~openstack
> Post to : openstack@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~openstack
> More help : https://help.launchpad.net/ListHelp
Follow ups
References