On Tuesday, May 20, at 9am PDT / noon EDT / 4pm UTC, the Shielded Labs team will be wrapping up Milestone #2 of Crosslink development with an open Test Flight workshop on the Zcash Global Discord. We’ll be guiding participants through running our fork of Zebra in “Mainnet Shadowing Mode,” which uses a BFT chain to achieve consensus on the highest block in the PoW chain that is considered “finalized.” This represents one of the two “links” in Crosslink.
The goal is to introduce Crosslink’s basics, stress-test our early prototype, and have a fun, collaborative call. We’ll start with a brief overview, then guide everyone through configuring, running, and connecting the nodes. We aim to have all nodes in consensus about Mainnet within an hour, and continue the network indefinitely until it comes to a natural end, runs out of memory, or explodes in some other (hopefully informative) fashion.
To participate, please DM me your public IPv4 address (find your IP at WhatIsMyIPAddress) and port. You can join with just a laptop, but running a publicly accessible server will help with network resiliency, as traffic currently needs to be routed through publicly visible nodes.
Linux (Ubuntu 24.04) and Mac builds will be available for download beforehand. We’ll provide additional details on Monday.
Thank you to @Minevg and @vito for putting together an awesome flyer, and @azmr and @aphelionz for their help writing this post.
17 Likes
Excited, will be participating!
5 Likes
Happy to keep a Njal.la server running for this purpose, what specifications are needed, so I don’t pick something under or over powered? VPS 15, 30 or 45?
port? Isn’t the port defined by the application?
1 Like
Edit: my mistake!
no, the public address port is controlled by the configuration file for the application. You’ll need to edit your zebrad.toml file and explicitly provide a public_address
that matches your network / firewall / port forwarding config.
We’ll be handling this during the workshop but you’ll still need to provide an IP and port of your choosing for the roster
2 Likes
All three of nja.la’s vps’s are too weak probably. I wish they were not, 4.5 GiB is a lot of memory! But that is the current situation until some future slimming down of zebra happens.
3 Likes
I think it would be really positive if you would design community projects in a way that is welcoming to people taking seriously the preservation of their anonymity.
Because Njalla servers can be paid with Zcash, they are an easy way to participate without ever connecting one’s legal identity with their community identity.
Although evidently possible to rent servers requiring a legal identity, if you instruct me to give my IP to @aquietinvestor, then it’s perfectly possible for him, directly or in collaboration with LE in his jurisdiction, to get my legal identity.
It’s definitely not an intractable issue. Just like Zcash, think of privacy as something at the core of everything, and design around that. I understand it’s just testing, but that’s not the point so don’t get stuck at that. The point is about being welcoming to anon cypherpunks, so we can finally regain credibility in the privacy world, outside of the nerds sphere.
Yes. I agree. We ought to be able to run on Njalla. Currently we are not able to. This makes me sad just as it makes you sad.
My point is that Njalla compatibility, while great, is not the main objective. Given the incompatibility, the question is what can be done to remain welcoming to anon participants.
For example, @aquietinvestor is asking to communicate him an IP. If you remove this requirement, it becomes possible to participate without ever linking a legal identity with a community identity, even using server providers requiring KYC.
And that is just an example to highlight that it’s about always keeping privacy at the center of everything we do. It’s possible.
1 Like
It’s a thoughtful point.
I want to reassure you that the Shielded Labs team is taking privacy seriously as we work through the Crosslink roadmap. At this point (milestone 2 of 4), we are working with a fixed finalizer roster to test core protocol functionality, and we need to know the roster before we launch the workshop devnet.
The finished implementation will have a dynamic roster that anybody can join from anywhere, without prior coordination or the sharing of identity-linked metadata like IPs.
Also worth noting: The workshop devnet is entirely ephemeral - there will be very little trace of this workshop left once we’re done.
1 Like
Thank you to everyone who joined the Crosslink Milestone #2 workshop on Tuesday. We had more participants running nodes than expected, and many other community members joining as spectators. The demo was a success, and we reached our goal of a minimum viable demo.
Shout out to @samhsmith, @azmr, @aphelionz, and @shielded-nate for making this happen!
For those who couldn’t make it, a recording of the session is now available. We plan to host more workshops like this in the future, so stay tuned!
13 Likes