{"action":"created","issue":{"url":"https://api.github.com/repos/trezor/trezor-crypto/issues/169","repository_url":"https://api.github.com/repos/trezor/trezor-crypto","labels_url":"https://api.github.com/repos/trezor/trezor-crypto/issues/169/labels{/name}","comments_url":"https://api.github.com/repos/trezor/trezor-crypto/issues/169/comments","events_url":"https://api.github.com/repos/trezor/trezor-crypto/issues/169/events","html_url":"https://github.com/trezor/trezor-crypto/pull/169","id":346159694,"node_id":"MDExOlB1bGxSZXF1ZXN0MjA1MDkwOTM2","number":169,"title":"xmr: monero crypto functions, tests","user":{"login":"prusnak","id":42201,"node_id":"MDQ6VXNlcjQyMjAx","avatar_url":"https://avatars2.githubusercontent.com/u/42201?v=4","gravatar_id":"","url":"https://api.github.com/users/prusnak","html_url":"https://github.com/prusnak","followers_url":"https://api.github.com/users/prusnak/followers","following_url":"https://api.github.com/users/prusnak/following{/other_user}","gists_url":"https://api.github.com/users/prusnak/gists{/gist_id}","starred_url":"https://api.github.com/users/prusnak/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/prusnak/subscriptions","organizations_url":"https://api.github.com/users/prusnak/orgs","repos_url":"https://api.github.com/users/prusnak/repos","events_url":"https://api.github.com/users/prusnak/events{/privacy}","received_events_url":"https://api.github.com/users/prusnak/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":23,"created_at":"2018-07-31T12:10:22Z","updated_at":"2018-08-20T15:05:31Z","closed_at":null,"author_association":"MEMBER","pull_request":{"url":"https://api.github.com/repos/trezor/trezor-crypto/pulls/169","html_url":"https://github.com/trezor/trezor-crypto/pull/169","diff_url":"https://github.com/trezor/trezor-crypto/pull/169.diff","patch_url":"https://github.com/trezor/trezor-crypto/pull/169.patch"},"body":"original PR: https://github.com/trezor/trezor-crypto/pull/162\r\n\r\n\r\n- basic crypto in ed25519 (ge, fe, sc) missing from the trezor-crypto, required for Monero.\r\n- Monero specific functions (e.g., sub-address computation, Pedersen commitments, base58 block-based, hash_to_scalar, hash_to_point, derivation to scalar)\r\n- serialization routines - simple variable sized integer serialization\r\n- memory optimized range proof, Borromean.\r\n- tests - should be covered pretty well.\r\n"},"comment":{"url":"https://api.github.com/repos/trezor/trezor-crypto/issues/comments/414349658","html_url":"https://github.com/trezor/trezor-crypto/pull/169#issuecomment-414349658","issue_url":"https://api.github.com/repos/trezor/trezor-crypto/issues/169","id":414349658,"node_id":"MDEyOklzc3VlQ29tbWVudDQxNDM0OTY1OA==","user":{"login":"ph4r05","id":1052761,"node_id":"MDQ6VXNlcjEwNTI3NjE=","avatar_url":"https://avatars2.githubusercontent.com/u/1052761?v=4","gravatar_id":"","url":"https://api.github.com/users/ph4r05","html_url":"https://github.com/ph4r05","followers_url":"https://api.github.com/users/ph4r05/followers","following_url":"https://api.github.com/users/ph4r05/following{/other_user}","gists_url":"https://api.github.com/users/ph4r05/gists{/gist_id}","starred_url":"https://api.github.com/users/ph4r05/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ph4r05/subscriptions","organizations_url":"https://api.github.com/users/ph4r05/orgs","repos_url":"https://api.github.com/users/ph4r05/repos","events_url":"https://api.github.com/users/ph4r05/events{/privacy}","received_events_url":"https://api.github.com/users/ph4r05/received_events","type":"User","site_admin":false},"created_at":"2018-08-20T15:05:31Z","updated_at":"2018-08-20T15:05:31Z","author_association":"CONTRIBUTOR","body":"Just to sum-up discussion with @onvej-sl:\r\n\r\n- `ge25519_eq` don't need to check for `Z==0` as the valid point cannot have `Z==0`. The points can be created only by unpack which does not allow invalid points or by operations which return valid points. We can either note the fact both points for `ge25519_eq` need to be valid in the comments or return `ge25519_check` to the `ge25519_eq` to make it more robust, but quite redundant. Up to discussion.\r\n\r\n- `ge25519_check` works for non-normalized points. There was a misunderstanding of the tests failing and wrong assumptions (scalarmult returns partial points only, not full). I've created new PRs https://github.com/trezor/trezor-crypto/pull/171 https://github.com/trezor/trezor-crypto/pull/172. Whether to use the change I proposed or different possible alternatives is up to discussion. \r\n\r\nCorrect?"}}
{"actor":{"display_login":"ph4r05"}}