ai analyst backend bitcoin blockchain community manager crypto cryptography cto customer support dao data science defi design developer relations devops discord economy designer entry level erc erc 20 evm front end full stack gaming ganache golang hardhat intern java javascript layer 2 marketing mobile moderator nft node non tech open source openzeppelin pay in crypto product manager project manager react refi research ruby rust sales smart contract solana solidity truffle web3 py web3js zero knowledge
OKX
$63k - $66k estimated
This job is closed
About OKX
Founded in 2017, OKX is one of the world’s leading cryptocurrency spot and derivatives exchanges. OKX has adopted innovative blockchain technology to reshape the financial ecosystem by offering some of the most diverse and sophisticated products, solutions, and trading tools on the market. Trusted by more than 20 million users in over 180 regions globally, OKX strives to provide an engaging platform that empowers every individual to explore the world of crypto. In addition to its world-class DeFi exchange, OKX serves its users with OKX Insights, a research arm that is at the cutting edge of the latest trends in the cryptocurrency industry. With its extensive range of crypto products and services, and unwavering commitment to innovation, OKX’s vision is a world of financial access backed by blockchain and the power of decentralized finance.
Roles & Responsibilities
- Research on various Layer2 and rollup technologies/theories in field
- Develop applied solutions for financial scenarios by combining blockchain and zero-knowledge proof technology
Requirements
- Degree in cryptography, mathematics, computer science or related fields
- Strong experience in and passionate about crypto industry
- Skilled in theoretical foundations, algorithms of zero-knowledge proofs. These include but are not limited to: zkSNARK, zkSTARK, plonk, Groth16, Halo2
- Deep understanding of common cryptographic algorithms and basic mathematical concepts: elliptic curves, finite field algorithms, fast Fourier transforms, polynomial commitments, bilinear pairings
- Experience in developing zero-knowledge proof systems
- Ability to implement zero-knowledge proof circuits using C++/rust
- Proficiency in C++, Rust
- Ability to perform security & performance analysis, optimization on circuits
Good to have
- Skilled in cryptographic algorithms such as homomorphic encryption, ring signatures, threshold signatures
- Published papers at international cryptography conferences
- Fluent in spoken and written English
What is Zero-knowledge?
Zero-knowledge is a concept in cryptography that allows two parties to exchange information without revealing any additional information beyond what is necessary to prove a particular fact
In other words, zero-knowledge is a way of proving something without actually revealing any details about the proof
Here are some examples of zero-knowledge:
- Password authentication: When you enter your password to log into an online account, the server doesn't actually know your password. Instead, it checks to see if the hash of your password matches the stored hash in its database. This is a form of zero-knowledge because the server doesn't know your actual password, just the hash that proves you know the correct password.
- Sudoku puzzles: Suppose you want to prove to someone that you've solved a particularly difficult Sudoku puzzle. You could do this by providing them with the completed puzzle, but that would reveal how you solved it. Instead, you could use a zero-knowledge proof where you demonstrate that you know the solution without actually revealing the solution itself.
- Bitcoin transactions: In a Bitcoin transaction, you prove that you have ownership of a certain amount of Bitcoin without revealing your private key. This is done using a zero-knowledge proof called a Schnorr signature, which allows you to prove ownership of a specific transaction output without revealing the private key associated with that output.
- Secure messaging: In a secure messaging app, you can prove to your contacts that you have access to a shared secret without revealing the secret itself. This is done using a zero-knowledge proof, which allows you to prove that you have access to the secret without actually revealing what the secret is.