eitan-lev / depositcontract Goto Github PK
View Code? Open in Web Editor NEWPayment channels using Solidity and SGX. Truffle for tests and infrastructure
License: GNU General Public License v3.0
Payment channels using Solidity and SGX. Truffle for tests and infrastructure
License: GNU General Public License v3.0
Since the code uses libraries that are currently under the GNU license (like the solidity code or web3 library) we must use the GNU license too.
When withdrawing both parties' funds, the factory.removeDeposit()
is called, then delete deployedDeposits[(depositsCreators[msg.sender])]
is done.
This deletes all the contracts belonging to sender, instead of just the specific one.
Tricky to fix- we work with an array, and don't want to leave an empty cell in the middle.
Need to separate the simulator contract from the deposit contract.
Also requires updating compile.js file to successfully handle this.
Whenever you view a channel and look into its "show" page (that contains all the details about a channel) the called checks the address of the caller to see whether it is the initiator or the counterpart of the channel.
After this check, the buttons that appear correspond to the check result. After refreshing the page, this check is not performed again and the user will appear as "other" to the contract.
A possible reason for that is that the code for checking the user is located inside getInitialProps function.
Currently minimal fee is enforced with require inside the method.
Use modifier costs
instead, to match common code convention.
Implement in all relevant functions.
Is your feature request related to a problem? Please describe.
Currently, when we look at contracts we can only refer to them using their addresses.
Describe the solution you'd like
It would be more convenient if we could add a text to each contract, so when we look at our contracts we will see the description of it.
Describe alternatives you've considered
Another option is to add a field to the contract itself, that will be updated by initiator and will be managed on the blockchain. I find this idea not as good since it adds overhead of writing to the blockchain.
Additional context
I believe the description should be unique to each party, such that the initiator and the counterpart will be able to set different names.
Note 1: This text should not be kept on the blockchain.
Note 2: This issue was edited to fit the new "feature request" template.
After a channel is closed, we perform a self destruct to its contract. Due to that, we cannot re-route to the "show" page, since the contract no longer exists and it will show nothing.
This issue needs to be addressed, because we still want the user to view data for at least a little after.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.