contracts's Introduction
contracts's People
Forkers
3esmit jonnycrunch blockchainlabsnz litianc destenson lukassos fforbeck derekzhang79 xavivives tokenplatform dbenlopers shippable-ls ahmb84 radek1st alexvandesande exulansis lv093 loki-sama holdenchen preetam007 vladmelnyk ethereans arthurmsouza georgebrowncollege-toronto geopaymeinc yanrising isabella232contracts's Issues
Consider security and code quality tools
There are a few security and code quality tools out there at the moment that we should consider for our contracts. There is a great list of existing tools here.
[ENS DApp] Prevent name capitalization
On iOS at least, the name is automatically capitalized. This is an issue as most users won't notice this and fail to use their name.
[ENS DApp] Improve name validation in search screen
[ENS DApp] Rely on Status API
ENS DApp should rely on Status API to automatically fill necessary information.
Cannot have multiple execution approvals pending
From my understanding of this Identity
implementation, since approval requires the current nonce to be equal to the nonce the execution request was stored with, if multiple execution attempts are made (all pointing to the same nonce) after the first approval the current nonce will increase, rendering all subsequent approvals on other pending executions to fail. Am I correct? And if so, is this the desired behavior?
Signing with Web3 for callGasRelayed in IdentityGasRelayed.sol
I am trying to work out what is the appropriate way to sign offline for the _messageSignatures
, in callGasRelayed(...)
, in IdentityGasRelay.sol.
The params dev instruction states "rsv concatenated ethereum signed message". Which web3 "signing" method is used to arrive at these r,s and v values? As I understand, these change with the encodings and
We have:
bytes32 signHash = getSignHash( callGasRelayHash( _to, _value, keccak256(_data), _nonce, _gasPrice, _gasLimit, _gasToken ) );
Where callGasRelayHash is:
_callGasRelayHash = keccak256( address(this), CALL_PREFIX, _to, _value, _dataHash, _nonce, _gasPrice, _gasLimit, _gasToken );
and getSignHash is:
signHash = keccak256("\x19Ethereum Signed Message:\n32", _hash);
so inline, the signHash is equivalent to:
keccak256("\x19Ethereum Signed Message:\n32", keccak256( address(this), CALL_PREFIX, _to, _value, keccak256(_data), _nonce, _gasPrice, _gasLimit, _gasToken ) )
Signatures included in _messageSignatures
are eventually checked against this signHash
using ecrecover, which takes the r,s and v values after extraction from _messageSignatures
.
If the desired transaction to be relayed is of form:
var tx = { _to, _value, _data, _nonce, _gasPrice, _gasLimit, _gasToken }
How best to sign it offchain so the caller of callGasRelayed() has the correct _messageSignatures
?
Update ENS Dapp to access Status contact public key according to new Status js API
In the status-im/status-mobile#5648 we updated Status JS API.
We need to update ENS Dapp accordingly to use new API to access contact public key (when user allow it) so it would be pre-polutated in the Your contact code
editbox
Steps to reproduce:
- In Status App set to Ropsten network open latest version of the ENS Dapp( https://ipfs.infura.io/ipfs/QmfPPPvFMrPbprhbUexdRKomUnSDh9NsTx2Z6fVAsHeWNb/ is the latest at 29th of August 2018)
- On the Pop-Up asking to grand access to profile tap 'Allow'
- Tap 'Let's Go' button
- Search for unique ens name
- Check whether
Your contact code
field pre-populated with the public key of your current account
TF session with video for above steps: https://app.testfairy.com/projects/4803622-status/builds/8572662/sessions/4399737300/?accessToken=j0GveCm9d6c32KjurldJu-iefHk
EmbarkSpec & deployAll are not supported anymore, breaking tests
With git checkout 000-snt-voting-dapp
there appears to be some tests that are deprecated using Embark 3.1.2
:
embark test
...
EmbarkSpec & deployAll are not supported anymore
You can learn about the new revamped tests here: https://embark.status.im/docs/testing.html
> ag EmbarkSpec
test/controlled.js
9: EmbarkSpec.deployAll(contractsConfig, async function(accounts) {
test/DelegationProxyTest.js
43: EmbarkSpec.deployAll(contractsConfig, async function(accountsArr) {
test/erc20token.js
9: EmbarkSpec.deployAll(contractsConfig, async function(accounts) {
test/testtoken.js
12: EmbarkSpec.deployAll(contractsConfig, async function(accounts) {
test/minimetoken.js
27: EmbarkSpec.deployAll(contractsConfig, async function(accountsArr) {
Acceptance criteria
Make embark test
green again with latest version of Embark.
[ENS DApp] Prevent register button to be hidden by wallet address
On some screen sizes (iPhone8) the register
button of search screen is hidden by the wallet address.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.