GOPHERSPACE.DE - P H O X Y
gophering on hngopher.com
HN Gopher Feed (2017-06-27) - page 1 of 10
 
___________________________________________________________________
Magic-Wormhole - Get things from one computer to another, safely
128 points by lelf
https://github.com/warner/magic-wormhole
___________________________________________________________________
 
astrodust - 32 minutes ago
Extending this to a small text-based GUI with chat could make it a
lot more useful, too. Sort of like a person-to-person BBS.
 
foota - 29 minutes ago
How is the 16 bit wormhole code secure against brute force?
 
  meejah - 19 minutes ago
  Any attacker only gets a single guess
 
    0x0 - 2 minutes ago
    What if there are 65535 active send requests? Perhaps of which
    65534 are opened by an attacker?
 
Thespian2 - 23 minutes ago
Trusting the baked-in rendezvous server would seem to be the most
obvious security "nit," which could be addressed by compiling and
running your own server.  But out-of-the-box, that would seem to be
a weak-point for MitM attack.
 
  [deleted]
 
api - 21 minutes ago
A similar LAN or virtual network oriented
tool:https://github.com/zerotier/toss... and another less magical
one:http://www.fefe.de/ncp/
 
cestith - 17 minutes ago
What's wrong with S/MIME? Email doesn't have to be
unencrypted.Also, you only need to send the public part of an SSH
key to the remote end to set up future keyed connections to that
system.This seems like a solution with very narrow problems to
solve.
 
  prophesi - 5 minutes ago
  Ok, I'll bite. From the project page: "Copying files through
  email first requires transcribing an email address in the
  opposite direction, and is even worse for secrets, because email
  is unencrypted. Copying files through encrypted email requires
  bootstrapping a GPG key as well as an email address."And S/MIME
  is essentially PGP/GPG, except you bootstrap the key from a
  central Certificate Authority. So yes, it's still a hassle.As for
  SSH, how would /you/ place the public key on /their/ remote end?
  That's a bit of a chicken and the egg problem right there, don't
  you think?
 
[deleted]
 
nsxwolf - 14 minutes ago
I would use this just to cut and paste text from my host machine to
my VMs, because I've never been able to get that seemingly simple
concept to work reliably.
 
chx - 13 minutes ago
I like using https://file.pizza/ for this.
 
  d4l3k - 6 minutes ago
  Also https://instant.io/
 
  fiatjaf - 5 minutes ago
  file.pizza always fails, while instant.io doesn't.
 
curtis - 13 minutes ago
> The receiving side offers tab-completion on the codewords...Nice.
 
ohhhlol - 12 minutes ago
> The wormhole library requires a "Rendezvous Server": a simple
WebSocket-based relay that delivers messages from one client to
another. This allows the wormhole codes to omit IP addresses and
port numbers. The URL of a public server is baked into the library
for use as a default, and will be freely available until volume or
abuse makes it infeasible to support.why not make use of
https://docs.syncthing.net/users/strelaysrv.html  ? lots of servers
http://relays.syncthing.net/
 
  lotharrr - 7 minutes ago
  Interesting.. I'll take a look at it. My first thought is that
  magic-wormhole needs a canonical way to allocate "nameplates"
  (the numeric channel identifier at the start of the wormhole
  code), and that's tricky to do in a DHT (I'm assuming syncthing's
  relay server behaves like a DHT).We've got a ticket open
  (https://github.com/warner/magic-wormhole/issues/72) about
  distributing this rendezvous server.. I'll add a note to check
  out syncthing.
 
    ohhhlol - moments ago
    see also- https://docs.syncthing.net/specs/relay-v1.html
 
[deleted]
 
the_cat_kittles - 47 minutes ago
the motivations are great:"Moving a file to a friend's machine,
when the humans can speak to each other (directly) but the
computers cannotDelivering a properly-random password to a new user
via the phoneSupplying an SSH public key for future login use"i had
never even thought about those, and this is a great solution afaik
 
allworknoplay - 6 minutes ago
The security model here is pretty great assuming you trust the
rendezvous server.Maybe consider an optional challenge/response
prompt (like when your pal enters the prompt code, their client
generates a second code that they give back to you) to make sure
nobody's intercepted the request before them, odds aside (if
someone got your initial code somehow, they could definitely man in
the middle the request otherwise).
 
  benzinschleuder - 1 minutes ago
  Could you elaborate why the server has to be trusted (except meta
  data wise)? As I understood, any wrong code guess would reflect
  via "ERROR:  Key confirmation failed.".
 
  lotharrr - moments ago
  If I did things right, the rendezvous server shouldn't get any
  advantage over a network attacker: one guess per invocation of
  the program, 1-out-of-65536 chance of getting it right, 65535
  -out-of-65536 chance of giving you a WrongPasswordError.FWIW,
  there's also a --verify option, which causes the program to print
  out a hex hash of the session key, and wait for you to approve it
  before sending anything. Not as ergonomic, but it removes the
  MitM threat pretty effectively.
 
dang - 4 minutes ago
From 2015: https://news.ycombinator.com/item?id=9953767.
 
grizzles - 4 minutes ago
Cool. Does the data transit the server, or does it do NAT / UPNP
type stuff for direct comms after the initial rendezvous?
 
devindotcom - 4 minutes ago
Nice, this looks useful and extensible! I popped it up on TC, I
like the idea of transferring files wizard-
style.http://techcrunch.com/2017/06/27/magic-wormhole-
is-a-clever-...
 
dak1 - 4 minutes ago
How does this compare to AirDrop (besides obviously being cross
platform)?
 
jedisct1 - 41 minutes ago
Also, Piknik: https://github.com/jedisct1/piknik
 
  lotharrr - 19 minutes ago
  Nice! It might be interesting to use the magic-wormhole API to
  set up the piknik keys. In the long term, I'm pushing magic-
  wormhole to serve as a provisioning tool for other (more
  persistent) connections.
 
  Sphax - 17 minutes ago
  Cool stuff, thanks.
 
schoen - 40 minutes ago
This reminds me of the great tool http://www.fefe.de/ncp/, which
seems like the same thing only without the cryptographic
authentication!
 
  lima - 23 minutes ago
  Why the downvotes? ncp is really useful for hacker space like
  environments.
 
  lotharrr - 15 minutes ago
  Nifty.. I'll look at the network side of that, maybe we can steal
  some ideas. At the moment magic-wormhole depends upon one of:* at
  least one side has a public IP address * both sides are on the
  same (private) LAN * a TURN-like "Transit Relay" server that I
  runThat transit server hasn't gotten a worrysome amount of
  traffic yet, but it's a potential scaling problem. (Fortunately
  the two sides can offer their own transit servers, and they
  negotiate the one to use, so it's also not a difficult scaling
  problem to address).In the long run I'm hoping to get some NAT-
  hole-punching tools, maybe WebRTC, to reduce the need for the
  transit relay somewhat. Also in the long run, if both sides are
  using Tor, then one of then can run an onion service, which gets
  you the NAT-punching for free.
 
    schoen - 8 minutes ago
    If I remember correctly, ncp only works on LANs (using local
    segment broadcast), so it doesn't require either side to have
    any Internet connectivity at all. Your approach would be a lot
    more flexible, but I bet people would also appreciate it if you
    could figure out a LAN-only mode -- for better privacy, and
    when the Internet connection is down. Maybe you could start
    with an ncp-style segment broadcast and then fall back to the
    transit relay server if nothing on the segment answers and
    begins negotiation?
 
      lotharrr - 3 minutes ago
      Yeah, also the two sides can exchange (encrypted) notes about
      their apparent network environment (including their public IP
      address, as reported by the rendezvous server), which might
      give them a clue that they're on the same LAN.Also see
      https://github.com/warner/magic-wormhole/issues/48 for some
      discussion about making things work when you're connected to
      each other but not to the internet, e.g. an ad-hoc wifi
      network. It doesn't work at all now, but it totally should.
 
llamataboot - 36 minutes ago
Waiting for the security nits, but this looks awesome and I have
use cases for it every week
 
  canada_dry - 15 minutes ago
  Ditto.  This would be very useful if it were available on all
  platforms (Android, OIS, Rpi)!
 
    monocasa - 14 minutes ago
    OIS?
 
      rhencke - 3 minutes ago
      You've never used OIS on your oPhine?