4 ms·
I see a lot of talk and little substance. "You can have 128bit security with a 4 digit pin".... No, No you can't. A 4 digit pin is 14 bit security. Any system
by mSparks 10y ago
I see a lot of talk and little substance.
"You can have 128bit security with a 4 digit pin"....
No, No you can't. A 4 digit pin is 14 bit security. Any system is only as secure as its weakest link.
It's not a password it's a pin...
Dear god, how have we not got past this yet.
While it's good to see an acceptance that iot is fundamentally unworkable on current infrastructure. I am a long way from being convinced this will be it's saviour.
EDIT:Furthermore:
https://github.com/apache/incubator-milagro-crypto/blob/master/java64/TestMPIN.java https://github.com/apache/incubator-milagro-crypto/blob/mast...
/* Client and Server are issued secrets by DTA */
HELL NO.!.!.!.!.!
- dfc 10y agoWhat is DTA? And why is it so bad for use in some code that seems to be for testing?
- mSparks 10y agoWild Guess: Distributed Trust Authority Its not the code, its the description of how the code should work in the comments. ->Their version of a CA tells both the client and the server the secret to use....
- chetanahuja 10y agoThere's an accompanying talk (and slides) that was given at apachecon earlier in the summer. I heard some of the talk (from the OP linked page.. not in person) . The essence of DTA seems to be that it creates key-pairs for both ends of the communication (client and server), multiple DTA's combine to create the private keys and the keys are being distributed to the client side through some out-of-band "protected" channel. The use-case is not billions of browsers connecting to millions of webservers (as in PKI based TLS) but a small number of controllable client end points (a native app binaries on mobile or IoT devices) connecting to a handful of servers. The mental image I came away with (not sure if it's 100% correct) is think of an distributed infrastructure to create SSH key-pairs (where PIN is equivalent to the passphrase for the private key). Wonder if anybody from the Milagro team feels like responding to this thread. It's on HN front-page right now and would be a great chance for the creators to engage with the community.
- mSparks 10y ago:( sounds terrible. I went from eurphoria, to cynicism, to total foil hat in less than an hour. This sounds incredibly like having multiple points of failure (what happens if one of the DTAs is unavailable?) and no public key cryptography (DTAs creating the secret key).
- chetanahuja 10y agoI'll freely admit to neither remotely being a security expert nor being completely confident I got the details right from listening to the talk. It really would help if someone from the actual team engaged the community here (or some other appropriate forum)
- moby_click 10y agoI just learned about Milagro through this submission and only looked at a fraction of the docs but as someone who is not a cryptographer but put some effort into understanding pairing based cryptograph, I find the documentation excellent so far. > No, No you can't. A 4 digit pin is 14 bit security. Any system is only as secure as its weakest link. As far as I understand it, the PIN is used to secure a secret key for a 128bit security cryptosystem against key compromise. Like password protection on ssh keys, this provides stronger security than unprotected keys but I think this PIN is actually part of an interactive proof to protect against offline attacks. The downside of Identity Based Encryption is that you need a master secret key (aside: I think we shoud find a less loaded term like root secret key) to derive the client secrets. The DTA is a way to avoid a single authority in posession of this root secret through secret sharing. Sharing in secret sharing is not copying but splitting into shares. I'm not yet sure if it works like I think it works but I think they use secure multiparty computation to use a shared root secret to derive shares of the client secrets that the clients combine to obtain their secret. That would be really awesome and about the best we can do before more powerful cryptography (functional encryption, fully homomorphic encryption etc.) becomes practical.
- mSparks 10y agoExactly. its a password limited to 4 digits. And why? That gives you no more than 14 bit security even using a decent system like PBKDF2. Which i see no mention of. secrets are just that - secret. The only reason I know of that secrets need sharing is when you are running a key escrow system. Other than that secrets are locked away and used as rarely as possible. Never ever ever transmitted from machine to machine. Thats the key problem in crypto (pun intended). Stuff you transmit cant and wont stay secret.
- moby_click 10y agoHaving read a little further, I think offline attacks are possible and 4 digits alone are useless today but that still does not weaken the security level. You need a key, whether you choose to use a password or not. Correct me if I'm wrong but I don't see secret keys transmitted. The DTAs issue shares of the secret keys that are then combined. Also, transmitting secrets really is a motivating use case for cryptography.