As I hinted in a previous post on the Forum, which (for some mysterious reason) has been deleted by the moderation, I announced the sunsetting of the ICPP protocol.
However, some people have argued that it would benefit the community to make it open source. After much thought and in the spirit of trying to contribute openly to the ecosystem, I have decided to do so.
You can find the repository here
Licensed under BSL 1.1, because too much effort and hours have been sunk into it. I hope the likes of @infu and other developers can enhance it, tweak it, expand it and test it. It’s certainly not free from issues; no code ever is. If developers want to contribute, just let me know.
As a sidenote, it worries me that another thread was also censored (What’s DOM’s next big hype?) after it turned into a fistfight of insults and accusations. That is unfortunate as some relevant discussions were posted there, but so be it.
An additional note: ICPP is a serious, technically ambitious project. It’s not a toy or quick prototype: as you will see in the repo, it’s a full protocol implementation involving multiple canisters, Rust backend components, Motoko logic, and a TypeScript frontend.
Seasoned developers should be able to handle it without much ado, but I would say be careful otherwise. Privacy protocols use advanced math, hence are complex. Wouldn’t suggest anyone to Caffeinate their way though it.
The arXiv paper with the theory is available but the code may deviate at some parts from it. I honestly don’t have much time to lecture on those deviations and why (most associated to performance issues and ICP’s own architectural constraints).
Anyway, hope you find it useful. DFINITY didn’t, sadly.
I think this is the rightfull way for atleast all the projects on #icp@DoxaFoundation will soon open source @doxausd for community reviews and contributions
I would say it depends on context. There are OS and commercial projects on ICP, and no-one should be forced to OS their stuff just because it’s built on ICP. Hey, even DFINITY holds patents on core technologies used on the ICP tech stack.
The decision is up for each developer to judge. My judgement was that, at this point in time, OS’ing ICPP was the right call. However, also note the licensing is on BSL 1.1 terms.