Polyinstantiation in Relational Databases with Multilevel Security Rubber-hose cryptanalysis RubberHose

What it does

  • You can have the best cryptography in the world, but that won't stop a state actor or a criminal from tying you to a chair and beating you with a rubber hose until you spill your secrets.
  • Server side solution to the rubber house problem
  • Alice creates two data sets
  • The data is encrypted and hidden with Enigma
  • Alice has two passwords --> later implementation the passwords should be private keys and we should be able to access the information from. This was not implemented in Enigma yet
  • One password returns the fake data and one password returns the real data
  • When Bob Rubber Hoses Alice and revives the fake data, he thinks it is real and ends the hosing. ## How I built it
  • Rust secret smart contracts
  • Discovery dev tool from enigma
  • Enigma JS
  • Regular front end react things

Challenges I ran into

  • Testing the rust smart contract
  • Certain Rust idioms were hard to follow
  • using Enigma.js
  • Understanding Enigma as a whole to understand if we were leaking data ## Accomplishments that I'm proud of
  • writing successful Rust stuff
  • getting EnigmaJs to connect ## What I learned
  • Each challenge was a learning opportunity which we capitalized on. ## How we gave back
  • Logged github issues for feedback on how we felt discovery could be made more user friendly. It was really good to use but there were some small things. ## What's next for Rubber Hose
  • open source and then have spies and dissidents use this to topple dictatorships.........or like refine and refactor the rust code to follow more idioms, when enigma allows access to the tx object use msg.sender instead of password
Share this project: