We make transactions both confidential and incredibly easy, ensuring that your sensitive financial data stays secure while providing a seamless, user-friendly experience.
Payroll Protocol is a confidential money distribution platform built on top of BNB , designed to provide confidentiality during the distribution of funds on-chain. By leveraging FHE cryptography and smart contracts, Payroll Protocol ensures the confidentiality, security, and efficiency of money distribution.
Payroll Protocol integrates BICONOMY AA SDK, BNB and INCO FHEVM to enhance user experience while confidentially distributing money.
INCO FHEVM provides hidden states to store encrypted addresses that hold encrypted amounts on the INCO network, ensuring that all transactions are secure and confidential. This integration guarantees that money distribution details and recipient information remain confidential. It uses modified Hyperlane infrastructure to bridge these state values from BNB to INCO and vice versa.
Key Features Encrypted USDC Distributions: Protects sensitive information with robust encryption methods. User-Friendly Interface: Simplifies the payroll process with one click, thanks to BICONOMY SDK. Stealth Hold: Users can hold stablecoins for an indefinite amount of time without revealing the amount. Underline Distribution: Users can completely hide their withdrawals by distributing the encrypted amount to different encrypted addresses on their behalf, providing an experience similar to Tornado Cash.
TFHE functions examples: mapping(eaddress => euint32) private ownerToBalance;
// Encrypt a plaintext address to eaddress
function encryptAddress(address plainAddress) public returns (eaddress) {
return asEaddress(plainAddress);
}
function decryptAddress(eaddress _eAddress) public view returns (address) {
// Decrypt the encrypted address
return TFHE.decrypt(_eAddress);
}
function encryptAmount(uint32 amount) public view returns (euint32) {
// Decrypt the encrypted address
return TFHE.asEuint32(amount);
}
function decryptAmount(euint32 encryptedAmount) public view returns (uint32) {
// Decrypt the encrypted address
return TFHE.decrypt(encryptedAmount);
}
Acknowledgements Biconomy BNB INCO FHEVM
How We Built Payroll Protocol (With a Dash of Fun) So, building Payroll Protocol was kind of like assembling IKEA furniture—only with way more encryption and fewer leftover screws (hopefully). Here’s a peek at the ingredients we used to whip this thing up: