I get the sense there is a lot of pressure from all directions to deliver something and times not really on Dfinitys side…
Feel the same. I’m surprised that the DFINITY team didn’t consider this whole issue of tainted BTC one year ago when they so cheerfully churned out demo after demo claiming the feature would land next month, as if they’re just noobs wondering into the wonderful world of crypto.
Maybe they are.
yeah agreed. Again im not trying to get in the way of that. I just thought, based on Stephen and Bob’s response, that there might be an opportunity to fork this effort and wanted to show my support for that option if it really was available.
If not then I fall back to my previous statement about ship it now and fix later.
Yeah I think you’re right - if we have option, it might be a good idea to do exactly this
While I don’t want to be too harsh, this is definitely something to take back for @Jan on the design process
Starting with the picture as a whole so everyones aware of all the components that need to be built
Perhaps this was done but we were only fed piece meal and KYT is being pushed faster under pressure
if its the latter, its good to engage the community from the get go on all things needed for a feature, like a “High level design plan”
It would give dfinity a lot of support in many ways from the get go
It seems like we are approaching a solution to this issue. If perpetually lost ckBTC > tainted BTC in canister, the tainted BTC basically gets blackholed. This isn’t really a problem as the only other option is for perfectly good BTC to get blackholed.
So long as lost ckBTC > tainted BTC, a “mostly accurate” KYT solution can maintain the 1:1 ratio not only numerically, but in value.
Of course, this is a matter of actuarial science since these are variables we cannot specifically know. But this same principle works for insurance companies, and it is the only solution I can see that can solve the problem while working within the current system.
Dfinity will read the reservations, objections, and then make up its mind on what it thinks is the right path forward.
I hope for the sake of us all it decides to just move forward. I do not think its a good idea to fragment liquidity between wBTC and ckBTC when we are already so behind relative to other chains on defi. BUT - ultimately it is not up to me. It is up to the NNS. And as a participant in ICP I have signed up to this governance structure whereby I must accept what the NNS tells me. Dfinity has a lot of sway over the NNS, so I expect it to pass. If you don’t like that, I suggest you find a different blockchain because that is not going to change anytime soon.
Also, as an aside, as ICP gets more popular, these forums will start to get completely untenable. I do think there is a limit to on-chain governance where every single post can be responded to. Imagine in the future thousands, or tens of thousands of people, providing their opinion on this or that. It could be a full time job just trying to read it all. We are already at 408 posts where many of the posts are incredibly repetitive. If OpenChat has billions of users, image 100,000 people posting in the OpenChat forum and expecting Hamish to get back to everyone. Its just not going to work.
In such a situation you just ask an algorithm to pick the top most concerning issues that are being talked about and need immediate action. Every problem has a solution. What’s important is that everyone’s voice should be heard.
To repeat: our intent is to deliver a first version of ckBTC, with reasonable trade-offs, so that the real iterative process of ckBTC can begin. There is no security shortcut being taken. There will be MANY iterations and improvements from learnings from ckBTC being used. We see a future where there are multiple KYT providers offering services on ICP. But that won’t be built quickly, as it requires KYT providers to cooperate and to do some implementation work on their end.
TLDR;
- On-chain KYT will be an important piece for future DeFi
- Want to finish first version of ckBTC that address community concern and then iterate
- We are working towards having multiple on-chain KYT providers
- Ongoing discussions with various KYT providers (e.g. Elliptic, TRM, Crystal Blockchain, Merkle Science) are ongoing to establish direct interaction with ICP without an intermediary.
Feedback
First of all, I want to highlight that for as active as this thread is, DFINITY’s intent is exactly what has happened (apart from that I should have been clearer in my previous post): get feedback on what DFINITY is planning. We at DFINITY do not see this as a bug, but rather a feature of the system/community. There are many, many plans DFINITY has which have iterated and gone through revision.
My only ask is that folks remember:
- Please keep it civil
- We all want ICP to win. DFINITY is actively looking for best arguments and rationale to improve any plans. We have no problem iterating on anything.
- Perfect can be the enemy of the good. It is reasonable not everyone would make the same trade-offs, but let’s acknowledge or respect that.
- ckBTC is just one smart contract on the application layer. There could be many with many different rules. It is unlikely that there can be a smart contract that satisfies everyone’s intent and needs, but that’s ok!
Decentralized KYT
As things in the background were still evolving, I may not have been clear enough on our approach to KYT providers in my previous posts, so please allow me to further clarify. The general idea is that there will be a number of different KYT providers in addition to Chainanalysis. Ideally, all entities providing KYT services on the market would offer their services also directly on the Internet Computer via their own canister. DFINITY has been intensively talking to various KYT service providers, including Elliptic, TRM, Crystal Blockchain, Merkle Science, to make this happen and we are making good progress on this front.
The main issue we’ve encountered is that KYT providers are currently not set up to do this, meaning: 1) they cannot push API keys to a canister and 2) cannot receive ckBTC, ICP or cycles as payment for their services. There is no telling how long it would take to get them to this point, which is why we’ve opted for an immediate solution with Chainanalysis to be able to release ckBTC sooner rather than later.
As the regulatory landscape is changing, so are KTY requirements. Offering KYT services directly on the Internet Computer will become an important enabler for DeFI on the Internet Computer. We envision that such services can be paid for in cycles, just like other services. Indeed, KYT will become a much broader issue than just ensuring that bitcoin that is transacted via ckBTC is sellable on centralized exchanges. Whether or not one likes the change of the regulatory landscape, as a community we need to ensure that we are able to address such challenges and provide the necessary building blocks for DeFI on the Internet Computer to flourish.
Why KYT for ckBTC?
Some of you have been asking why bother with KYT services in the first place? DFINITY and other members of the ICP ecosystem have been strongly advised by legal counsel of the following:
- KYT will minimize the risk to users of ckBTC
- Deploying a version of ckBTC without KYT puts DFINITY at risk, even if the ckBTC canister is controlled by the NNS.
Why Toniq?
As mentioned, KYT providers are currently not technically equipped to directly interact with blockchains, so we have reached out to the ICP community for help to launch ckBTC with KTY possible and to act as an intermediary party between KYT providers and the Internet Computer. A few came forward and were supportive, and Bob Bodily & Toniq were particularly eager to participate in a solution and move quickly due to their interest in BTC Ordinals. If other parties want to offer similar help, please contact me. The community’s eagerness to help contribute in cases like this one is greatly appreciated!
As outlined above, we want to move towards a solution where there will be a market for KYT services on the Internet Computer and where KYT providers can make money with their services. For this to happen, we will need substantial volume and a flourishing DeFi ecosystem. Also, there will very likely be additional services around KYT that providers could offer including risk mitigation and additional forms of screening that users could do prior to initiating a transaction.
I hope I’ve managed to bring more clarity to the situation. Again, the first steps that are being taken, are obviously not the perfect solution and were never meant to be the final step. It is just a way to immediately bring ckBTC to its full functionality. I can’t stress enough that this is an ongoing journey, and that all ckBTC solutions are possible, and everyone in the community is welcome to become KYT API key holders or implement their other KYT processes using other KYT providers.
How to become a KYT API key provider for Chainanalysis KYT
We do take the concerns you all raised seriously and are currently working on a mechanism so that any party can add an API key to ensure that KYT via Chainanalysis does not depend on a single API key provider (i.e., Toniq). Naturally, the mechanism still depends on Chainanalysis. However, this is their core business.
Nevertheless, as said above, we are also working on extending the set of KYT providers.
Controller of ckBTC
There have been some discussions about the controller of ckBTC. Some options that have been mentioned are
- No controller (blackhole)
- A “multisig” setup
- An SNS
- The NNS
Right now, we view the NNS as the only practical option (cf Manu’s post in this thread). This does not mean that the NNS could in future assign the control to another DAO and we look forward to ideas from the community on how to improve this.
Next steps:
- We will take some extra time and extend the “Chainalysis-KYT’’ canister to allow multiple parties to provide API keys. The list of principals that are authorized to provide Chainalysis API keys are set via NNS proposals, and every authorized principal can provide one API key. The canister can then rotate via the available API keys, and remove ones that are not working. The provider of the API key used for a screening gets the rewards for that screening. We plan to submit three proposals next week:
- First, to install this Chainalysis KYT canister without any principals that can set API keys.
- Second, a proposal sets an initial list of principals that can provide API keys. This proposal will contain Toniqs principal, and other principals that are willing to participate.
- Third, a proposal to upgrade the ckBTC minter to use this KYT canister and enable BTC → ckBTC conversions.
- After that, we will continue working to get other KTY providers to offer their services directly on chain so that no third party is needed to inject API keys into a KYT canister.
Thank you all for your insights in this forum and beyond, and for your support in shaping the future of the Internet Computer and its ecosystem!
We will be holding a Twitter Space tomorrow at 15:00 CET to discuss this in more detail as a community.
Thank you Jan for clarifying some of the main issues raised
One question I have is the incentives for other key providers
The current financial incentive means Toniq will never make profit off KYT structure
Is there any incentives for other key providers to come forward?
At this point - it would have been appropriate to immediately make this public and put a call out for people to join
This would have been at a “decision” stage and community could have pitched in then and this probably wouldn’t have played this way - a take back since a lot feel there was no transparency and a decision was unilaterally made
I’m so glad we have you here to clarify this for us. For a second there I actually felt like my opinion mattered
Edit: I’m seriously disgusted by this so y’all just do you. not like we expected anything else.
The elephant in the room here:
Itll take some time to onboard KYT on chain since its out of our control that we need to have VOLUME first
Meanwhile, while we allow for multiple KYT subscription providers but not incentivized so we are essentially trying to get mass volume on ICP but with what could possibly be multiple single points of failure (Toniq + Chainkeyanalysis)
Feel like we need more in the mid term to mitigate this
Going to say this once and we can move on since theres not much to argue
Dfinity can and has been doing exactly this
its also the reason no one believes this is decentralised or web 3
No one even believes Dfinity is on the road to decentralization nor will ever relinquish any form of true power
this is exactly the reason for outflow of members both in dev and user, not out of crypto, but to solana, Aptos, ETH, Matic
In one direction, you would have more developers building, and each each with their own subcommunities keeping NFT markets and Web 3 social media active
Instead we have current situation - DSCVR is heavily promoted by dfinity but if you use DSCVR PROPERLY you’ll see the state of real people using it… i.e. there isn’t much even with promotion
Some official Dfinity spaces have like 29 listeners… with the size of its supposed following… IT speaks volume <— For some reason no one wants to hear it
Ignore it, take it as a lie, push ahead with central decisions for a year and maybe see what happens when there is no support from internal and external web 3 community whos liquidity btw, is what people are after
Maybe it all works out for you who knows, but Ill make sure all this is done in the light where possible
Attached message is from today and I get these daily
You guys have the SNS-1 thats doing nothing currently…
Instead of bogging down the NNS with more responsibility, put your main SNS in charge of this one and only task.
With all due respect this message is so full of cope it goes all the way around and involuntarily becomes FUD, you straight up said Dfinity does whatever it wants and at the same time has enough VP to control the NNS, how one can consciously be aware of both and think “damn I like this blockchain, if you actually want some decentralization in your decentralized protocol you should look elsewhere” is beyond me.
Agree, this is a chicken and egg issue. We will probably need to move a similar model as for node providers which are getting paid for offering their services regardless of whether or not the subnet that their nodes are on is busy or not.
If so I have a party that is interested given apt incentive
Also reached out to another 2 who are conferring with their team, if you finalize the incentive model, I can try bring everyone together
Needless to say you’ll be very familiar with all 3 teams
I never said Dfinity controls the network. I said Dfinity has a lot of sway. There’s a big and crucial difference.
I didn’t mean to cause FUD. Got a bit frustrated with the tone of the conversation. I apologize to those who felt dismissed.
Let’s just keep the convo civil. We should be able to agree to disagree. Many smart people see the exact same facts and come to opposite conclusions. We need to understand that a plethora of opinions is a good thing.
These are both valid points. I was thinking the same and am glad you expressed your opinion on it. Thanks.