{"action":"created","issue":{"url":"https://api.github.com/repos/tendermint/tendermint/issues/1044","repository_url":"https://api.github.com/repos/tendermint/tendermint","labels_url":"https://api.github.com/repos/tendermint/tendermint/issues/1044/labels{/name}","comments_url":"https://api.github.com/repos/tendermint/tendermint/issues/1044/comments","events_url":"https://api.github.com/repos/tendermint/tendermint/issues/1044/events","html_url":"https://github.com/tendermint/tendermint/pull/1044","id":285236741,"number":1044,"title":"WIP: Priv Validator Refactor","user":{"login":"ebuchman","id":2300911,"avatar_url":"https://avatars3.githubusercontent.com/u/2300911?v=4","gravatar_id":"","url":"https://api.github.com/users/ebuchman","html_url":"https://github.com/ebuchman","followers_url":"https://api.github.com/users/ebuchman/followers","following_url":"https://api.github.com/users/ebuchman/following{/other_user}","gists_url":"https://api.github.com/users/ebuchman/gists{/gist_id}","starred_url":"https://api.github.com/users/ebuchman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ebuchman/subscriptions","organizations_url":"https://api.github.com/users/ebuchman/orgs","repos_url":"https://api.github.com/users/ebuchman/repos","events_url":"https://api.github.com/users/ebuchman/events{/privacy}","received_events_url":"https://api.github.com/users/ebuchman/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":3,"created_at":"2017-12-31T02:59:24Z","updated_at":"2017-12-31T16:21:44Z","closed_at":null,"author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/tendermint/tendermint/pulls/1044","html_url":"https://github.com/tendermint/tendermint/pull/1044","diff_url":"https://github.com/tendermint/tendermint/pull/1044.diff","patch_url":"https://github.com/tendermint/tendermint/pull/1044.patch"},"body":"https://github.com/tendermint/tendermint/issues/673\r\n\r\nHard to see the changes because I busted up the file into its own package, but it should be much easier to read through now.\r\n\r\n@silasdavis @wrl @ethanfrey @adrianbrink @melekes "},"comment":{"url":"https://api.github.com/repos/tendermint/tendermint/issues/comments/354612514","html_url":"https://github.com/tendermint/tendermint/pull/1044#issuecomment-354612514","issue_url":"https://api.github.com/repos/tendermint/tendermint/issues/1044","id":354612514,"user":{"login":"ebuchman","id":2300911,"avatar_url":"https://avatars3.githubusercontent.com/u/2300911?v=4","gravatar_id":"","url":"https://api.github.com/users/ebuchman","html_url":"https://github.com/ebuchman","followers_url":"https://api.github.com/users/ebuchman/followers","following_url":"https://api.github.com/users/ebuchman/following{/other_user}","gists_url":"https://api.github.com/users/ebuchman/gists{/gist_id}","starred_url":"https://api.github.com/users/ebuchman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ebuchman/subscriptions","organizations_url":"https://api.github.com/users/ebuchman/orgs","repos_url":"https://api.github.com/users/ebuchman/repos","events_url":"https://api.github.com/users/ebuchman/events{/privacy}","received_events_url":"https://api.github.com/users/ebuchman/received_events","type":"User","site_admin":false},"created_at":"2017-12-31T16:21:44Z","updated_at":"2017-12-31T16:21:44Z","author_association":"CONTRIBUTOR","body":"> What is the purpose of PrivValidatorStore\r\n\r\nA place to store the actual priv key, so eg. it can be encrypted on disk. This might go away though.\r\n\r\n> Also, shouldn't CarefulSigner be rather a struct that implements PrivValidator\r\n> I'm not quite following the full idea with CarefulSigner\r\n\r\nCarefulSigner is the thing that prevents double signing. In this issue, Silas mentioned a `Verifier` interface - that's what this is. It decouples signing from the verification. For instance, you could use a ledger for just the signing, but still use our LastSignedInfo to prevent double signing. Or you could use the ledger to implement both.\r\n\r\n> Couldn't we remove the Signer interface and just let the client implement PrivValidator\r\n\r\nPossibly, but at least for now that would spoil CarefulSigner\r\n\r\n> I am wondering though how it would work with moving the signing logic into a Thales HSM.\r\n\r\nThe HSM would implement Signer and CarefulSigner\r\n\r\n> Either we have a finite list of supported signers hardcoded in Core and then try to figure out which one to use through a config option or Core expects a signer to be available behind some socket so that way in the config you can specify a socket address and Tendermint Core will just send the bytes to sign that way.\r\n\r\nBoth of these sounds pretty good. Let's start with a list of supported things (unencrypted, encrypted, ledger, thales) and then open it up to a socket.\r\n"}}
{"actor":{"display_login":"ebuchman"}}