{"action":"created","issue":{"url":"https://api.github.com/repos/OpenZeppelin/openzeppelin-solidity/issues/1005","repository_url":"https://api.github.com/repos/OpenZeppelin/openzeppelin-solidity","labels_url":"https://api.github.com/repos/OpenZeppelin/openzeppelin-solidity/issues/1005/labels{/name}","comments_url":"https://api.github.com/repos/OpenZeppelin/openzeppelin-solidity/issues/1005/comments","events_url":"https://api.github.com/repos/OpenZeppelin/openzeppelin-solidity/issues/1005/events","html_url":"https://github.com/OpenZeppelin/openzeppelin-solidity/issues/1005","id":332167012,"node_id":"MDU6SXNzdWUzMzIxNjcwMTI=","number":1005,"title":"Allow contracts to be Invitees of a Bouncer and clean up signature construction","user":{"login":"shrugs","id":1535001,"node_id":"MDQ6VXNlcjE1MzUwMDE=","avatar_url":"https://avatars2.githubusercontent.com/u/1535001?v=4","gravatar_id":"","url":"https://api.github.com/users/shrugs","html_url":"https://github.com/shrugs","followers_url":"https://api.github.com/users/shrugs/followers","following_url":"https://api.github.com/users/shrugs/following{/other_user}","gists_url":"https://api.github.com/users/shrugs/gists{/gist_id}","starred_url":"https://api.github.com/users/shrugs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shrugs/subscriptions","organizations_url":"https://api.github.com/users/shrugs/orgs","repos_url":"https://api.github.com/users/shrugs/repos","events_url":"https://api.github.com/users/shrugs/events{/privacy}","received_events_url":"https://api.github.com/users/shrugs/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":4,"created_at":"2018-06-13T21:15:23Z","updated_at":"2018-06-15T19:16:32Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"## 🎉 Description\r\n\r\ncontinuing the discussion from #973\r\n\r\n---\r\n\r\nvia https://github.com/OpenZeppelin/openzeppelin-solidity/pull/973#issuecomment-396410515 we should just do\r\n\r\n```js\r\nthis.bouncer.contract.checkValidSignatureAndData.getData(\r\n  authorizedUser,\r\n  this.bytesValue,\r\n  this.uintValue,\r\n  '0x00000000000000000000000000000000'\r\n).slice(2, -128);\r\n```\r\n to construct signature data\r\n\r\n---\r\n\r\nI want to explore the idea proposed by @PhABC where a contract can be the authority, but delegate authorizations to other arbitrary logic. This is a pattern that [0x v2 is also adopting](https://github.com/0xProject/0x-monorepo/blob/5b31d0aa3635ea524fb42d73cd6c713887dfef6a/packages/contracts/src/contracts/current/protocol/Exchange/mixins/MSignatureValidator.sol) for allowing the main exchange contract to delegate order acceptance logic to a contract.\r\n\r\n- [x] 📈 This is a feature request.\r\n"},"comment":{"url":"https://api.github.com/repos/OpenZeppelin/openzeppelin-solidity/issues/comments/397717451","html_url":"https://github.com/OpenZeppelin/openzeppelin-solidity/issues/1005#issuecomment-397717451","issue_url":"https://api.github.com/repos/OpenZeppelin/openzeppelin-solidity/issues/1005","id":397717451,"node_id":"MDEyOklzc3VlQ29tbWVudDM5NzcxNzQ1MQ==","user":{"login":"shrugs","id":1535001,"node_id":"MDQ6VXNlcjE1MzUwMDE=","avatar_url":"https://avatars2.githubusercontent.com/u/1535001?v=4","gravatar_id":"","url":"https://api.github.com/users/shrugs","html_url":"https://github.com/shrugs","followers_url":"https://api.github.com/users/shrugs/followers","following_url":"https://api.github.com/users/shrugs/following{/other_user}","gists_url":"https://api.github.com/users/shrugs/gists{/gist_id}","starred_url":"https://api.github.com/users/shrugs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shrugs/subscriptions","organizations_url":"https://api.github.com/users/shrugs/orgs","repos_url":"https://api.github.com/users/shrugs/repos","events_url":"https://api.github.com/users/shrugs/events{/privacy}","received_events_url":"https://api.github.com/users/shrugs/received_events","type":"User","site_admin":false},"created_at":"2018-06-15T19:16:32Z","updated_at":"2018-06-15T19:16:32Z","author_association":"CONTRIBUTOR","body":"yeah, very much like https://github.com/ethereum/EIPs/issues/725"}}
{"actor":{"display_login":"shrugs"}}