BOSL or MIT - Orchard

“Those who voted a lot”
“However, creating multiple IDs from one IP and voting would be a problem!”

You realize you seem to be acknowledging multiple community members likely made multiple votes, and you make it sound like your community as a whole didn’t know it’s a problem to cheat in a poll? And then, while I’m hoping this is a translation error, “from one IP and voting would be a problem!” Multiple IDs at all is a problem. This is why the forum poll is unverifiable, and why I continuously tried to have a Helios poll done with ZCAP, which would’ve been fully verified.

This largely invalidates how can we can perceive the community from the recent votes, and the future of the poll as a whole. The timing, proven instance of multiple accounts from a single IP, and the tone used… we also don’t have context available on what the message was ~15h ago which triggered this set of replies. Was it: Go vote for BOSL in this poll? Was it: Everyone should have their opinion be heard, yet I personally prefer BOSL and here’s why? The latter would be perfectly fine, and if this is just translation errors on tone combined with a legitimate expression of a strong community… that’d also be fine. I believe the messages I’ve seen say it was discussed. It’s just difficult to say what anything is since this isn’t verifiable. At all. It’s an somewhat isolated community suddenly appearing with a dramatic shift and some evidence of misbehavior with it.

The fact this poll isn’t verifiable was used to dismiss this poll when it leaned MIT. I solely wanted to use it to prove this needs to be actually turned to the community, as Zooko says it is a community decision, in some verifiable way. I asked Zooko if he’d establish a process, which I even would’ve accepted coin voting for (I would’ve hated it and considered it turning Zcash into effectively a corporation, one whose TM (partially) and copyright are held by a centralized corporation, but it would’ve been a verifiable process).

To be honest, it probably is possible to check if the new accounts (with the same nick with the same IP) actually double voted (or just made multiple accounts for some reason), and do a best guess weigh on if they’re legitimate or duplicates. The issue there is then we have an admin manually deleting vote(s).

While writing this, we have already gone down in total votes by at least 5 (102 voters, 103 votes when I’m writing this and I have a tweet showing 107/108, now 103/104 on my screen). If there’s 3 dozen accounts created, that suggests 1/7 of all new votes are fake, and that’s only those confessing it due to the recent message.

EDIT: Back to 102/103. That suggests AT LEAST 6 votes have been removed, AKA 1/6 if a “few dozen accounts” is correct. If these people voted twice, and left one vote, a further 1/6 is currently correct yet belongs to people who manipulated the poll .-. I would expect any subgroup of people doing fake voting to have one person voting more than twice though, shifting that view. I’d also like to note I said “subgroup” as I truly don’t want to suggest an international community as a whole is wrong. My comment is it looks like a statistically notable percentage did not vote according to the understandings of the poll, manipulating/“cheating” it, and that puts into question how this sudden appearance as a whole can be perceived.

BOSL or MIT - Orchard - #186 by kayabaNerve I did have this list of specific accounts and their opinions, which I created so people could see how notable community members, such as Zooko, Daira, and so on voted. I will add parkkiho and AidenZ for BOSL.

3 Likes

We are all zcash lovers.

I’m providing information for zcash holders in the Korean community.

In our community chat room, there is more conversation going on than the zcash community bulletin board.

Don’t speak ill of our community.

We acknowledged the mistake and asked to correct it again.

Come in and see. We’re not ghosts. We’re all people ^^

8 Likes

The app requires phone + storage + contact permissions and won’t open otherwise :confused: I don’t have a dummy phone on me right now or else I would’ve. It also doesn’t show historical messages when you join a room, from what I understand, which means I unfortunately can’t respond to the existing debate sent back and forth (even if I did know Korean). It is a very large thread here to be quickly summed up over IM though… would you mind commenting on why you support BOSL?

The main argument I’ve seen is about ensuring Zcash isn’t contested with regarding Orchard. The problem is… no one really wants to use Orchard. No one has claimed interest, except potentially Piratechain/Ycash. Neither of those are anywhere close to Zcash and they are fully acknowledged as Zcash alternatives, as far as I know. They’re also doing fine with Sapling, so not getting Orchard won’t be a crippling blow in my opinion. Monero, Zcash’s true competitor in the privacy space… has no interest in Orchard. At all. It has its own new transaction protocol in the works called Seraphis. The only potentially relevant part would be Halo 2 and the ZK circuit code it offers. That’s already MIT and that can’t be undone.

So while Orchard being BOSL isn’t offering notably benefits against Zcash alternatives (in my opinion), and definitely does nothing to Monero… it does harm Zcash. The ZWallet developer who scanned 10k blocks a second left over BOSL. I did shielded atomic swaps and will not integrate Orchard thanks to BOSL. Every single wallet which wants to do shielded transactions will need to move to BOSL, which they may not be able to. This will either damage the ecosystem by reducing projects supporting Zcash, damage the ecosystem by reducing projects supporting shielded Zcash, or simply make the ecosystem more and more dependent on the ECC. A centralized company which can fail. If it goes bankrupt somehow, guess what, its copyright is an asset which can be sold.

The ECC is the only group who can publish updates. Under BOSL, and this corporate exception framework, I can still make my own coin with Orchard so long as its BOSL. But if I make improvements to Orchard, make it 10x faster… the ECC can’t use my code. Why? Because my code is BOSL. If it uses my code, it has to make its work BOSL and can’t grant corporate exceptions. This means Zcashd itself will be. As many organizations only work with code from a specific set of licenses, and that specific set already generally doesn’t include copyleft licenses, what would be the benefit in moving Zcash to a copyleft license with no legal review, which prevents development on Zcash itself to a notable degree, which is incompatible with all established copyleft licenses? This is why there was advocacy for at least doing a BOSL/GPL dual license, so a project could choose which to use but no matter what must open source their work to the space.

Also, I don’t mean to speak ill of your community. I mean to speak ill of its actions which are directly against this forum. While I am frustrated with those actions, and I’m sorry if my words slipped accordingly, I did explicitly say “subgroup” in my edit and my original post never said you didn’t have a strong community. My original post said:

  • The poll isn’t verifiable
  • This seems to be a notable part of your community
  • This notable part has gone against the forums and potentially made the poll untrustworthy/unusable as a whole

It could be some misunderstanding if it’s just common to vote multiple times if you feel strongly in South Korea. I really don’t care to comment on cultural differences no presume anyone from your community meant to do wrong. My comment is that wrong happened and now we have to face it.

EDIT: Here was my post on how even contributions directly to Zcash become extremely problematic BOSL or MIT - Orchard - #223 by kayabaNerve.

Here’s a QEDIT developer, a developer behind the external team bringing ZSAs to Zcash, one of the largest features discussed which could send Zcash far further than internal technical improvements can, advocating for MIT for corporate support and security BOSL or MIT - Orchard - #172 by PabloK.

I really recommend at least reading the latter to see how corporations will actually view and the effects this license actually has against Zcash, while not truly offering benefit.

1 Like

A note for future polls: I found it helpful to make the polls non-anonymous (the forum’s system has an option for that). That lets everyone look at the list of voters and get an inkling for whether these are well-established community members or unfamiliar new accounts.

1 Like

Now we gerrymander rules to get the answer desired and debunk the poll? Some people used to think privacy while voting was important.

My comment was the poll had been proven to be manipulated with the recent influx of votes and we should move to the established, verifiable, and private Helios system over ZCAP.

tromer’s comment is because this is unverifiable, we can turn it into an opinion piece if we remove privacy, such as my above post did, which provides more meaningful data that a poll that has been proven to be manipulated to some degree and may have been manipulated to a further degree.

The expression (manipulation) is undesirable.

The zcash community is open to anyone, and isn’t the word “manipulation” a grandiose expression for the result of only 100 votes?

Welcome to the people who joined the zcash community.

They are our new friends, not manipulator.

2 Likes

An unfamiliar account can also be a Zcash holder.

People are busy.

If you are not a Zcash holder, you will not join the Zcash community and will not vote.

1 Like

It’s undeniable voting multiple times is manipulation. I do not call the people who performed manipulation manipulators to suggest they’re not welcome. I call out that action to make it clear it’s unacceptable, or as you say, undesirable. It’s also potentially as high 1/6 of the votes cast, based solely on those who have already corrected their actions, and this is an important discussion for the community. I also did my best to be clear I appreciate a community sharing their voice, did my best to clarify where I draw lines and my views, and present the arguments thus far.

Yes, BOSL will make life harder for other projects. It will also make life harder for Zcash and prevent other groups from working on it. Independent developers immediately open themselves to liability. QEDIT, who’s doing ZSAs, had a developer say this will make it harder for corporations who likely won’t work with Zcash. hanh, who did ZWallet with Warp Sync, scanning 10,000 blocks a second on their phone, dropped out of Zcash development over this. I, who did shielded atomic swaps, offering private and absolutely secure trades to Zcash holders, will not developer for Zcash anymore thanks to this. Developers at the ECC itself, the organization under Zooko, have publicly stated they disagree with this when they have the most to gain from ZEC going up.

It’s ridiculous to see this painted as forkers trying to take advantage, and it’s ridiculous to to see this subtly painted as anti-Korean sentiment (“They are our new friends, not manipulator”, referring to new accounts on this forum from the Korean community) when I called out the ones who explicitly did manipulate and it’s therefore anti-made-multiple-accounts-to-manipulate-an-unverifiable-poll sentiment (when I’ve even clarified I’m fine with those people staying around and being community members if they no longer manipulate, and since we’ve lost a notable amount of votes… we both had at least a notable amount of manipulation and had a notable amount of honesty which means we now have a notable amount of honest community members ready to put their best foot forward, beyond the members who were honest from the start with the poll).

2 Likes

If Zooko chooses to give the ultimate decision of changing the license to the community, I see 2 routes to resolve this.

  1. Poll ZCAP.

or if the community, or Zooko, or ECC or ZF think ZCAP is not representative,

  1. Reform, and then poll ZCAP.

Having a poll here or selectively quoting tweets or posts is not a good way to poll legitimately the community, Sentiment yes. To make a decision on seemingly such a contentious issue, I dont think so.

Seems to me that Zooko and ECC dont need the talk to the community anything about the license. Its already been discussed and decided a long time ago. This whole debate started with a troll post from a monero influencer, and spiralled out of control.

As it stands now, The licensing isnt going to change.

We can always have theoretical and philosophical discussions about which license would have been a better. The pros and cons of MIT, BOSL, GPL. But the actual license will not change…

Perhaps we should move on…

4 Likes

Ultimately isnt the best way for community decisions staking zec coins? something like below

For major decisions

  1. greater than 50% in number and
  2. greater than 2/3 in value

For non major

  1. greater than 50 % in number
1 Like
  1. Zcash believes that developers/miners/holders/buyers should benefit first
  2. It should help to expand the blockchain ecosystem, but number 1 should be the first priority
  3. Zcash developers/miners/holders/buyers are not charities
2 Likes

It’s complicated. I am not a lawyer and what follows is not legal advice; also I am not speaking for ECC.

The requirement to provide source code licensed under BOSL (and therefore freely usable after 12 months) imposed by clause 1.c of the BOSL license only applies to “distribution or communication” of the derived work. Copyright licenses in general cannot place any restrictions on modification for private use. [Edit: @tromer disputed this and I am no longer sure about it. Note that if this is not true then we have an additional problem, because clause 1.c only grants a (conditional) right of distribution “to the public”, i.e. it assumes that granting a right of distribution other than “to the public” is unnecessary.]

But we can adjust your question to be about the case where zcashd is modified and then redistributed. I believe this analysis also applies to the case where Zebra (or some work based on both zcashd and Zebra) is modified and then redistributed.

Clause 1.c is the only “viral” part of the BOSL license — using “viral” as a technical term in which a copyright license imposes some requirement for its own application (fully or partly) to a derived work. Specifically, it requires you to make an irrevocable offer to license copies of the original and derived source code “to the public free of charge” under BOSL 12 months after the first distribution of the derived work.

This clause does not preclude you from also “distributing or communicating” copies of the derived source code under some other license than BOSL. That is, my interpretation is that you could distribute your derived work of zcashd under a dual MIT/BOSL (or triple MIT/Apache2.0/BOSL) license. This is because clause 1.c only restricts the sublicensing of “said copies”, that is, the source code of the original and derived works that you are obligated to make available under that section. These are not the same as the copies of the derived work that you are originally “distributing or communicating to the public”, which may be under any license compatible with zcashd’s current licensing (per component, i.e. the parts that are currently under MIT may be distributed as MIT, etc.).

That still leaves a critical problem: you can distribute your derived work under any compatible license for each component, but (if you did not relicense the derived work of zcashd/Zebra as BOSL) the only right you have to use the orchard crate that is linked with zcashd/Zebra is via the orchard license exception.

However, once a copy of the zcashd or Zebra source is edited, it ceases to be one of “The Zcash projects published by the Electric Coin Company” or “The Zebra project published by the Zcash Foundation” as described in that exception. And so you cannot use it, without relicensing as BOSL.

This appears to be a bug and not the intended effect. I will repeat here my dismay at the fact that the text of BOSL never went through a technical review by ECC engineers. (I did ask for such a review. I don’t remember the exact response from ECC management, but I was effectively told to leave it to the lawyers. I was skeptical — but at the end of the day, license review is not in our job descriptions, even though I am competent to do it and it would clearly have helped in this situation.)

Note that if the orchard crate were under other copyleft licensing, including GPLv3 or dual BOSL/GPLv3, then a similar argument (different in the detail, but with a similar conclusion) would apply. That is, a widening of the exceptions would solve it in the cases covered by that widening, but dual-licensing orchard as BOSL/GPLv3 by itself would not.

I note, however, that Zooko has already committed ECC (by my reading; still not speaking for either ECC or Zooko) to widening the orchard crate license exceptions to other projects that “support Zcash” and to any Zcash chain fork:

So this may be a somewhat temporary problem, modulo potential arguments about the scope of the widening, although it underlines the necessity of making those changes.

Widening the exceptions plus relicensing the orchard crate as BOSL/GPLv3 still prevents non-BOSL, non-GPLv3 projects using that crate from being open source, because they would not satisfy clauses 6 and/or 8 of the Open Source Definition (they can be open source if they relicense either as fully BOSL, assuming that is compatible with Apache 2.0, or as fully GPLv3):

  1. No Discrimination Against Fields of Endeavor

The license must not restrict anyone from making use of the program in a specific field of endeavor. For example, it may not restrict the program from being used in a business, or from being used for genetic research.

  1. License Must Not Be Specific to a Product

The rights attached to the program must not depend on the program’s being part of a particular software distribution. If the program is extracted from that distribution and used or distributed within the terms of the program’s license, all parties to whom the program is redistributed should have the same rights as those that are granted in conjunction with the original software distribution.

“Field of endeavour” would clearly include the requirements that a project “support Zcash (ZEC)” or be a chain fork of Zcash.

I believe clauses 6 and 8 of the OSD are important, and that is partly why my preference is for the orchard crate to be licensed simply as MIT/Apache 2.0.

5 Likes

Well spotted!

Sock-puppetry is a violation of, at least, the “Etiquette” section of the forum code of conduct (“Please do not … Create and use multiple accounts as sockpuppets.”). While it’s technically possible that these users are logging in from the same IP because they represent different people from the same household or the same ISP that is sharing external IPs, the coincidences of usernames and registration times make it more likely that they are sockpuppets. This is especially problematic if the purpose of the sockpuppetry was to vote multiple times in a forum poll. I would recommend banning or otherwise sanctioning all of these users.

8 Likes

An academic aside:

Crazily enough, it can. Without a license, any duplication of the work is infringement. Even just loading it into RAM or rendering it on-screen. Though you’re more likely to be able to argue fair use (and perhaps an implied license).

But yeah, BOSL talks only about public distribution (broadly construed).

This clause does not preclude you from also “distributing or communicating” copies of the derived source code under some other license than BOSL. That is, my interpretation is that you could distribute your derived work of zcashd under a dual MIT/BOSL (or triple MIT/Apache2.0/BOSL) license. [T]he copies of the derived work that you are originally “distributing or communicating to the public” […] may be under any license compatible with zcashd’s current licensing (per component, i.e. the parts that are currently under MIT may be distributed as MIT, etc.).

Hmm, my reading was different. The initial distribution of the derivative work is permitted, but no permission is given to license it. You’re just allowed to give it to other people. Those other people would be able to run it because they have ECC’s BOSL permissions to use ECC’s work (including this derivation thereof), and also your permissions to use your work (if you grant ppthat).

But you cannot just say, “this joint work is licensed under dual MIT/BOSL” (even if remember to BOSL it 12 mopnths later). That would be a misrepresentation, and probably a contributory copyright infringement. If the downstream recipient believes you, they could just treat the derivative work as if it were MIT-licensed (choosing to ignore the BOSL alternative), act accordingly, and thereby violate ECC’s BOSL license — infringing on ECC’s copyright.

Put otherwise, doing the initial distribution of the derivative work under dual MIT/BOSL is akin to saying “here’s an public-domain copy of Harry Potter with my illustrations”.

It’s unfortunate that BOSL doesn’t explicitly say anything about the license of that initial distribution.

I think it’s important not to just look at the BOSL in terms of what ECC might do. As far as I’m aware anyone has the ability to prosecute.

1 Like

They don’t have permission to run the derived work unless the derived work is one of “The Zcash projects published by Electric Coin Company” or “The Zebra project published by the Zcash Foundation”. So unless you ask ECC or ZF to publish it for you (which would apply if you’re making a PR to upstream), they can’t legally run it.

I disagree. If you license the derived work under MIT/BOSL, then you’ve satisfied clause 1.c, because its source code is available under BOSL immediately. (Technically, you also have to make the original source available, but in the situation we’re discussing it already will be.)

What you haven’t done is provide the sublicensee with the ability to use the orchard crate that is linked with your derived work.

It is not the case that BOSL placed a restriction on your distribution of either the BOSL source code or the non-BOSL code linked with it. On the contrary, the BOSL license insisted on it! To be sure, it insisted on it being “freely available to the public” under the BOSL license (at least), but nowhere does it say that this must be an exclusive license. You cannot redistribute any part of the work with a license incompatible with the original one for that part, but BOSL has no equivalent to GPLv3 clauses 5 b) and 5 c) (“This License gives no permission to license the work in any other way …”).

No, because you can’t distribute the orchard crate under MIT, and by assumption, your derived work depends on the orchard crate. (We have an issue open to explicitly say in dependent projects of the orchard crate that they are relying on the zcashd license exception: Projects that rely on BOSL exceptions should say that they do · Issue #5931 · zcash/zcash · GitHub .)

If you were to remove the dependency on orchard, then you could run it.

1 Like

@daira this is an important point. What allows the contributors to allow GPLv2 code to upgrade to GPLv3? Would BOSL allow all contributors to permissions an upgrade to a BOSLv2?

EDIT: I think I misread your reply. I assume there are no issues there.

BOSL 1.0 itself does not, but the licensing for the orchard crate is “You may use this package under the Bootstrap Open Source Licence, version 1.0, or at your option, any later version.”.

Oh okay. So something that should be fixed in the license? Oh no it shouldn’t be I guess as it’s up to the licensee to decide that.