The Weird Nature of Cryptography Products | CC Liang, Independent | ETHTaipei 2026
ETHTaipei·Sat, Oct 3, 2026, 12:00 AM
The Weird Nature of Cryptography Products | CC Liang, Independent | ETHTaipei 2026
Transcript
[music] Hi, thank you so much and very happy to be here. Um, in this talk I want to spell out something like very I hope like they are very obvious to you and I try to give some like mediocre answer to things and and I just want to like spell out like the things that feels very obvious to you and and I hope that uh will help us uh reflect something. So, uh let me try next slide. Oh, uh sorry. Oh, okay.
Yes, the uh next page. Um so um I saw this post uh for my uh friend Mashbin and he he used to be in the model the ministry of uh digital uh affair and he helped uh to uh develop the the uh Taiwan uh Taiwan digital wallet and but he he kind of he didn't got a chance to do the full vision of the digital wallet. He wants to uh you know like have a zero knowledge proof features and um like lot of lot of lot of features he want to do. So uh so he he ended up like he he tried to uh vibe coded his own version of digital wallet and have like uh all the feature he wanted to do and he wrote a post for this and I I read a post and I like it really much and I I text to my agent and I asked like oh uh uh I I want whatever like mesh bin is have uh uh uh his iOS because he only developed the iOS implementation and my my phone is Android. So I uh I asked my agent to do a Android one and okay so let's talk about the 711 uh the pickup flow.
So if you go online shopping and you order a package and you can ask them to deliver to a convenience store and usually like like in the old or current weight you have to bring your national ID and then like you say uh I want to pick up my package and you have to say your what's your name and then your last uh five digit three digits of your phone number and you present your ID to the uh staff and and they um they pick out the package for you. But if you're a very like privacy sensitive person, then you you realize there are lots of fields there are different lots of fields on your national ID and it feels very like a lot of exposure to to send out your ID. So uh one of the use case of the digital wallet is you you can uh apply the a mo um a credential creation for your uh mobile provider and then the mobile provider will test uh a fact that uh you are the person with this name and your uh last three digit of phone number and five digits of phone number and you can do uh selective disclosure with this wallet and then you present this QR code to your uh to the convenience store staff and then they will uh pick up the uh pick out a package for you and this is my like AI slap. So you see like uh I I have a QR code too and there are lots of like debugging message popping up the uh the the UI and the the staff in a convenience store that look very suspicious like to like like to me but but he still like scam my um scan my QR code like the last step of uh the bike coded uh digital wallet is to test it in a real place. So, we actually went to a convenience store and then uh present my AI slap and then uh the the staff actually scan the QR code and there's a uh my package is showing up in the in the machines of the uh convenience stores.
So, it kind of worked, [clears throat] but it also like feel like unimpressive like it's just scanning a QR code like like that's that's what you do with like every other apps and like uh you it seems like everything is so boring so then like like like I cannot show my excitement in like this this whole flow like if you remember your first like LLM experience like when when you find out like computer can write you a like human like humanlike language like the computer can talk you like that when you see a computer can draw a beautiful pictures to you you feel like oh this this is impressive this is something different this is like some progress in humanity but like for cryptography like Most of time it doesn't like like everything like sending the transactions like um if you remove all the frictions like all the you know network as tokens and like if you rem remove all the frictions it feels it should feels like just a a bank app and then like when you browse a website in the internet on the internet like you you you go to a URL with the HTTPS and then like what does the S really give you like you you don't appreciate the uh the security and like you don't know the detail you don't know how it works behind the scene you just the UI just show you uh probably a shield or a lock like they're showing you okay this this website is uh safe it's secure and then you you just you just move on you you don't you don't actually pay attention to the the the website and like signals. Who who here use signals? Oh, okay. Lots of people. And can you name like any of the cryptography features of signals?
Like why you are using signal? Is it because like it's secure, private or something or like just your friends are using it like open source? Open source. Okay. Well, that's a good reason.
Yeah. And can you name the any cryptography feature of signal?
End to endure. Okay, it's really good. [laughter] you're paying attention and yeah and and yeah but like most of people like yeah they probably know the end to end encryion part and like they they probably know that the uh private contact discovery something but like no I don't think no one knows that [laughter] and so uh I think um I left like Ethereum Foundation with like this kind philosophy debates from like lots of private conversations and also like public panels and there's a I call it like substitution view like cryptography is just a simulated trusted third party so everything you can do and like uh you can do it with a third party way like ZK P2P is amazing but it just no third party like you can have exchange to support USDC a vimmo transaction to to crypto and everything can be reproduced with a third party solution and it doesn't create a new experience like like there's fundamentally nothing new to to a user and the other like the other view is probably saying like okay uh cryptography is true and real like there are actual like uh physics on the data things uh an adversary can do or cannot do and uh it's real but like maybe you have to have some knowledge to know what's real or not but like can a user with no knowledge feel any new experience if if we don't like if we we uh strip all the abstractions away [clears throat] then I I don't I think I I I I've seen anything like actually new from from a generation generation point. And so I uh eventually like I I found this paper uh 1999 called like why Johnny can encrypt and it kind of say like cryptography is cryptography software or security software. They are kind of a very special type of software.
They are different from the consumer software. you cannot develop a cryptography software like the usual like other software you are using. So why is that the paper named uh five properties uh of the cryptography app and I think they are kind of um like like we we should like like talk into it one by one and get a feeling of it. So first is users are unmotivated. They don't want to understand the detail of the cryptography app.
Like security is kind of insurance and you only pay attention to security when the risk is uh big enough and the insurance is cheap enough to justify it. And for example like the signal downloads in Ukraine was uh the lowest uh before the war but then it like raise to the very top after the war begin. So you need a very risk to justify like using a security and yeah the user don't want to just open their computer and manage their security and let me show you a picture of what motivated user look like. So this is one sentence from the Meshbin's uh post like you don't wear an armor to get a grab a breakfast. So this is like property one unmotiv unmotivated user.
Next uh cryptography is abstract like this is very obvious like um there are strange rules. The rules applies on data and they are very unfamiliar to users and we kind of rely heavily on uh the the metaphor to to actually like try to translate the language of cryptography to users. So we're trying to translate encryption as um uh items in the box and you have keys to lock it to unlock it and you you kind of what is digital signature? We are kind of using a metaphor of like signing things and then and and we're kind of trying to use a mental model for our actions in real world to um to get a feeling of what actually cryptography do. So, and the combination could be very strange like what does it mean to sign a paper with your private key?
Like it it looks very weird. So [laughter] that's why like like uh cryptography uh software is hard to use. And then like the next is the no feedback. Like uh every time you use a cryptography applications, you don't know like every button you click, everything you do, you don't know if you're doing it right because if you do something wrong, if you leak your password like to to others, like you you don't get a feedback. You you only like like you don't know you you're doing wrong wrong things.
And the assistant cannot tell you like uh in full detail and
you lose all your money. You lose all your money, you know you've done something.
Yeah. Yeah. Yeah. Yeah. Yeah.
you only after the consequences arrived and then that's [laughter] like like it's it's it's terrible and and like I think the most uh my my personal experience is a blind signing like do you know like which uh do you know what this transaction is trying to do? No, I Okay. I uh so this is transaction. I I want to swap some ease uh to to some to some USDC and like you know like this uh this screen doesn't show me USDC but it's already a progress. It's already progress because originally you have to see a lot of uh country by codes and then you just sign it just you you you you take your hardware wallet and just press approve for like whatever like [laughter] whatever things on the wallet and there are effort and standards for blind signing and so at least it show you oh you're sending like 0.
1 ETH to some uh contract function which contract and what functions to call. Uh it's a progress, but it's not not perfect yet. And um it's not a good feedback for like if you're just want to swap on USDC and you don't know like should I click swap like is that the right button to click if I click would there be bad consequences? You don't know. And yes, the barn door like the barn door probably says like um the horse already left your barn doors and it's useless to close the door now.
And when your key was stolen, when your phone was lost, like there's nothing you can do like nothing you can salvage the situation. And and that's uh that's a situation of cryptography. And the last one is probably very well known. It's a weakest link. So this is a famous SK CD comic.
It says like the security expert will think, "Oh, wow. This uh uh this computer is encrypted. Oh, it is a very strong encryption." But actually if you buy a $5 range to uh threaten the the user and they will give you the password. So the security is uh you know as strong as the weakest link and I think another implication of this is that lots of progress in cryptography or security is going to be unappreciated because they are not on your like weakest link.
there are more like a stronger links of your your whole uh security procedure and then you you don't feel like that's a improvement to your to your whole flow. So um yeah so so the there was five Chinese property I call it Johnny's properties and but uh I personally like to translate things into the language of e economics um because that help us to identify like what's the uh coordination failure in this situation like uh what what parts of uh information uh is required, expertise required, what kind of uh incentives are not aligned. So typically like uh there are three kind of goods in economics. One is search good like when you buy something and the quality is uh like you can check before buying like a apple you can see if it's rotten or fresh before you actually buy it. uh experience good is something uh you know the quality after using it like a meal in uh in a restaurant like you walk in the restaurant you have the meal you know it's good or not um and the credence is good you can't even judge the uh quality after using it if you go to a mechanics and the mechanic says uh you need to repair uh uh replace one uh parts in your engine and you say okay just do whatever you want.
uh I don't know what you're doing but like um you you pay the money but after like you know after repairing the repairment you you probably won't notice the difference and same for the doctors and like you go uh the doctor ask like oh you have to do this treatment but is it necessary you can't tell like after the surgery after everything you you probably can't tell so I think cryptography is kind of uh uh credence good like all those Johnny properties are kind of uh when you use a cryptography application like privacy pool when you use a privacy pool you're getting some kind of unlinkability and if you don't know what is unlinkability like you probably use the privacy pool you deposit withdraw you don't know what you are doing you don't know like Is it bringing you any benefits from all this procedure and you're paying gas fees and and uh fees to the privacy pool and so one one framework I try to develop is you you kind of try to decompose your software product into two components like one is experience good like user have good feedbacks they can see the causality they know it's good or not after using it. Uh message send, balance transfers like things that you can see and verify and the credence code part the cryptography the things you can see and you can verify you can uh you don't know like after after using it. So and yeah, so I try to like look into the projects, every cryptography apps I use in the past, I I build some timelines and I want to identify like what are some obvious things I can see from like like after using this cryptographies products and and what um what can we derive from this and I noticed like uh the AI like human in a loop. Uh the concept of human in the loop is um very suitable in in like borrowing in to the security part. Um so I I separate like the development of security project into four four stages.
I uh at the first you have a vulnerable state like people are interact with a in in a vulnerable way they they could be attacked and then cryptographer come up with some solutions developers build it. You have some niche infrastructures but no one is using it. Then like uh something happened and then people start to adopt this uh cryptography app. But this cryptography application require constant attention from the users. They uh the user need to be educated.
They need to do know like what they are doing. Um for example like password or like two factor authentications. Uh I think these are kind of things that you need to educate user don't don't leak your password don't uh don't connect to weird websites don't like like user need to in the loop in the loop of this security procedure but if we get all the condition right the final step like final step should be invisible like the best cryptography should be invisible like human out of a loop and like the computer like do everything for you behind the scene and then you the user don't need to think about it. They don't make mistakes. They don't they don't they don't need to uh do dangerous judgments.
Uh and so why like in this um this flow like why loop you in? Because uh thread is present. So uh when you when we move from niche infra to explicit it's usually some uh threat uh happened and raised the public awareness. For example, the uh the Russian invasion to Ukraine. Uh for example, uh HTTPS was widely adopted uh after the uh snor event.
And when can we loop you out and I I listed many reasons but like in summary is kind of delegation works. Delegation works. Uh what kind of delegation works? Like you can delegate to machine and delegate to people. Machine if machine can knows your intention really really well then you can you can delegate to machine.
Um sometimes you cannot because for example when you send a transaction you need to tell the machine uh who to send my money to and how many money do you want to send and these are your intention. The machine has no way to know that. But if it's a recurrent uh payment to something to someone, you can probably automate this when your intent is very uh clear. So the next thing uh the next thing to deliver is like people behind the machine are aligned with you. So I named uh developers, governments and standard bodies.
uh sometimes uh you know if the developers are from corporates they might not be um a night with interest with you. So so it needs more uh constant attention from the user. One thing I noticed from the Binance uh proof of reserve page uh they try to provide this uh proof of reserve verification and the page is full of introduction of Merkel trees lots of details because they build a tools and if you want to use a tool you want to know all the detail to know what you are verifying for. It's not just like a green check and says oh our balance are all like uh uh solvent like like they cannot do that because uh they are the one who verifying theirel. They have to tell you the detail.
They have to tell you how to verify their balances and they have to glue you in like you have they have to have your constant attention and yeah here's uh like HTBS example originally HTTPS is only used in the very sensitive like credit card transactions like things involved in payment but then like snorten happened and then like uh there are less encrypt like to promote people to use HTTPS and then like Google Chrome marks all HTT HTTP website not secure there are uh very strong threats to motivate everybody to adopt a security um measure and the bottleneck is not technology it's not the cost of running HTTPS it's the coordination like to to ask everyone to adopt the uh the the cryptography technology. So I'm still very like uh like I am still confused uh between many concept I try to develop but I still try to uh draw some conclusions for the builders uh like you know like take take it with grain of salt but I think when we are building a a cryptography product we can try to distinguish the feature like is this experience good? Is this a credence good? Can the user uh like you know like what should we present to the user as a feature and what should we hide from the user as something like we we can deal with in uh in invisible and I think like we should avoid like market accreditance good partless feature uh we shouldn't sell like oh like our product use uh zero knowledge proof. We use uh like post content save uh signatures or something like that.
these are like asking users to do a security audit for you but um I don't know like you you still need to market it to someone right like and then like I think the third one is okay uh think about like um who should absorb a judgment for the user like if user have to judge this uh can we delegate to machine can we delegate to standard can should government build this should uh corporate build this like um if we can delegate them to the right party with a nice interest to the users, we can make them invisible and like showing user just a green check and then um and and and then like make the cryptography like unimpressive and then invisible. So I think that's all I have for you today. Thank you so much. Thank you Cece for your great talk and your takeway for builders. So now we have we can have uh one question for Q&A.
who wanna
Hi, thanks. uh you mentioned the HTTPS which which is really the early mass adoption of cryptography and uh looking back into the history we see the internet started 30 years ago but it uh the SSL uh safe connection does not go into mass adoption until like 10 years ago and at early time when we are doing like mail order, we put the credit card in clear text to to do the mail order and then we have online commerce but only for the credit card page will have the HTTPS at that time. So it actually really took like a decade or two to make the cryptography really must adopted right. So I think we will witness a similar path in the upcoming decades. So I'm wondering that for example we talk about zero knowledge proof a lot in this conference and so if if it's not really the case to build a consumerf facing product using the zero knowledge proof uh perhaps more opportunities behind the scene I mean to the government or to the business side.
So one idea I've been thinking is about auditing for so in our world we do auditing in the public but in most of the traditional world including the institutional things they do the auditing in very private space so I'm wondering for example account uh auditing information security auditing or even supplier chain auditing could adopt some cryptography there to improve their transparency but without sacrificing the the secret of the supply chain or things like this. So I'm curious about your thoughts about using the cryptography to replace some components of the auditing process. Thanks.
Thank you. Thank you. Thank you. Great question. And I think I heard an idea a while before maybe relevant to this uh issue to address the auditing problem.
It's called like uh proof of vulnerability or like pro proof of hack like like when you so uh but I mean like the situation you describe is kind of a private auditing but in blockchain space a lot of uh auditing is kind of happening in the public it's kind of whitehead auditing and so when people like reach you say oh your system have a bug and then your your developer have to check But they they they need need time to verify the the claim is true. But if if you have proof of vulnerability, you can um you can have a ZK proof and to prove that your attack actually work. And then that will save a lot of time to review the the the security vulnerability plan. And so I think like similar idea like we could probably provide to the auditing service like a private private sector. Yeah.
I wonder if they're already doing something similar like this.
Thank you.
Okay. Uh okay. Thank you CC. Let's uh give him another round of applause.
Automatic transcript — names and jargon may be misspelled.