Cursive Profile Banner
Cursive Profile
Cursive

@cursive_team

832
Followers
3
Following
18
Media
76
Statuses

Research & design studio building cryptography for human connection 💫

Joined February 2024
Don't wanna be here? Send us removal request.
Pinned Tweet
@cursive_team
Cursive
6 months
We're excited to introduce Cursive, a cryptography and design lab building applications of signed data ✍️
6
36
114
@cursive_team
Cursive
3 months
trigger warning // ✨ math ✨ At @zeroknowledgefm 's ZK11, we used FHE to build a private set intersection (PSI) feature, letting attendees find shared activities without revealing extra info. Here's a step-by-step 🧵:
Tweet media one
1
15
83
@cursive_team
Cursive
1 month
This past weekend, Cursive gave every attendee at @paradigm Frontiers an NFC badge and built a suite of MPC-powered social cryptography experiences on top. Check out the highlights ⬇️
Tweet media one
2
13
69
@cursive_team
Cursive
5 months
At @zeroknowledgefm 's ZK Summit 11 in Athens, we provided NFC cards for attendees to gather digital signatures when meeting others or attending talks. On top of these signatures, we built features based on advanced cryptography including ZKPs, 2PC+FHE, and folding schemes.
5
10
65
@cursive_team
Cursive
3 months
Signature Singularity Residents () showing off their Cursive NFC rings...coming soon to more events!
Tweet media one
4
5
39
@cursive_team
Cursive
6 months
At ETHDenver, our team built out a cryptographic social + questing app in partnership with @iyk_app @zksync @getclave . Over 3 days, we gave out 12,000 tappable NFC badges to attendees who made 50,000 taps and generated 3,000 ZK proofs! 💫
2
2
34
@cursive_team
Cursive
3 months
We'd like to share some technical & design reflections from our NFC + advanced cryptography activation at @zeroknowledgefm 's ZK Summit 11 in Athens. Check it out at
Tweet media one
2
6
33
@cursive_team
Cursive
6 months
For those of you attending @zeroknowledgefm ZK Summit 11 today, you’ll get a Cursive NFC card alongside your badge! Tap other attendee badges to share contact information or check into talks.
Tweet media one
2
0
30
@cursive_team
Cursive
6 months
We are thrilled to see under 2020s Ethereum! It's going to be such an exciting decade for Ethereum and cryptography at large.
@VitalikButerin
vitalik.eth
6 months
Going beyond scaling, applications that are built today need to be built with "2020s Ethereum" in mind. Here's what this means:
Tweet media one
119
136
655
1
8
24
@cursive_team
Cursive
3 months
We've been so lucky to be early users of Gauss's phantom-zone, a toolkit to more easily build apps with MP-FHE. Follow their work below and start hacking here!
@gauss_labs
Gauss labs
3 months
Today we're opening portal to the Phantom zone. It's a zone parallel to reality where you teleport yourself, take arbitrary actions, but only remember predefined memories when you're back. We build it using multi party fully homomorphic encryption and it's an experiment. But...
5
7
44
3
5
24
@cursive_team
Cursive
5 months
We'd like to share a post reflecting on our ETHDenver NFC activation, sharing different cryptography, design, and user behavior learnings!
Tweet media one
1
7
22
@cursive_team
Cursive
2 months
Our first guest post on the blog! @jp4g_ from Mach34 shares his experience implementing folding schemes for our activation at ZK Summit 11 in Athens ⬇️
1
1
23
@cursive_team
Cursive
5 months
Introducing the Cursive blog! We'll be posting technical deep dives, learnings from our activations, and various musings about cryptography at . We have two posts to begin with:
1
5
22
@cursive_team
Cursive
1 month
Private hiring is a new feature where candidates and recruiters could set up profiles for jobs and be privately matched using MPC based on qualifications, interests, and salary expectations. Look for a future blog post to explain the technical details behind private hiring!
Tweet media one
1
1
21
@cursive_team
Cursive
5 months
Last but not least, we built ZK11 Folded, a Spotify Wrapped-like experience where you could generate one Nova folding proof summarizing your entire event experience after it was over.
Tweet media one
1
0
14
@cursive_team
Cursive
1 month
We want to give a huge shoutout to @Janmajaya_mall and the rest of the Gauss team for building the MPC/FHE libraries used in this activation. Notably, the private hiring feature was built using Phantom Zone, a new library for multi-party FHE:
1
0
14
@cursive_team
Cursive
6 months
10,000+ people have experienced the products we've built, and we're always open to new ideas and collaborations. Please join our community at , shoot us a DM, or email hello @cursive .team!
1
0
14
@cursive_team
Cursive
1 month
Attendees tapped each other's NFC badges to share contact information and collect a digital signature representing the fact that they met. As a Frontiers special, attendees could see which popular Rust repositories the other person had contributed to. cc @gakonst
Tweet media one
1
0
13
@cursive_team
Cursive
16 days
Our team initially came together from serendipitous invites to Zuzalu! And we've demoed new apps and research at many subsequent pop-up city events. Check out this blog post on Edge City invite stories & apply to Edge City Lanna to hang with our team!
@JoinEdgeCity
Edge City
16 days
Have you ever thought about the power of a simple invite? Big ideas often start with someone saying, "Hey, want to join?” • 1971, Bill Fernandez, invites Steve Jobs to meet Steve Wozniak at Fernandez's garage • 1959, Warren Buffett was invited to a dinner party by Dr. Edwin
Tweet media one
3
4
38
0
3
13
@cursive_team
Cursive
1 month
Private Set Intersection (PSI) built using multi-party FHE served as a cryptographic icebreaker, allowing two attendees who had just met to see the contacts they had in common. No information was shared between users except for the people they had both met.
Tweet media one
1
0
13
@cursive_team
Cursive
6 months
In the past, we've launched experiences at Zuzalu, Devconnect, and ETHDenver where participants received signatures from NFC cards to digitize in-person interactions. Read more here:
2
0
13
@cursive_team
Cursive
5 months
Upon meeting another attendee, you two could use 2-party computation and fully homomorphic encryption to privately compute the people and talks you had in common. You learned nothing about the other person unless both of you had met the same person or gone to the same talk!
Tweet media one
3
0
11
@cursive_team
Cursive
6 months
We focus on building tangible, accessible, and well-designed applications. We care deeply about educating users on the affordances of cryptography in intuitive ways.
1
0
11
@cursive_team
Cursive
1 month
And of course, we owe a huge thanks to @gakonst , @caitlinxyz , and the rest of the Frontiers team for helping to make this activation happen. It was an exceptional event! check out
1
0
11
@cursive_team
Cursive
1 month
Finally, be sure to follow Cursive if you're interested in more social cryptography experiences like this. And join the Telegram here:
0
0
11
@cursive_team
Cursive
6 months
Progress in advanced cryptography, especially zero knowledge proofs and fully homomorphic encryption, will supercharge signatures and unlock new opportunities for practical use.
1
1
10
@cursive_team
Cursive
5 months
Special shoutout to Gauss Labs () for building 2PC/FHE and Mach34 () for building folding schemes!
1
0
11
@cursive_team
Cursive
6 months
We're excited to share our new directions in the coming months, stay tuned. And learn more about us at 💫
1
0
11
@cursive_team
Cursive
1 month
As in past activations, we enabled participants to make ZK proofs about their tap signatures to share on Twitter. Participants that proved they met 50+ people received a Cursive NFC ring 💍
Tweet media one
1
0
10
@cursive_team
Cursive
5 months
First off, collecting multiple signatures allowed you to generate zero knowledge proofs about your event attendance. For example, you could prove that you met 10 people at ZK Summit without revealing exactly who those people were.
Tweet media one
1
0
10
@cursive_team
Cursive
5 months
We're sharing a second post about our ETHDenver NFC activation, this one covering data custody preference learnings from an A/B test with 2000 participants.
Tweet media one
1
0
9
@cursive_team
Cursive
5 months
If you want to learn more about how these features were built, you can check out the repo on Github: . To learn more about Cursive, visit or join our Telegram: .
0
0
8
@cursive_team
Cursive
6 months
We believe that digital signatures are key to enabling widespread data ownership and authenticity on the Internet.
1
0
9
@cursive_team
Cursive
5 months
You can find it at . The development of this app was primarily done in collaboration with @iyk_app , @getclave , and @zkemail , a huge shoutout to all of them!
1
0
9
@cursive_team
Cursive
6 months
Each signature you collected was visualized as a stamp, using a generative art algorithm from @stefan_contiero ! These stamps were compiled into a single art piece representing your ETHDenver experience, which will be mintable as an NFT on @ArtBlocksEngine .
Tweet media one
1
0
7
@cursive_team
Cursive
5 months
Take a read if you're interested in learning about real-life cryptography deployments, outside the confines of research and blockchain infra!
0
0
6
@cursive_team
Cursive
6 months
Tapping @iyk_app discs placed around the venue allowed you to collect "location sigs" as a proof of visiting that location. Your entire collection of sigs could then be used to complete quests to claim $BUIDL on @getclave @zksync and unlock items at IYK's chipped goods store!
Tweet media one
1
0
6
@cursive_team
Cursive
6 months
Tapping someone else's badge allowed you to privately share selected socials & a unique digital signature as a verifiable proof of meeting.
Tweet media one
1
0
6
@cursive_team
Cursive
6 months
Each quest required meeting specific users or going to certain locations. Users completed quests by making a ZK proof of satisfying the requirements, maintaining full ownership over their collection of signatures.
1
0
6
@cursive_team
Cursive
2 months
Read the post here:
0
3
5
@cursive_team
Cursive
3 months
You can avoid this by ZK proving you've encrypted a bitvector from valid signatures you have, using a tool like @backaes @PrivacyScaling 's . This will be included in a later iteration!
1
0
5
@cursive_team
Cursive
3 months
If you don't like wearing rings, they also serve as great necklaces when put on a chain 💫
2
0
5
@cursive_team
Cursive
6 months
This was an order of magnitude larger than our ZuStamps activation at Zuzalu and at @EFDevconnect -- we will continue to bring data ownership and authenticity to more people and events, DM us if you're interested in using this tech!
1
0
5
@cursive_team
Cursive
3 months
In Round 1, each user creates a shared encryption public key using both of the shares, as well as sending each other a new relinearization key share for later in the computation. This is a mini 2-party computation (2PC).
1
0
4
@cursive_team
Cursive
6 months
And we will have longer form blog posts for our ETHDenver learnings coming soon on -- stay tuned! ✨
0
0
5
@cursive_team
Cursive
3 months
You also may have realized that either A or B could've withheld their decryption share, leading to only one person learning the overlap. This can be resolved with something like @xyz_pierre 's
1
0
5
@cursive_team
Cursive
3 months
This PSI cryptography was built by @Janmajaya_mall @backaes using Multi-Party BFV. The above notes from @vivboop reference variables used in a fork of their code at
1
0
5
@cursive_team
Cursive
3 months
For context, ZK11 attendees were able to collect signatures from NFC cards that represented activities like meeting someone else (alongside contact info) or attending a talk (alongside a description/slides).
Tweet media one
1
0
4
@cursive_team
Cursive
3 months
And we could have used simpler cryptography to perform PSI, but we wanted to experiment with Multi-Party FHE as a more programmable toolkit for private, multiplayer operations. More coming 🔜
1
0
4
@cursive_team
Cursive
3 months
PSI was built as an icebreaker, allowing you to connect with other attendees over shared contacts and talks. Crucially, none of your activities were revealed to the other person unless both of you had done it.
1
0
4
@cursive_team
Cursive
3 months
Thanks for reading this far! Please reach out to learn more, or join our telegram: . Now stop being a nerd and go touch some grass
0
0
3
@cursive_team
Cursive
3 months
Each user generates a final relinearization key from the shares, which is used to relinearize the multiplication ciphertext. There's more explanation of why this is necessary here:
1
0
3
@cursive_team
Cursive
3 months
Upon registering for the app, each user generates a public key share and relinearization key share. When PSI starts between A and B, they each download each other's shares.
1
0
3
@cursive_team
Cursive
3 months
The careful observer may have noticed that A or B could lie about their activities, and make a bitvector of all 1s that would reveal the other person's full bitvector upon PSI.
1
0
3
@cursive_team
Cursive
3 months
Each activity was given a specific index before the event. A and B create bitvectors, placing a 1 in the index of every activity they have a signature for.
1
0
3
@cursive_team
Cursive
5 months
First up is a retrospective on ZuStamps, an experience we built at Zuzalu allowing residents to prove participation in events and unlock unique experiences by tapping NFC badges:
1
0
3
@cursive_team
Cursive
3 months
We want to highlight the non-interactive protocol, which reduces the rounds of interaction between parties to a single decryption step. This protocol was in part motivated by attempts to make our PSI features more async!
2
0
3
@cursive_team
Cursive
3 months
A and B then compute and send partial decryption shares of this relinearized ciphertext.
1
0
3
@cursive_team
Cursive
3 months
They each FH encrypt their activity bitvector to the shared encryption key, producing a ciphertext they send each other. As they're encrypted with the same key, we can do FH operations across both!
1
0
3
@cursive_team
Cursive
6 months
At the end of the event, you’ll be able to participate in ZK 11 Folded, where you can generate a Nova folding proof summarizing your entire event experience, just like Spotify Wrapped!
1
0
3
@cursive_team
Cursive
6 months
Collect signatures to generate zero knowledge proofs about your event experience. You can even privately compute the connections and talks you have in common with a friend using 2PC + FHE!
1
0
3
@cursive_team
Cursive
3 months
In Round 3, A and B decrypt their relinearized ciphertext using the shares in another mini 2PC. The resulting bitvector is the overlap of their two activities! From the example above, that would be {0, 0, 1, 0, 0}, which means they both did activity 3.
1
0
3
@cursive_team
Cursive
3 months
In Round 2, each user multiplies the two bitvector ciphertexts homomorphically, which would only leaves a 1 in the indices where both A and B had a 1.
1
0
3
@cursive_team
Cursive
5 months
Blog: @creeefs of @iyk_app suggested giving users the choice between self-custody and server-custody of data to better understand preferences! We set up some experiments and analyzed the results.
1
1
3
@cursive_team
Cursive
5 months
The results of this experience indicate a slight preference for data privacy and ownership, but they do not tell us how deeply people care about or desire data privacy or which types of data they care the most about owning or verifiably proving.
1
0
1
@cursive_team
Cursive
3 months
Say there were 5 activities. If A had signatures for activities 1, 3 and 5, A would create {1, 0, 1, 0, 1}. If B had signatures for activities 3 and 4, B would create {0, 0, 1, 1, 0}.
1
0
2
@cursive_team
Cursive
3 months
At ZK11, we gave every attendee an NFC card which let them generate zero knowledge proofs, run private set intersection using 2PC/FHE, and make folding proofs with Nova!
1
0
2
@cursive_team
Cursive
3 months
Stay tuned for a deep dive into how we built private set intersection (PSI) with 2PC + FHE!
0
0
2
@cursive_team
Cursive
5 months
Second is Sign Everything, an exposition on why every piece of content should be digitally signed:
0
0
1
@cursive_team
Cursive
5 months
We're planning on doing many more experiments exploring these questions, please reach out if you are interested in helping or have done similar analysis!
0
0
1