Update on DFINITY’s view on KYT
When ckBTC was launched, DFINITY proposed using Chainalysis KYT to screen BTC coming into ckBTC, and screen addresses when converting ckBTC back to BTC. The main reason for this proposal was the concern that BTC that is considered “tainted” by certain entities could make it into the pool of BTC managed by the ckBTC minter. Other users may end up withdrawing that BTC, and as a result have a more difficult time using this BTC for example at centralized exchanges. DFINITY’s proposal was adopted, and therefore ckBTC has been running with Chainalysis KYT integration since inception in April 2023.
Experience from a year with Chainalysis KYT
In this year of having ckBTC with Chainalysis KYT integration, some new insights have been gained. There is no definition of tainted bitcoin, meaning that everybody has their own set of rules. This makes it impossible to guarantee that all bitcoin coming out of ckBTC would be accepted by CEXes without question. The ckBTC minter therefore takes a very conservative approach and quarantines all funds that could be considered questionable. This has led to funds being quarantined by the ckBTC minter that seem innocent, for instance funds coming from a BTC ATM and from a non-KYC centralized exchange.
New proposal by DFINITY
DFINITY proposes to remove the Chainalysis KYT integration from the ckBTC canisters. There are a lot of advantages to this:
- Currently KYT fees of 2000 sats (= 1.25 USD today) are charged whenever converting between ckBTC and BTC. By removing the Chainalysis KYT integration, the fees for converting between BTC and ckBTC can be significantly reduced.
- It removes a centralized dependency from ckBTC.
- Users can be sure that their funds will be accepted by ckBTC, so there won’t be cases anymore where user funds are quarantined which the user did not expect.
How would the ckBTC minter canister deal with BTC that is currently quarantined as it was flagged by Chainalysis? We propose that the ckBTC minter canister re-evaluates quarantined funds after upgrade according to the new rules (which is a check of OFAC sanctioned addresses, see below), and proceed to process the deposit if valid according to the new rules.
But how would the concern of “tainted” BTC be addressed? We now think that this risk can be managed. It is important to note that ckBTC is never mixing funds: Whenever BTC is converted into ckBTC, this can be traced using the ckBTC minter dashboard. ckBTC can be traced on the ckBTC ledger, and finally conversions back to BTC are again traceable on the ckBTC minter dashboard. This means that whenever a ckBTC user would be challenged to explain the source of funds e.g. by a CEX, the user can show all steps. To further help avoid such cases, DFINITY is trying to work with parties like Chainalysis to explain how BTC can be traced across conversions into and out of ckBTC. That being said, it is impossible for ckBTC to guarantee that all entities like CEXes like the BTC coming out of ckBTC because they all use their own analysis which is not publicly available. Therefore, this remains a risk that all ckBTC users should be aware of.
OFAC
The regulatory and legal climate for DeFi is inconsistent and uncertain today across different jurisdictions. Whilst DFINITY remains a firm believer in an open, accessible, decentralized, cross chain financial base layer, the current state of affairs is that we see many crypto projects have serious issues with OFAC enforcement. It has been reported that BTC miners are increasingly adhering to OFAC address screening.
To reduce the risk to all participants in the Internet Computer ecosystem, we propose that the new ckBTC minter canister continues with, and extends the OFAC address screening it does today.
The current ckBTC canister incorporates checking of addresses against the OFAC sanctioned list for ckBTC → BTC transfers. Transfers to an OFAC listed address are blocked. As removal of Chainalysis KYT from the ckBTC canister would open up the possibility of incoming transfers from addresses on the sanctioned list, DFINITY proposes to add code to the ckBTC minter canister to screen for OFAC listed addresses for BTC → ckBTC transfers. Effectively funds sent from sanctioned BTC addresses will continue to be placed in quarantine.
Since the OFAC list is a fixed list at any point in time, users will know beforehand whether the ckBTC minter will accept their BTC.
Discussion
Please let us know what you think. Do you support this proposal, do you have a different idea, or would you rather stick with the status quo?