Postables Payment Channels - Reusable Payment Channels with Micropayments and a dash of Airdrops [Update #2]
Hey Steemit! It's been quite a while since I've made a post, however one of my most popular contracts has recently been updated to include the latest production ready Solidity Compiler, which as of this post is 0.4.24
. Along with this, I've included an Apache-2 license, which means they can freely be used in other projects now, so long as the Apache-2 license is abided by! Along with these new updates, is a renewed development effort to build out a command line client that can use existing Postables Payment Channel contracts, deploy new ones, or interact with them. Previously the only way to interact with the Payment Channels, was to use a very hacky python client. I've switched the language the client is being built around to Golang, which has insane compatibility with smart contracts and the Ethereum blockchain,
AirDropChannels
AirDropChannels uses my modified payment channels, creating a one-to-many
channel, allowing anyone with the appropriately signed message to receive tokens! This is a unique take on the airdrop concept, which normally is very expensive, and massively decreases the cost by an order of magnitude. The person who is starting the airdrop (ie, token creator) pays a maximum amount of $5 of ETH to setup the AirDropChannel. Afterwards, all token redemption is done by the end-user themselves, off-loading the cost onto them. Another neat feature is that one the airdrop is over, any unused tokens are sent back to the Airdrop creators wallet! This leads to immense financial savings as opposed to the usual airdrop methods, which result in unused tokens stuck in peoples wallets, collecting dust for ethernity.
Payment Channels
Included in the repository, is my modified Payment Channels, which allow either ERC20, or ETH payment channels of near unlimited numbers to exist all on a single contract. This means that like the AirDropChannels contract, you do not have to redeploy a new contract for every single payment channel, leading to immense financial savings! These channels also support "Micro Payments" allowing the recipient of a channel, to withdraw micro amounts of the total channel balance. This is extremely useful in cases where you have an employee who wants the assurance that their total salary is actually available, but whom you don't want to be able to withdraw their entire salary right away. Using micropayments, you can issue your employee their payment when it is owed.
What's Next?
Good question! While there is no development roadmap set in stone, you can expect the rough roadmap to proceed as follows:
- Finish the Golang command line client
- Create an easy to use web interface
- Audit the contracts
- Begin work on ChannelsV5 (multi-directional, multi-party, lightning flavoured)
Conclusion
Thanks for reading! I don't post here too often anymore, however all updates for my contracts and programs will be posted here! So upvote, resteem, and follow to stay up to date with all of my latest development efforts.