-
Notifications
You must be signed in to change notification settings - Fork 279
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
in progress: Experimental Testnet #303
Comments
I'd be in favor of this until there is a new "official" testnet release. It'll make testing Bob and some of our other internal projects much easier. Throwing in my 2c worth for discussion point:
|
@mslipper all of your thoughts pretty much align with exactly how I was thinking as well. I'll work on opening a PR of The only other suggestions I have is that we either A. change ports (to make things easier to run both the old testnet and this one), or B. change the I'm going to spend some time today and tomorrow building out support for multiple networks on hnscan. Will link here when it's done-ish. |
@kilpatty, @mslipper, this sounds good. I really hate running seed nodes. :) I feel like we're probably ready for another testnet: I spent last night getting the new airdrop and faucet trees built (along with some updates to the name list). This was also partially necessary to fix a DoS vector in the goosig RNG (which was present for the entire lifespan of the last testnet). Airdrop recipients are also now limited to 10 keys per account in order to give them plausible deniability with regards to their subtree size (we could opt for a more complicated padding scheme, but it's very tricky). Anyway, airdrops should work on master again. The two things on my mind right now are schnorr and resource serialization. I think I'll merge schnorr in to master tonight. It'd also be nice to move to some simpler resource serialization, but I don't think it's necessary to have before a new testnet. And since this testnet is experimental, we could probably just roll out a new serialization as it's running. That brings me to HNSD: I've been hesitant to merge any new resource serialization in order to avoid the pain of implementing it in HNSD. HNSD is very far behind right now, so I don't think we need it to start a new testnet. It can come into play later. I think #301 and #305 are probably worthwhile. I want to review more of this after I get some sleep (odd schedule right now). |
Just to bump this, I'm planning to merge in multi-network support in hnscan today (HNScan/HNScan#233). Once I get that merged in, hnscan will be able to support the experimental testnet as well as the old one. I'll plan to push up a PR to hsd today merging master into a new branch (experimental-testnet), and we can start working towards launching that most likely next week. Will plan to try to get my airdrop claim PR push up within a day or two as well! |
Outcome of developer call today:
|
Any updates on these efforts? I haven't seen any activity on https://github.com/Handshake-Protocol/hsd |
@tynes I think the simnet work will be based on a branch of hsd, not a new repo. |
Pull Requests can be opened against this branch: https://github.com/handshake-org/hsd/tree/experimental-testnet |
Just an update: the tree has been rebuilt once more. I think it's the last time we will build the airdrop tree (hopefully). I'm finally happy with the scheme. The airdrop tree now pads all subtrees to 16 leaves, creating a perfect merkle tree for each user which shouldn't leak any privacy. Each subtree has an HKDF seed associated with it. The same seed is encrypted to each of the user's keys such that they can regenerate the synthetic leaves to verify that we didn't do anything malicious (like inserting our own keys). The only downside here is that the merkle tree is 4x bigger (~100mb). I hope that's not an issue for recipients, but maybe something we can talk about. We could possibly reduce it to 8 leaves per user, but note that 8 leaves == 4 original user keys. I also put a lot of work into improving goosig. I think it can be considered consensus-ready now. I'm very confident in it. I've pushed some code to commit to all of these tree roots in the genesis block. I'm probably going to be breaking master more often now. |
The experimental testnet was populated with seeds and should be ready to go. https://github.com/handshake-org/hsd/tree/experimental-testnet |
@tynes is it okay to close this issue? The exp-test branch is public and simnet is currently running on its second iteration. |
It may be worthwhile to keep this open, even if only to provide updates on the current status of the simnet for new users, but otherwise I'm down to close this. |
I agree with @kilpatty, we should leave it open so that people don't require tribal knowledge to participate. Updating the name of the issue to remove |
I move (again) to close this issue, I think now its time. Simnet is dead long live mainnet! |
Closing due to inactivity, destruction of the simnet network and launch of MAINET! 🎉 |
I wanted to open up this issue for some discussion on a community run "experimental testnet" after speaking with @tynes.
There have been a number of improvements in hsd that should be tested in a testnet-like ecosystem, mainly the new PoW scheme.
There are also a number of improvements that are "on-the-way" such as Elligator, adjustments to the Airdrop Claim process, and anything else that we think might help Handshake succeed.
I'm proposing a testnet that is run by the community, but is explicitly tagged as experimental - that is, users who are joining this testnet should know that it can break and might be rolled over. As these above improvements feel ready to be included into the experimental testnet, we can either force all seed node operators to update, or roll the chain. The man purpose being to test these experimental updates without launching a new testnet each time.
Discussion Points:
I think we should set a date within the near future to launch this testnet, and then see how it goes. I'm happy to transition HNScan over to it (And keep the old testnet alive as well for the time being).
The holidays are approaching, so I'm going to suggest that we attempt to spin this up before Thanksgiving (And ultimately the next developer call), that being said - it might be in our interest to wait until that call to discuss the above points.
EDIT: Somethings I'd be interested in seeing merged in *before we launch the initial version of this (mainly to prevent the amount of re-rolling).
The text was updated successfully, but these errors were encountered: