Decentralization Research Directions for the Overacheiver: Secure Distributed Hash Tables, P2P SIP, Declarative Networking

0 views
Skip to first unread message

David Nolen

unread,
Mar 8, 2011, 5:48:22 PM3/8/11
to ShiftSpace-dev
Pondering decentralization I've become aware of these various topics. I plan on investigating these in my own time, but perhaps someone else will be inspired by them as well.

Design And Applications of a Secure and Decentralized Distributed Hash Table (MIT 2011!), http://pdos.csail.mit.edu/papers/ctl-phd-thesis.pdf

In order to simplify the development of any such system this approach seems fruitful, Declarative Networking: http://p2.berkeley.intel-research.net/

Not surprisingly Declarative Networking has revived a powerful paradigm called Datalog, a relative of Prolog - http://en.wikipedia.org/wiki/Datalog. Datalog has been going through a renaissance because of its applicability to static analysis, distributed computing, and the semantic web.

David


Mushon Zer-Aviv

unread,
Apr 22, 2011, 3:24:14 PM4/22/11
to ShiftSp...@googlegroups.com

at some point, I would love to try understanding what David was talking about here... :)

Mushon Zer-Aviv
ע Shual.com - design studio
§  ShiftSpace.org - an opensource layer above any website
¶  Mushon.com - blog
× @mushon - Tweet me

--
You received this message because you are subscribed to the Google Groups "ShiftSpace-dev" group.
To post to this group, send email to ShiftSp...@googlegroups.com.
To unsubscribe from this group, send email to ShiftSpace-de...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/ShiftSpace-dev?hl=en.

David Nolen

unread,
Apr 22, 2011, 3:51:55 PM4/22/11
to shiftsp...@googlegroups.com
I'm tracking TeleHash, it covers some of the things I've been thinking about.

David

rory

unread,
Apr 23, 2011, 3:54:55 PM4/23/11
to ShiftSpace-dev
This is all good stuff. Thanks for sharing.

On Apr 22, 3:51 pm, David Nolen <david.no...@gmail.com> wrote:
> I'm tracking TeleHash, it covers some of the things I've been thinking
> about.
>
> David
>
>
>
>
>
>
>
> On Fri, Apr 22, 2011 at 3:24 PM, Mushon Zer-Aviv <mus...@shual.com> wrote:
> >  at some point, I would love to try understanding what David was talking
> > about here... :)
>
> > Mushon Zer-Aviv
> >  [image: ע] Shual.com <http://shual.com> - design studio
> > §  ShiftSpace.org - an opensource layer above any website
> > ¶  Mushon.com <http://mushon.com> - blog
> > × @mushon <http://twitter.com/mushon> - Tweet me

Justin Blinder

unread,
Apr 23, 2011, 4:54:19 PM4/23/11
to shiftsp...@googlegroups.com
hey!

i hadn't seen this thread (glad it got bumped ;) ). i heard jeremie miller talking about telehash at an ignite last year, but it totally went over my head at the time.

i'm currently working on a centralized file sharing network, and am trying to push it over to a p2p decentralized model. i'm still trying to figure out i telehash is an appropriate method for this.

@david
have you managed to build anything using telehash yet (is it stable enough to implement)? also, do you think telehash could potentially be used to distribute/share local computer files, or am i totally missing the point of TH?

cheers,
justin

Mushon Zer-Aviv

unread,
Apr 24, 2011, 2:31:27 AM4/24/11
to ShiftSp...@googlegroups.com

Speaking of hashing stuff as a way of making data exchange P2P…

one piece of data that is usually exchanged in P2P form is the url.


When we share a url like shiftspace.org/shift/3jbhew4 we're relying on our (centralized) server to pull the data corresponding to that key, but if we use something like this:


http://hashify.me/IyBIYXNoaWZ5CgpIYXNoaWZ5IGRvZXMgbm90IHNvbHZlIGEgcHJvYmxlbSwgaXQgcG9zZXMgYSBxdWVzdGlvbjogX3doYXQgYmVjb21lcyBwb3NzaWJsZSB3aGVuIG9uZSBpcyBhYmxlIHRvIHN0b3JlICoqZW50aXJlIGRvY3VtZW50cyoqIGluIFVSTHM/XwoKIyMgRG9jdW1lbnQg4oaUIFVSTAoKSGFzaGlmeSBpcyBkaWZmZXJlbnQgZnJvbSB2aXJ 0dWFsbHkgZXZlcnkgb3RoZXIgc2l0ZSBvbiB0aGUgV2ViIGluIHRoYXQgKipldmVyeSBVUkwgY29udGFpbnMgdGhlIGNvbXBsZXRlIGNvbnRlbnRzIG9mIHRoZSBwYWdlKiouCgpUaGUgYWRkcmVzcyBiYXIgdXBkYXRlcyB3aXRoIGVhY2gga2V5c3Ryb2tlIGFzIG9uZSB0eXBlcyBpbnRvIHRoZSBlZGl0b3IuCgojIyMgQmFzZTY0IGVuY29kaW5nCgpPbmx5IGEgdGlueSBmcmFjdGlvbiBvZiBhbGwgVW5pY29kZSBjaGFyYWN0ZXJzIGFyZSBhbGxvd2VkIHVuZXNjYXBlZCBpbiBhIFVSTC4gSGFzaGlmeSB1c2VzIFtCYXNlNjRdWzFdIGVuY29kaW5nIHRvIGNvbnZlcnQgVW5pY29kZSBpbnB1dCB0byBBU0NJSSBvdXRwdXQgc2FmZSBmb3IgaW5jbHVzaW9uIGluIFVSTHMuCgpUaGlzIHRyYW5zbGF0aW9uIGlzIGEgdHdvLXN0ZXAgcHJvY2VzczogW1VuaWNvZGUgdG8gVVRGLTggY29udmVyc2lvbl1bMl0gYXMgb3V0bGluZWQgYnkgSm9oYW4gU3VuZHN0csO2bSwgZm9sbG93ZWQgYnkgYmluYXJ5IHRvIEFTQ0lJIGNvbnZlcnNpb24gdmlhIFtgd2luZG93LmJ0b2FgXVszXS4KCiMjIyMgRW5jb2RpbmcKCiAgICA+IHVuZXNjYXBlKGVuY29kZVVSSUNvbXBvbmVudCgnw6dhIHZhPycpKQogICAgIsODwqdhIHZhPyIKICAgID4gYnRvYSh1bmVzY2FwZShlbmNvZGVVUklDb21wb25lbnQoJ8OnYSB2YT8nKSkpCiAgICAidzZkaElIWmhQdz09IgoKIyMjIyBEZWNvZGluZwoKICAgID4gYXRvYigndzZkaElIWmhQdz09JykKI CAgICLDg8KnYSB2YT8iCiAgICA+IGRlY29kZVVSSUNvbXBvbmVudChlc2NhcGUoYXRvYigndzZkaElIWmhQdz09JykpKQogICAgIsOnYSB2YT8iCgojIyBVUkwgc2hvcnRlbmluZwoKU3RvcmluZyBhIGRvY3VtZW50IGluIGEgVVJMIGlzIG5pZnR5LCBidXQgbm90IHRlcnJpYmx5IHByYWN0aWNhbC4gSGFzaGlmeSB1c2VzIHRoZSBbYml0Lmx5IEFQSV1bNF0gdG8gc2hvcnRlbiBVUkxzIGZyb20gYXMgbWFueSBhcyAzMCwwMDAgY2hhcmFjdGVycyB0byBqdXN0IDIwIG9yIHNvLiBJbiBlc3NlbmNlLCBiaXQubHkgYWN0cyBhcyBhIGRvY3VtZW50IHN0b3JlIQoKIyMjIFVSTCBsZW5ndGggbGltaXQKCldoaWxlIHRoZSBIVFRQIHNwZWNpZmljYXRpb24gZG9lcyBub3QgZGVmaW5lIGFuIHVwcGVyIGxpbWl0IG9uIHRoZSBsZW5ndGggb2YgYSBVUkwgdGhhdCBhIHVzZXIgYWdlbnQgc2hvdWxkIGFjY2VwdCwgYml0Lmx5IGltcG9zZXMgYSAyMDQ4LWNoYXJhY3RlciBsaW1pdC4gVGhpcyBpcyBzdWZmaWNpZW50IGluIHRoZSBtYWpvcml0eSBvZiBjYXNlcy4KCkZvciBsb25nZXIgZG9jdW1lbnRzLCBIYXNoaWZ5IHNwbGl0cyB0aGUgY29udGVudHMgaW50byBhcyBtYW55IGFzIDE1IGNodW5rcy4gVGhlIGNodW5rcyBhcmUgdGhlbiBCYXNlNjQtZW5jb2RlZCBhbmQgc2VudCB0byBiaXQubHkgaW4gYSBzaW5nbGUgcmVxdWVzdC4gVGhlIGJpdC5seSBoYXNoZXMgY29udGFpbmVkIGluIHRoZSByZXNwb25zZSBhcmUgdGh lbiAicGFja2VkIiBpbnRvIGEgVVJMIHN1Y2ggYXMgW2h0dHA6Ly9oYXNoaWZ5Lm1lL3VucGFjazpnWWkySWUsZzRmcHRlXVs1XS4gRmluYWxseSwgdGhpcyBVUkwgaXMgX2l0c2VsZl8gc2hvcnRlbmVkLgoKSW4gdGhpcyB3YXksIEhhc2hpZnkgaXMgYWJsZSB0byBnZW5lcmF0ZSBzaG9ydCBVUkxzIGZvciBkb2N1bWVudHMgb2YgdXAgdG8gYXJvdW5kIDIyLDUwMCBjaGFyYWN0ZXJzIGluIGxlbmd0aC4gOikKCiMjIEFQSQoKVGhlIGJlYXV0eSBvZiBIYXNoaWZ5IGlzIHRoYXQgaXQgc2ltcGx5IHRyYW5zbGF0ZXMg4oCTIGEgZG9jdW1lbnQgYW5kIGl0cyBVUkwgYXJlIGRlY29kZWQvZW5jb2RlZCB2ZXJzaW9ucyBvZiBfdGhlIHNhbWUgZGF0YV8uCgogICAgZnJvbSBiYXNlNjQgaW1wb3J0IGI2NGRlY29kZQogICAgZnJvbSB1cmxwYXJzZSBpbXBvcnQgdXJscGFyc2UKICAgIAogICAgZGVmIHVuaGFzaGlmeSh1cmwpOgogICAgICAgIHJldHVybiBiNjRkZWNvZGUodXJscGFyc2UodXJsKS5wYXRoWzE6XSkKCkdpdmVuIGEgaGFzaGlmeS5tZSBVUkwsIHRoaXMgUHl0aG9uIGZ1bmN0aW9uIHJldHVybnMgdGhlIGRvY3VtZW50J3MgdGV4dC4KCiAgICA+Pj4gcHJpbnQgdW5oYXNoaWZ5KCdodHRwOi8vaGFzaGlmeS5tZS93NmRoSUhaaFB3PT0nKQogICAgw6dhIHZhPwoKVGhpcyBjYW4gYmUgZG9uZSBpbiBvdGhlciBsYW5ndWFnZXMgaW4gYSBzaW1pbGFybHkgdHJpdmlhbCBtYW5uZXIuCgojIyBIaWRkZW5oYW5jZ W1lbnRzCgogIC0gKipIaXN0b3J5LioqIEEgaGlzdG9yeSBlbnRyeSBpcyBjcmVhdGVkIGVhY2ggdGltZSBvbmUgY2xpY2tzICJTYXZlLiBTaG9ydGVuLiBTaGFyZS4iIHdoaWNoIG1ha2VzIGl0IHBvc3NpYmxlIHRvIHVuZG8vcmVkbyB1c2luZyB0aGUgYnJvd3NlcidzIGJhY2sgYW5kIGZvcndhcmQgYnV0dG9ucy4KCiAgLSAqKlJldmVyc2libGUgdG9vbGJhciBhY3Rpb25zLioqIFRvb2xiYXIgYWN0aW9ucyB0b2dnbGUgc3RhdGUsIHdoZXJlIHNlbnNpYmxlLiBDbGlja2luZyAiaHlwZXJsaW5rIiwgZm9yIGV4YW1wbGUsIHdpbGwgd3JhcCB0aGUgc2VsZWN0aW9uIGFwcHJvcHJpYXRlbHkuIENsaWNraW5nIHRoZSBidXR0b24gYWdhaW4gd2lsbCB1bndyYXAgdGhlIHNlbGVjdGlvbi4KCiAgLSAqKktleWJvYXJkIG5hdmlnYXRpb24uKiogVGFiIHRvIGZvY3VzIHRoZSBlZGl0b3IuIFRhYiBhZ2FpbiB0byBhY2Nlc3MgdGhlIHRvb2xiYXIuCgogIC0gKipUZXh0TWF0ZS1zdHlsZSBoYW5kbGluZyBvZiBtZXRhY2hhcmFjdGVycy4qKiBNYWtlIGEgc2VsZWN0aW9uIGFuZCB0eXBlIGFuIHVuZGVyc2NvcmUgdG8gaXRhbGljaXplLiBIaXQgdW5kZXJzY29yZSBhZ2FpbiBmb3IgYm9sZC4gSGl0IGl0IGEgdGhpcmQgdGltZSB0byBzdHJpcCB0aGUgdW5kZXJzY29yZXMuIFNldmVyYWwgbWV0YWNoYXJhY3RlcnMgYXJlIGF1dG9tYXRpY2FsbHkgcGFpcmVk4oCUaW4gYSBjb250ZXh0LWF3YXJlIG1hbm5lcuKAlGFuZCB jYW4gYmUgb3ZlcnR5cGVkLCBhcyBpbiBUZXh0TWF0ZS4KCiAgLSAqKlByaW50IHN0eWxlIHNoZWV0LioqIEV2ZXJ5dGhpbmcgYnV0IHRoZSBjb250ZW50IGlzIGhpZGRlbiBhbmQgdGhlIHJlbGV2YW50IFVSTCBpcyBpbmNsdWRlZCBhbG9uZ3NpZGUgZWFjaCBsaW5rJ3MgdGV4dC4KCiMjIFNvdXJjZQoKVGhpcyBzaXRlIGlzIHBvd2VyZWQgYnkgU2hvd2Rvd24sIGEgSmF2YVNjcmlwdCBwb3J0IG9mIE1hcmtkb3duIHdyaXR0ZW4gYnkgSm9obiBGcmFzZXIuIE15IFtTaG93ZG93biBmb3JrXVs2XSBpcyBob3N0ZWQgb24gQml0YnVja2V0LCBhcyBpcyBbSGFzaGlmeSdzIHNvdXJjZV1bN10uCgojIyBGZWVkYmFjawoKVG8gc2hhcmUgdGhvdWdodHMgYW5kIHN1Z2dlc3Rpb25zLCBjb250YWN0IG1lIG9uIFR3aXR0ZXI6IFtAaGFzaGlmeV1bOF0gb3IgW0BkYXZpZGNoYW1iZXJzXVs5XS4gRm9yIGJ1ZyByZXBvcnRzIGxvbmdlciB0aGFuIDE0MCBjaGFyYWN0ZXJzLCBoYXNoaWZ5IG1lIGEgZGVzY3JpcHRpb24gb2YgdGhlIHByb2JsZW0uIDspCgoKWzFdOiBodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0Jhc2U2NApbMl06IGh0dHA6Ly9lY21hbmF1dC5ibG9nc3BvdC5jb20vMjAwNi8wNy9lbmNvZGluZy1kZWNvZGluZy11dGY4LWluLWphdmFzY3JpcHQuaHRtbApbM106IGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuL0RPTS93aW5kb3cuYnRvYQpbNF06IGh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vc C9iaXRseS1hcGkvd2lraS9BcGlEb2N1bWVudGF0aW9uCls1XTogaHR0cDovL2hhc2hpZnkubWUvdW5wYWNrOmdZaTJJZSxnNGZwdGUKWzZdOiBodHRwczovL2JpdGJ1Y2tldC5vcmcvZGF2aWRjaGFtYmVycy9zaG93ZG93bi5qcwpbN106IGh0dHBzOi8vYml0YnVja2V0Lm9yZy9kYXZpZGNoYW1iZXJzL2hhc2hpZnkubWUKWzhdOiBodHRwOi8vdHdpdHRlci5jb20vaGFzaGlmeQpbOV06IGh0dHA6Ly90d2l0dGVyLmNvbS9kYXZpZGNoYW1iZXJz


Or simply: http://bit.ly/dXYxGU (by that allowing the users to "host" their data with url shortening service of choice)

We could share the content itself in one self contained, user friendly form that would then be interpreted by the client JS (client-side ShiftSpace plugin or server side proxy), no server involved…


Truth is, this all seems like science fiction to me, but it might be worth considering as an idiot-proof model for P2P


What do you guys think?

Mushon Zer-Aviv
ע Shual.com - design studio


§  ShiftSpace.org - an opensource layer above any website

¶  Mushon.com - blog
× @mushon - Tweet me

Doron Ben-Avraham

unread,
Apr 24, 2011, 2:37:06 AM4/24/11
to shiftsp...@googlegroups.com, ShiftSp...@googlegroups.com
It certainly merits a closer look. Generally though HTTP is a poor protocol to conduct p2p transactions.

Mushon Zer-Aviv <mus...@shual.com> wrote:

>Speaking of hashing stuff as a way of making data exchange P2P…
>
>one piece of data that is usually exchanged in P2P form is the url.
>
>
>When we share a url like shiftspace.org/shift/3jbhew4 we're relying on
>our (centralized) server to pull the data corresponding to that key, but
>if we use something like this:
>
>
>http://hashify.me/IyBIYXNoaWZ5CgpIYXNoaWZ5IGRvZXMgbm90IHNvbHZlIGEgcHJvYmxlbSwgaXQgcG9zZXMgYSBxdWVzdGlvbjogX3doYXQgYmVjb21lcyBwb3NzaWJsZSB3aGVuIG9uZSBpcyBhYmxlIHRvIHN0b3JlICoqZW50aXJlIGRvY3VtZW50cyoqIGluIFVSTHM/XwoKIyMgRG9jdW1lbnQg4oaUIFVSTAoKSGFzaGlmeSBpcyBkaWZmZXJlbnQgZnJvbSB2aXJ0dWFsbHkgZXZlcnkgb3RoZXIgc2l0ZSBvbiB0aGUgV2ViIGluIHRoYXQgKipldmVyeSBVUkwgY29udGFpbnMgdGhlIGNvbXBsZXRlIGNvbnRlbnRzIG9mIHRoZSBwYWdlKiouCgpUaGUgYWRkcmVzcyBiYXIgdXBkYXRlcyB3aXRoIGVhY2gga2V5c3Ryb2tlIGFzIG9uZSB0eXBlcyBpbnRvIHRoZSBlZGl0b3IuCgojIyMgQmFzZTY0IGVuY29kaW5nCgpPbmx5IGEgdGlueSBmcmFjdGlvbiBvZiBhbGwgVW5pY29kZSBjaGFyYWN0ZXJzIGFyZSBhbGxvd2VkIHVuZXNjYXBlZCBpbiBhIFVSTC4gSGFzaGlmeSB1c2VzIFtCYXNlNjRdWzFdIGVuY29kaW5nIHRvIGNvbnZlcnQgVW5pY29kZSBpbnB1dCB0byBBU0NJSSBvdXRwdXQgc2FmZSBmb3IgaW5jbHVzaW9uIGluIFVSTHMuCgpUaGlzIHRyYW5zbGF0aW9uIGlzIGEgdHdvLXN0ZXAgcHJvY2VzczogW1VuaWNvZGUgdG8gVVRGLTggY29udmVyc2lvbl1bMl0gYXMgb3V0bGluZWQgYnkgSm9oYW4gU3VuZHN0csO2bSwgZm9sbG93ZWQgYnkgYmluYXJ5IHRvIEFTQ0lJIGNvbnZlcnNpb24gdmlhIFtgd2luZG93LmJ0b2FgXVszXS4KCiMjIyMgRW5jb2RpbmcKCiAgICA+IHVuZXNjYXBlKGVuY29kZVVSSUNvbXBvbmVudCgnw6dhIHZhPycpKQogICAgIsODwqdhIHZhPyIKICAgID4gYnRvYSh1bmVzY2FwZShlbmNvZGVVUklDb21wb25lbnQoJ8OnYSB2YT8nKSkpCiAgICAidzZkaElIWmhQdz09IgoKIyMjIyBEZWNvZGluZwoKICAgID4gYXRvYigndzZkaElIWmhQdz09JykKICAgICLDg8KnYSB2YT8iCiAgICA+IGRlY29kZVVSSUNvbXBvbmVudChlc2NhcGUoYXRvYigndzZkaElIWmhQdz09JykpKQogICAgIsOnYSB2YT8iCgojIyBVUkwgc2hvcnRlbmluZwoKU3RvcmluZyBhIGRvY3VtZW50IGluIGEgVVJMIGlzIG5pZnR5LCBidXQgbm90IHRlcnJpYmx5IHByYWN0aWNhbC4gSGFzaGlmeSB1c2VzIHRoZSBbYml0Lmx5IEFQSV1bNF0gdG8gc2hvcnRlbiBVUkxzIGZyb20gYXMgbWFueSBhcyAzMCwwMDAgY2hhcmFjdGVycyB0byBqdXN0IDIwIG9yIHNvLiBJbiBlc3NlbmNlLCBiaXQubHkgYWN0cyBhcyBhIGRvY3VtZW50IHN0b3JlIQoKIyMjIFVSTCBsZW5ndGggbGltaXQKCldoaWxlIHRoZSBIVFRQIHNwZWNpZmljYXRpb24gZG9lcyBub3QgZGVmaW5lIGFuIHVwcGVyIGxpbWl0IG9uIHRoZSBsZW5ndGggb2YgYSBVUkwgdGhhdCBhIHVzZXIgYWdlbnQgc2hvdWxkIGFjY2VwdCwgYml0Lmx5IGltcG9zZXMgYSAyMDQ4LWNoYXJhY3RlciBsaW1pdC4gVGhpcyBpcyBzdWZmaWNpZW50IGluIHRoZSBtYWpvcml0eSBvZiBjYXNlcy4KCkZvciBsb25nZXIgZG9jdW1lbnRzLCBIYXNoaWZ5IHNwbGl0cyB0aGUgY29udGVudHMgaW50byBhcyBtYW55IGFzIDE1IGNodW5rcy4gVGhlIGNodW5rcyBhcmUgdGhlbiBCYXNlNjQtZW5jb2RlZCBhbmQgc2VudCB0byBiaXQubHkgaW4gYSBzaW5nbGUgcmVxdWVzdC4gVGhlIGJpdC5seSBoYXNoZXMgY29udGFpbmVkIGluIHRoZSByZXNwb25zZSBhcmUgdGhlbiAicGFja2VkIiBpbnRvIGEgVVJMIHN1Y2ggYXMgW2h0dHA6Ly9oYXNoaWZ5Lm1lL3VucGFjazpnWWkySWUsZzRmcHRlXVs1XS4gRmluYWxseSwgdGhpcyBVUkwgaXMgX2l0c2VsZl8gc2hvcnRlbmVkLgoKSW4gdGhpcyB3YXksIEhhc2hpZnkgaXMgYWJsZSB0byBnZW5lcmF0ZSBzaG9ydCBVUkxzIGZvciBkb2N1bWVudHMgb2YgdXAgdG8gYXJvdW5kIDIyLDUwMCBjaGFyYWN0ZXJzIGluIGxlbmd0aC4gOikKCiMjIEFQSQoKVGhlIGJlYXV0eSBvZiBIYXNoaWZ5IGlzIHRoYXQgaXQgc2ltcGx5IHRyYW5zbGF0ZXMg4oCTIGEgZG9jdW1lbnQgYW5kIGl0cyBVUkwgYXJlIGRlY29kZWQvZW5jb2RlZCB2ZXJzaW9ucyBvZiBfdGhlIHNhbWUgZGF0YV8uCgogICAgZnJvbSBiYXNlNjQgaW1wb3J0IGI2NGRlY29kZQogICAgZnJvbSB1cmxwYXJzZSBpbXBvcnQgdXJscGFyc2UKICAgIAogICAgZGVmIHVuaGFzaGlmeSh1cmwpOgogICAgICAgIHJldHVybiBiNjRkZWNvZGUodXJscGFyc2UodXJsKS5wYXRoWzE6XSkKCkdpdmVuIGEgaGFzaGlmeS5tZSBVUkwsIHRoaXMgUHl0aG9uIGZ1bmN0aW9uIHJldHVybnMgdGhlIGRvY3VtZW50J3MgdGV4dC4KCiAgICA+Pj4gcHJpbnQgdW5oYXNoaWZ5KCdodHRwOi8vaGFzaGlmeS5tZS93NmRoSUhaaFB3PT0nKQogICAgw6dhIHZhPwoKVGhpcyBjYW4gYmUgZG9uZSBpbiBvdGhlciBsYW5ndWFnZXMgaW4gYSBzaW1pbGFybHkgdHJpdmlhbCBtYW5uZXIuCgojIyBIaWRkZW5oYW5jZW1lbnRzCgogIC0gKipIaXN0b3J5LioqIEEgaGlzdG9yeSBlbnRyeSBpcyBjcmVhdGVkIGVhY2ggdGltZSBvbmUgY2xpY2tzICJTYXZlLiBTaG9ydGVuLiBTaGFyZS4iIHdoaWNoIG1ha2VzIGl0IHBvc3NpYmxlIHRvIHVuZG8vcmVkbyB1c2luZyB0aGUgYnJvd3NlcidzIGJhY2sgYW5kIGZvcndhcmQgYnV0dG9ucy4KCiAgLSAqKlJldmVyc2libGUgdG9vbGJhciBhY3Rpb25zLioqIFRvb2xiYXIgYWN0aW9ucyB0b2dnbGUgc3RhdGUsIHdoZXJlIHNlbnNpYmxlLiBDbGlja2luZyAiaHlwZXJsaW5rIiwgZm9yIGV4YW1wbGUsIHdpbGwgd3JhcCB0aGUgc2VsZWN0aW9uIGFwcHJvcHJpYXRlbHkuIENsaWNraW5nIHRoZSBidXR0b24gYWdhaW4gd2lsbCB1bndyYXAgdGhlIHNlbGVjdGlvbi4KCiAgLSAqKktleWJvYXJkIG5hdmlnYXRpb24uKiogVGFiIHRvIGZvY3VzIHRoZSBlZGl0b3IuIFRhYiBhZ2FpbiB0byBhY2Nlc3MgdGhlIHRvb2xiYXIuCgogIC0gKipUZXh0TWF0ZS1zdHlsZSBoYW5kbGluZyBvZiBtZXRhY2hhcmFjdGVycy4qKiBNYWtlIGEgc2VsZWN0aW9uIGFuZCB0eXBlIGFuIHVuZGVyc2NvcmUgdG8gaXRhbGljaXplLiBIaXQgdW5kZXJzY29yZSBhZ2FpbiBmb3IgYm9sZC4gSGl0IGl0IGEgdGhpcmQgdGltZSB0byBzdHJpcCB0aGUgdW5kZXJzY29yZXMuIFNldmVyYWwgbWV0YWNoYXJhY3RlcnMgYXJlIGF1dG9tYXRpY2FsbHkgcGFpcmVk4oCUaW4gYSBjb250ZXh0LWF3YXJlIG1hbm5lcuKAlGFuZCBjYW4gYmUgb3ZlcnR5cGVkLCBhcyBpbiBUZXh0TWF0ZS4KCiAgLSAqKlByaW50IHN0eWxlIHNoZWV0LioqIEV2ZXJ5dGhpbmcgYnV0IHRoZSBjb250ZW50IGlzIGhpZGRlbiBhbmQgdGhlIHJlbGV2YW50IFVSTCBpcyBpbmNsdWRlZCBhbG9uZ3NpZGUgZWFjaCBsaW5rJ3MgdGV4dC4KCiMjIFNvdXJjZQoKVGhpcyBzaXRlIGlzIHBvd2VyZWQgYnkgU2hvd2Rvd24sIGEgSmF2YVNjcmlwdCBwb3J0IG9mIE1hcmtkb3duIHdyaXR0ZW4gYnkgSm9obiBGcmFzZXIuIE15IFtTaG93ZG93biBmb3JrXVs2XSBpcyBob3N0ZWQgb24gQml0YnVja2V0LCBhcyBpcyBbSGFzaGlmeSdzIHNvdXJjZV1bN10uCgojIyBGZWVkYmFjawoKVG8gc2hhcmUgdGhvdWdodHMgYW5kIHN1Z2dlc3Rpb25zLCBjb250YWN0IG1lIG9uIFR3aXR0ZXI6IFtAaGFzaGlmeV1bOF0gb3IgW0BkYXZpZGNoYW1iZXJzXVs5XS4gRm9yIGJ1ZyByZXBvcnRzIGxvbmdlciB0aGFuIDE0MCBjaGFyYWN0ZXJzLCBoYXNoaWZ5IG1lIGEgZGVzY3JpcHRpb24gb2YgdGhlIHByb2JsZW0uIDspCgoKWzFdOiBodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0Jhc2U2NApbMl06IGh0dHA6Ly9lY21hbmF1dC5ibG9nc3BvdC5jb20vMjAwNi8wNy9lbmNvZGluZy1kZWNvZGluZy11dGY4LWluLWphdmFzY3JpcHQuaHRtbApbM106IGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuL0RPTS93aW5kb3cuYnRvYQpbNF06IGh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9iaXRseS1hcGkvd2lraS9BcGlEb2N1bWVudGF0aW9uCls1XTogaHR0cDovL2hhc2hpZnkubWUvdW5wYWNrOmdZaTJJZSxnNGZwdGUKWzZdOiBodHRwczovL2JpdGJ1Y2tldC5vcmcvZGF2aWRjaGFtYmVycy9zaG93ZG93bi5qcwpbN106IGh0dHBzOi8vYml0YnVja2V0Lm9yZy9kYXZpZGNoYW1iZXJzL2hhc2hpZnkubWUKWzhdOiBodHRwOi8vdHdpdHRlci5jb20vaGFzaGlmeQpbOV06IGh0dHA6Ly90d2l0dGVyLmNvbS9kYXZpZGNoYW1iZXJz
>
>
>Or simply: http://bit.ly/dXYxGU (by that allowing the users to "host"
>their data with url shortening service of choice)
>
>We could share the content itself in one self contained, user friendly
>form that would then be interpreted by the client JS (client-side
>ShiftSpace plugin or server side proxy), no server involved…
>
>
>Truth is, this all seems like science fiction to me, but it might be
>worth considering as an idiot-proof model for P2P
>
>
>What do you guys think?
>
>Mushon Zer-Aviv

>ע Shual.com <http://shual.com> - design studio

>§ ShiftSpace.org <http://ShiftSpace.org> - an opensource layer above any

Ximin Luo

unread,
Apr 24, 2011, 1:06:27 PM4/24/11
to ShiftSp...@googlegroups.com

was just going through unread emails and found this. thanks! i'd heard of
whanau before, i'm glad it's still being worked on.

declarative networking seems very cool :) p2 hasn't had any activity since 2007
though?

X

--
GPG: 4096R/5FBBDBCE

David Nolen

unread,
Apr 25, 2011, 11:30:15 AM4/25/11
to shiftsp...@googlegroups.com
On Sat, Apr 23, 2011 at 4:54 PM, Justin Blinder <novat...@gmail.com> wrote:
hey!

i hadn't seen this thread (glad it got bumped ;) ). i heard jeremie miller talking about telehash at an ignite last year, but it totally went over my head at the time.

i'm currently working on a centralized file sharing network, and am trying to push it over to a p2p decentralized model. i'm still trying to figure out i telehash is an appropriate method for this.

I don't see why not.
 

@david
have you managed to build anything using telehash yet (is it stable enough to implement)? also, do you think telehash could potentially be used to distribute/share local computer files, or am i totally missing the point of TH?

cheers,
justin

TeleHash isn't so much a specific implementation as a protocol than anyone can implement. If you look at the GitHub project you'll find implementations in Java, Perl, Erlang, Node.js, etc. 

TeleHash definitely about the decentralized distribution of content. There's another fascinating project called Locker (https://github.com/quartzjer/Locker) built in Node.js which looks really awesome, and from what I can tell TeleHash and Locker are definitely in contact with each other.

David 

David Nolen

unread,
Apr 25, 2011, 11:40:56 AM4/25/11
to shiftsp...@googlegroups.com
On Sun, Apr 24, 2011 at 1:06 PM, Ximin Luo <infi...@gmx.com> wrote:
was just going through unread emails and found this. thanks! i'd heard of
whanau before, i'm glad it's still being worked on.

declarative networking seems very cool :) p2 hasn't had any activity since 2007
though?

X

Yeah I don't think anything is happening with p2, but one of the most active research groups in this field is at Penn State - http://netdb.cis.upenn.edu/ds2/. They're actively working with an interesting company called LogicBlox.

The Penn group showed how the 10,000 lines of MITs Chord DHT http://pdos.csail.mit.edu/chord/ project could be expressed in 48 lines of Network Datalog.

David 

David Nolen

unread,
Apr 25, 2011, 11:59:16 AM4/25/11
to shiftsp...@googlegroups.com
On Sun, Apr 24, 2011 at 2:31 AM, Mushon Zer-Aviv <mus...@shual.com> wrote:

Or simply: http://bit.ly/dXYxGU (by that allowing the users to "host" their data with url shortening service of choice)

We could share the content itself in one self contained, user friendly form that would then be interpreted by the client JS (client-side ShiftSpace plugin or server side proxy), no server involved…


Truth is, this all seems like science fiction to me, but it might be worth considering as an idiot-proof model for P2P


What do you guys think?


Except it's not idiot-proof. People will put their information on centralized services like http://bit.ly over which they have no control. They're certainly not going to be smart enough to setup their own url shortening service. And even if they do that, you still have the very real problem of providing some kind of sane UI for managing this stuff.

I reiterate my view that something looks like DropBox, but that works in decentralized manner is the way to go. Locker is really inspiring here in that it runs as a local service, Locker apps are just ... wait ...

HTML+CSS+JavaScript

Couple Locker with TeleHash and now you have something that really looks like a P2P Web.

David 

David Nolen

unread,
Apr 25, 2011, 1:32:31 PM4/25/11
to shiftsp...@googlegroups.com
On Mon, Apr 25, 2011 at 11:30 AM, David Nolen <david...@gmail.com> wrote:
and from what I can tell TeleHash and Locker are definitely in contact with each other.

Correction Jeremie develops both :) 

Justin Blinder

unread,
Apr 25, 2011, 9:35:09 PM4/25/11
to shiftsp...@googlegroups.com
whoa, Locker looks awesome!  can't wait to start mucking around with telehash. thanks for helping to clear things up!  

Mushon Zer-Aviv

unread,
May 10, 2011, 10:04:20 AM5/10/11
to ShiftSp...@googlegroups.com

from a newsletter I'm subscribed to, please refer to the bolded area. Could this be used as a way of storing an html dump of the shifted page?

Hashify: Store an entire website in a... URL?!

What if you could store an entire website in its own URL? What if you didn’t have to store anything on a Web server unless the user invoked a script that encoded the URL?… This is exactly the idea of David Chamber, creator of Hashify. His tool encodes the entire contents of a page in a URL. As you type HTML into the editor on the website’s page, the address bar updates with each key stroke. Only a tiny fraction of all Unicode characters are allowed to be unescaped in a URL. Hashify uses Base64 encoding to convert Unicode input to ASCII output that is safe for inclusion in URLs. Unfortunately, the tool is vulnerable to HTML injection and XSS by design.

Hashify.me:
          Store entire websites in... URL!

The concept itself is interesting, although not very practical at first glance. Still, some unique possibilities exist. For instance, Hashify is an interesting answer to the problem of how to view cached versions of websites. If you added a hash parameter to the URL, Hashify would be able to display the website even if the page was down, and without the page actually being stored somewhere in cache per se. Perhaps you can build something meaningful on top of it? Hashify’s source is available on BitBucket. (vf)

Mushon Zer-Aviv
ע Shual.com - design studio
§  ShiftSpace.org - an opensource layer above any website
¶  Mushon.com - blog
× @mushon - Tweet me

David Nolen

unread,
May 10, 2011, 2:22:45 PM5/10/11
to shiftsp...@googlegroups.com
On Tue, May 10, 2011 at 10:04 AM, Mushon Zer-Aviv <mus...@shual.com> wrote:

from a newsletter I'm subscribed to, please refer to the bolded area. Could this be used as a way of storing an html dump of the shifted page?


Does it encode stylesheets as well?

David 

Mushon Zer-Aviv

unread,
May 11, 2011, 8:06:35 AM5/11/11
to ShiftSp...@googlegroups.com
I think we can live without encoded stylesheets, they don't change as often as the html and their change would in most cases be less relevant to the shift.

Mushon Zer-Aviv
ע Shual.com - design studio
§  ShiftSpace.org - an opensource layer above any website
¶  Mushon.com - blog
× @mushon - Tweet me


Reply all
Reply to author
Forward
0 new messages