notfed / puree Goto Github PK
View Code? Open in Web Editor NEWPUREE: Password-based Uniform-Random-Equivalent Encryption
Home Page: https://puree.cc
License: Other
PUREE: Password-based Uniform-Random-Equivalent Encryption
Home Page: https://puree.cc
License: Other
Hi - very nice paper. There is another effort done by the dedis lab at EPFL, Switzerland: https://github.com/dedis/purb. It has some work on how to efficiently store different encryption schemes.
Designed a network protocol without plaintext markup myself and used... uh... the only possible way to organize such protocol :) My protocol has no configuration freedom, though.
If you support slots, is there a reason to not use them? This way you can generate proper key and change password and key independently. I would use simple array of slots as the first header.
header1
slot
slot
...
slot
slot
salt
mac
key
header2 address
header2
type
data
Leave it to the second header to specify its type and any other chained headers.
If you want to provide 3 bits of public information, you can encode them in random data. Provide a short salt then take 3 bits from hash(salt,password)
. If all combinations are equally probable, it doesn't expose information about password. You will need to generate the salt 8 times to see which gives necessary value. But those three metaparameters don't look very useful. CipherHasParams - isn't this flag provided by the header type? DontStretchPassword - sure this can be tried unconditionally and doesn't need to be encoded anywhere, you also duplicate it as parameter character and to prevent ambiguity it looks like you need to specify the parameter character unconditionally. UseAntiForensicRegion - you didn't specify the design rationale which seems to be ensured destruction by partial overwrite, then it doesn't hurt to use it unconditionally.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.