These are chat archives for ethersphere/orange-lounge

14th
Sep 2017
Zahoor Mohamed
@jmozah
Sep 14 2017 05:38
@zelig i have covered almost all of the issues raised by @lmars .. I think we wre ready to push the pyramid chunker...
Viktor Trón
@zelig
Sep 14 2017 10:39
@jmozah I do not see then, many comments have no changes
Zahoor Mohamed
@jmozah
Sep 14 2017 10:41
many were just questions and in answered them… other i fixed and pushed it already and squashed...
if you still feel some of them are not fixed.. let me know which one
Viktor Trón
@zelig
Sep 14 2017 10:43
when you introduced a mutex, but you dont use it, have you tested?
you left the t.fatal call in the goroutine etc
please look at the open comments, the ones you addressed are closed, github is pretty smart ;)
Zahoor Mohamed
@jmozah
Sep 14 2017 11:31
i use a mutex… let me see
i missed out t.fatal.. other then that everything is closed or answered.. github is not that smart...
:-)
btw i tested and benchmarked it… it is slightly slower after adding the mutex which is expected..
Zahoor Mohamed
@jmozah
Sep 14 2017 12:23
@zelig pushed that too..
Viktor Trón
@zelig
Sep 14 2017 12:56
could we have the standupat 4pm?
Zahoor Mohamed
@jmozah
Sep 14 2017 12:59
which is 1 hour from now?
Viktor Trón
@zelig
Sep 14 2017 13:00
yes
Zahoor Mohamed
@jmozah
Sep 14 2017 13:00
ok
holisticode
@holisticode
Sep 14 2017 13:00
Not possible for me
Have commitment in an hour
Available now
@zelig so definitively postponed for in 1 hour from now?
Viktor Trón
@zelig
Sep 14 2017 13:05
ok lets get on the call then
holisticode
@holisticode
Sep 14 2017 13:05
:+1:
Viktor Trón
@zelig
Sep 14 2017 13:09
my laptop has no mic, and my mobile has other problem...
grr
holisticode
@holisticode
Sep 14 2017 13:10
haha
well let's have a quick chat?
Viktor Trón
@zelig
Sep 14 2017 13:10
could you make non ethereum hangout please?
open PR
ethereum/go-ethereum#15139
holisticode
@holisticode
Sep 14 2017 13:27
@/all everyone invited to feedback on diagram above
it is meant to help visually explain viktor's paper
lash
@nolash
Sep 14 2017 13:28
@holisticode why does the benefactor has a tie? ;)
s/has/have/
holisticode
@holisticode
Sep 14 2017 13:28
hahahaa
you know I didn't even explicitly look at the icons!
it could be you though ;)
for reference, this is @zelig's paper
lash
@nolash
Sep 14 2017 13:30
me? white shirt blue tie? Dude!
holisticode
@holisticode
Sep 14 2017 13:35
hmmm we need to complain to libreoffice so they provide more colorful individuals
Aron
@homotopycolimit
Sep 14 2017 13:37
there are seldom used HTTP codes... but it seems like just the right one here.
holisticode
@holisticode
Sep 14 2017 13:37
I agree!
Aron
@homotopycolimit
Sep 14 2017 13:37
there is also a "payment required" original HTTP code that never found use... but maybe we will find use for it before long
holisticode
@holisticode
Sep 14 2017 13:37
402 I think it is? - yes
Aron
@homotopycolimit
Sep 14 2017 13:38
sorry. gitter put me in this channel. i was of course referring to our convo in the other chat. (sorry everyone for out-of-context writing).
gitter is strange.
.... 402. could be.
for context, we were discussing code 300 here: ethereum/go-ethereum#15139
holisticode
@holisticode
Sep 14 2017 13:40
The W3C web payments working group has been discussing to use it (402 Payment Required) for a while
Daniel A. Nagy
@nagydani
Sep 14 2017 14:15
Where is the diagram?
I have a google tech talk on 402 from a few years back, BTW.
holisticode
@holisticode
Sep 14 2017 15:01
Oh interesting
@nagydani the diagram is just a few posts above, the last of the day before this one (in my timezone)
It is a simple diagram, idea is to settle on icons, esthetics, layout etc before producing more
Daniel A. Nagy
@nagydani
Sep 14 2017 15:11
I see.
Meanwhile, I have updated the encryption gist:
https://gist.github.com/nagydani/d0ca1a6c316931430e3ba55a9f820b09
Now it describes both the block cipher and stream cipher alternatives together with the tradeoffs they involve.
Viktor Trón
@zelig
Sep 14 2017 15:22
thanks @nagydani
pretty please always check the CI errors
Zahoor Mohamed
@jmozah
Sep 14 2017 16:29
@zelig oh yeah i do.. i takes few hours to get completed in the evenings...
go install -v ./cmd/swarm succeeds in my local machine.. is there any other way to find these before i push
Lewis Marshall
@lmars
Sep 14 2017 16:43
@jmozah you should run go vet on the packages you have changed (see https://golang.org/cmd/vet/)
Zahoor Mohamed
@jmozah
Sep 14 2017 16:44
Thanks @lmars
@lmars once more help… can you check the mutex code i added and see if things are okay.
Lewis Marshall
@lmars
Sep 14 2017 16:50
sure I'll take a look this evening
Zahoor Mohamed
@jmozah
Sep 14 2017 16:53
Thanks
holisticode
@holisticode
Sep 14 2017 19:31
I usually run this before submitting a PR:
build/env.sh go run build/ci.go test
is this equivalent to what the Travis build does or is it not sufficient?
RJ Catalano
@VoR0220
Sep 14 2017 19:32
@nagydani @zelig forgive my lack of knowledge on cryptography, but would symmetric encryption disenable us to encrypt information for multiple receivers? Say Alice wants to give secret X to Bob and Clarence via the Swarm cloud. Does this not kill this off?
holisticode
@holisticode
Sep 14 2017 19:37
"In this case, authorized parties must be in possession of the corresponding decryption key, while unauthorized parties must not"
I would interpret this to mean that whoever has access to the keys is able to access the secret information
Thus, no, using symmetric encryption would not prevent information to be encrypted for multiple receivers
Synmetric in cryptography does not mean that only two parties are involved, but that the same key is used to encrypt and decrypt (vs.asymmetric, which uses a private key and a public key)
RJ Catalano
@VoR0220
Sep 14 2017 19:49
Right, but if that’s the case, how do we efficiently trade the key?
Say I’m an admin only giving access permissions to these files, would it be smarter for me to reencrpyt something for multiple addresses and just “+1” the list of keys that can decrypt it? Or would it be smarter for me to pass the key onto other people who I cannot trust to give it to an unauthorized party?
holisticode
@holisticode
Sep 14 2017 19:52
not sure I understand
RJ Catalano
@VoR0220
Sep 14 2017 19:53
So I have a group of people with access to a blob of files, right?
holisticode
@holisticode
Sep 14 2017 19:53
reencrypt with a diifferent key?
RJ Catalano
@VoR0220
Sep 14 2017 19:54
Reencrypt it with same key but with different people who can read it…I would think would be the way? I could be off I’m just going based off of what you can do with GPG.
holisticode
@holisticode
Sep 14 2017 19:54
welll if it is the same key why reencrypt?
same key yields same result
RJ Catalano
@VoR0220
Sep 14 2017 19:55
Sure, you just encrypt it for the newly joined member.
holisticode
@holisticode
Sep 14 2017 19:55
(unless a different salt is used)
RJ Catalano
@VoR0220
Sep 14 2017 19:56
Is my use case making sense? Am I wrong that people with traded key cannot be trusted to pass it off to other individuals?….ah wait…same problem persists…but at the very least they would have to pay for it in this scheme if they were to re upload.
so it’s a disincentive to share it.
atleast assuming over this medium.
holisticode
@holisticode
Sep 14 2017 19:57
you can re-encrypt of course, limits problems you describe
at the cost of more complex key mgmt
I'd say this is at your discretion
generally one is responsible for key mgmt, not sure swarm will provide higher level facillity
RJ Catalano
@VoR0220
Sep 14 2017 20:00
…yea I can probably make something whereby an assymetric key system can work in tandem with a symmetric key system. Symmetric is “master key” and you can only get it if you’ve been passed it assymetrically encrypted to the swarm.
holisticode
@holisticode
Sep 14 2017 20:01
sounds like a good plan, addresses key distribution mechanism
for swarm, the symmetric mechanism is what encrypts the content
but the asymmetric part would probably be outside swarm's realm
RJ Catalano
@VoR0220
Sep 14 2017 20:04
correct. Or atleast be something to user’s discretion. Probably would make a nice plugin.
holisticode
@holisticode
Sep 14 2017 21:07
@lmars I believe i have identified the issue with the snapshot
it happens if the one of the nodes in the snapshot is down (Up = false)
Load correctly loads the nodes and only boots the Up ones
but it then fails in during Connect
in nodesUp(), self.one.Up is false, producing the "one ID is not up" Error
holisticode
@holisticode
Sep 14 2017 21:12
now, either the snapshot is wrongly produced (if a node is NOT up, then no Conn to that node should be Up, or what's even the point of including a Node down in a snapshot)
or we can have an additional check on Load:
for _, conn := range snap.Conns {
    c := self.GetConn(conn.One,conn.Other)

if c== nil {
      continue
    }
    if err:= c.nodesUp(); err != nil {
     continue
    }
        if err := self.Connect(conn.One, conn.Other); err != nil {
            return err
        }
    }
    return nil
}
(this may have a more elegant way)
or we may need both fixes
or my analysis is wrong
:)
holisticode
@holisticode
Sep 14 2017 21:19
another question regards the frontend:
if a snapshot is uploaded, do we then need to start the mocker as well?
or should it just upload the snapshot
or it could be optional