{"action":"created","issue":{"url":"https://api.github.com/repos/uProxy/uproxy-networking/issues/179","labels_url":"https://api.github.com/repos/uProxy/uproxy-networking/issues/179/labels{/name}","comments_url":"https://api.github.com/repos/uProxy/uproxy-networking/issues/179/comments","events_url":"https://api.github.com/repos/uProxy/uproxy-networking/issues/179/events","html_url":"https://github.com/uProxy/uproxy-networking/pull/179","id":53909880,"number":179,"title":"Soycode copypastecrypto","user":{"login":"soycode","id":587921,"avatar_url":"https://avatars.githubusercontent.com/u/587921?v=3","gravatar_id":"","url":"https://api.github.com/users/soycode","html_url":"https://github.com/soycode","followers_url":"https://api.github.com/users/soycode/followers","following_url":"https://api.github.com/users/soycode/following{/other_user}","gists_url":"https://api.github.com/users/soycode/gists{/gist_id}","starred_url":"https://api.github.com/users/soycode/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/soycode/subscriptions","organizations_url":"https://api.github.com/users/soycode/orgs","repos_url":"https://api.github.com/users/soycode/repos","events_url":"https://api.github.com/users/soycode/events{/privacy}","received_events_url":"https://api.github.com/users/soycode/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2015-01-09T20:15:06Z","updated_at":"2015-01-12T18:30:57Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/uProxy/uproxy-networking/pulls/179","html_url":"https://github.com/uProxy/uproxy-networking/pull/179","diff_url":"https://github.com/uProxy/uproxy-networking/pull/179.diff","patch_url":"https://github.com/uProxy/uproxy-networking/pull/179.patch"},"body":"Ready to look at - you can now, if you choose, use the PGP api to sign/encrypt and verify/decrypt the copy paste payloads. Should be *mostly* self explanatory - you get two new text areas, one with your public key and one for the public key of your friend. You exchange public keys first (so for now, more copy paste) - then when you generate the message it will automatically become a signed/encrypted PGP message, and when you paste your friend's signed/encrypted message it will automatically be decrypted.\r\n\r\nSetup is automatic and right now just a silly test passphrase/user id (that's the same for all instances) - for this to be \"real\" we'd need to pull in a more meaningful id and such, and persist the keys across sessions etc. Still suitable for initial proof of concept I think.\n\n<!-- Reviewable:start -->\n[<img src=\"https://reviewable.io/review_button.png\" height=40 alt=\"Review on Reviewable\"/>](https://reviewable.io/reviews/uproxy/uproxy-networking/179)\n<!-- Reviewable:end -->\n"},"comment":{"url":"https://api.github.com/repos/uProxy/uproxy-networking/issues/comments/69619399","html_url":"https://github.com/uProxy/uproxy-networking/pull/179#issuecomment-69619399","issue_url":"https://api.github.com/repos/uProxy/uproxy-networking/issues/179","id":69619399,"user":{"login":"willscott","id":428199,"avatar_url":"https://avatars.githubusercontent.com/u/428199?v=3","gravatar_id":"","url":"https://api.github.com/users/willscott","html_url":"https://github.com/willscott","followers_url":"https://api.github.com/users/willscott/followers","following_url":"https://api.github.com/users/willscott/following{/other_user}","gists_url":"https://api.github.com/users/willscott/gists{/gist_id}","starred_url":"https://api.github.com/users/willscott/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/willscott/subscriptions","organizations_url":"https://api.github.com/users/willscott/orgs","repos_url":"https://api.github.com/users/willscott/repos","events_url":"https://api.github.com/users/willscott/events{/privacy}","received_events_url":"https://api.github.com/users/willscott/received_events","type":"User","site_admin":false},"created_at":"2015-01-12T18:30:57Z","updated_at":"2015-01-12T18:30:57Z","body":"We could imagine that when keys aren't known, we default to the custom\r\n3-step combined key-exchange / offer answer, and in subsequent interactions\r\nwith a known user you only need the 2 offer/answer steps since keying will\r\nalready be known.\r\n\r\n--Will\r\n\r\nOn Mon Jan 12 2015 at 10:27:39 AM soycode <notifications@github.com> wrote:\r\n\r\n> Thanks, comments addressed and also added a README that hopefully\r\n> addresses the questions from Lucas. So 6 copypastes is an exaggeration\r\n> (that was back when I was also copypasting user ID around), it is 4 (2*public\r\n> key and 2*signaling messages). Will pointed out to me that it could be 3\r\n> (the getting side could bundle public key and their request message\r\n> together), but that would require more tightly coupling crypto setup with\r\n> giver/getter status - something that I think isn't actually desired in the\r\n> \"real world\" use case (where we hopefully just have a better general story\r\n> around key setup/exchange/storage).\r\n>\r\n> Anyway, I tried to document that in the README, but further\r\n> thoughts/feedback most definitely welcome.\r\n>\r\n> —\r\n> Reply to this email directly or view it on GitHub\r\n> <https://github.com/uProxy/uproxy-networking/pull/179#issuecomment-69618841>\r\n> .\r\n>"}}