You are reading content from Scuttlebutt
@SoapDog %fLna/Y3K7/pzCGwVvD9HXJlmjFccv3+l4pxvxUYJ2g0=.sha256

Hey #firefox and #scuttlebutt friends,

I just opened a bug at Mozilla Bugzilla asking for them to whitelist the custom protocols used by "ssb", "dat" and "ipfs", "ipns" and "dweb". I also wrote a patch to fix that and added it to the bug. I know the process of contributing patches is not that but I am not really sure how it is, so this a start at least.

Mozilla will need to review the idea of allowing those protocols to be whitelisted. If they do, then our WebExtensions (aka add-ons) will be able to use URLs like "ssb:" instead of the current "ext+ssb" that we're forced to use.

I really appreciate help moving this forward and will post updates as the discussion moves forwards. They might reject the idea and then we'll remain with the current schemes, but, there is no harm in trying. 🦊

I also posted a message to the addons development mailing list explaining the need and would welcome your voices there as well:

https://mail.mozilla.org/pipermail/dev-addons/2018-January/003553.html

Cheers
andre

@Dominic %HNijkf+DTIx+PwjlWyDoqXENP818+oAnZMx7B3GD5tE=.sha256

nice work!

@mix %vt9sysMcLYjxOQszDw6SSrQ7dByojfyQgfWjoBFfnJs=.sha256

ipns D: how do you say that

@mix %nLQ+tXHywjVe0Hejv9JwRkI44RceG9uALmOnOxQFMAI=.sha256

hey @SoapDog I'd love to support your posting there... but I honestly don't know how to use mail... forum.. things like that. How do I simply say "this is an awesome idea" without having to sign up for something and get spammed?

Can I just post about it on twitter and at mention mozilla ... I'll do that

@mix %TNSs2pF572XJMNeIJntZPUceibu4MQoIfMwWMkg+K40=.sha256

here : https://twitter.com/whimful/status/949493089030172672

@SoapDog %KRE8Y/btegPeaa5scOZfPk+lawEaph/Jhd/z5n9VUP0=.sha256

@Dominic , @mix and @andrestaltz ,

I think I got it! Check out https://hg.mozilla.org/mozilla-central/rev/c2cb8a06bcf1 apparently the patch landed on nightly, now the protocols ssb:, dat:, ipfs:, ipns:, dweb: are whitelisted to be taken over by WebExtensions. :smile_cat:

User has not chosen to be hosted publicly
@tim %LEIRXv696m+y5b4ULRzA+3djNGEXahPHbX9c1lFQBm8=.sha256

@SoapDog \o/

@SoapDog %xnWmDMbjh6D78QoXjrfkLrrUQrF72HPkrFlQHQEMVMI=.sha256

Thanks for the kind words @robert and @tim. I don't know when this will end up on stable version (or even beta) but it is a step in the right direction.

User has not chosen to be hosted publicly
@SoapDog %wjQuT50b4B/H9csIJQTlAb1L8ckd4lYVbeIoHpwvqDg=.sha256

@olizilla I posted on that issue on github I am glad that it worked!

Soon we might be able to ship some really nice WebExtensions. I will soon start a campaign for bringing back the TCP and UDP APIs from FirefoxOS to WebExtensions (or something to that effect). That would enable a lot of stuff, specially if we make a webassembly version of libsodium.

@Dominic %4s51Ae3DSzADNydBTp7irMo6eMuIWloFTEsEDxALTj0=.sha256

wow, that was amazingly fast!

@SoapDog there is already a asm.js version of libsodium, libsodium-wrappers wow it's even being actively maintained! so should be fairly straightforward to adapt that right?

User has not chosen to be hosted publicly
@SoapDog %+8SOvq7UqT5JTSJNGXTKi2+h4o/LXXHJer2vyqY+nQU=.sha256

@mnzaki and @Dominic, I think the main pain point is that since the end of the FirefoxOS project, they removed the UDP and TCP APIs which makes it quite hard to gossip. The browser can do HTTP, WS and WebRTC only. This is solvable though, specially if those APIs are exposed only to WebExtensions. It is even ironic that we have WebBluetooth but don't have sockets...

@Dominic %mLxFoP+xnYS/I4P5+gRrLMZMpqIhwg8KWK8K05phCH8=.sha256

Oh, at the time I wrote that there was the asm.js version and a handwritten js version. the asm.js version was really big, so it made the lite client load slower, so the handwritten version felt faster.

I just did a test with the webassembly version... and it's actually fast

I'll tidy this up after I have breakfast but:

operation                        ops/sec ops/ops(hash)
hash_sha256                       313454 1.00 //half as fast as C!
hash                               88393 3.55
auth                               41017 7.64
verify                             44282 7.08
sign_seed_keypair                   8191 38.3
ed25519_pk_to_curve25519            4819 65.0
ed25519_sk_to_curve25519           94427 3.32
--- encrypting 32 byte buffers ---
hash_sha256                       338782 1.00
hash                               95655 3.54
auth                               42039 8.06
auth_verify                        44661 7.59
sign                                7308 46.4
sign_open                           4238 79.9
sign_detached                       7355 46.1
sign_verify_detached                4303 78.7 //can verify 4k signatures per second!
secretbox_easy                     82267 4.12
secretbox_open_easy                77917 4.35
secretbox_open_easy (fail)         57526 5.89
box_easy                            4384 77.3
box_open_easy                       4382 77.3
box_open_easy (fail)                4290 79.0

this performance is totally usable!
I really wish that webassembly didn't fricken load async. There isn't really any reason it needs that and now everything that depends on webassembly needs to load async too.

@andrestaltz %QkPm9rT3H+RKwqjQ3t4M9+3LnxdFt/E17qZZK7zHgw8=.sha256

Exciting! One small step forward, but getting us closer!

User has not chosen to be hosted publicly
@mikey %nd28+Q93vquEsXoRPrQ4ECJJkiRgxD3qVd5G8ufF5ts=.sha256

@SoapDog yay congrats!

as we start playing with the ssb: protocol, a friendly nudge to everyone playing that there are some parallel threads on this topic, like this, %KZOndfL..., %jum01Yi..., and maybe more?

User has not chosen to be hosted publicly
Join Scuttlebutt now