Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Besides encrypting your user data at rest using these post-quantum cryptography algo.

What can be done from a design point of view to make it as hard as possible to deter attackers?

Would it make sense to segregate different types of data into other dbs rather than as a separate table?

“Name DB” “Account DB” “Address DB”

An attacker would need to have advanced knowledge of the app backend to know you have to snag both the account db and address db. Otherwise, the decrypted data is useless with only 1 db.

Drawbacks of course include “performance degradation”, “increasingly complex app”.

Ideally, if you did not need to store sensitive data or collect other user info such as address or zip code. Then not asking for it at all would be optimal. Maybe regulation is needed here.



Assumed attackers owning quantum computers probably have much better “Address DB” than yours.

As for regular assessment of your secure infrastructure, you can read latest “Algorithms, Key Size and Protocols Report”:

https://www.ecrypt.eu.org/csa/documents/D5.4-FinalAlgKeySize...

and practical part of ENISA report:

https://www.enisa.europa.eu/publications/post-quantum-crypto...


>Besides encrypting your user data at rest using these post-quantum cryptography algo.

If you're encrypting data at rest, just keep using an appropriate mode of AES (or ChaCha20 or whatever+) and exercising good key management practices. Quantum computing is largely irrelevant to conventional symmetric ciphers.

+ for tightly constrained values of 'whatever'


QC will break AES 128 and reduce the margin of security for AES 256 is my understanding.


QC is worth a one bit of reduction in security strength for AES.


No it’s worth a 1/2 reduction in the number of bits. So 256 becomes effectively 128 bit encryption. Idk though if the solution could be as simple as creating “AES 512”.


If I were an adversary possessing a (quantum) code-breaking device, who can break into your infra that uses a (pre-quantum) encryption for authorization, I probably would attach a debugger to your worker process, and find out about all your databases, and maybe hijacked a live connection to one.

If I only could get access to nothing but one database, and every table / segment of it were encrypted differently, it would likely take as much effort to break into each of them, as if they were "physically separate" databases.


This doesn't make sense:

- i think encryption at rest would probably just use symmeyric encryption which is unaffected by shor

- how does the attacker get into your network in this scenario. Stuff encrypted at rest by definition is not flying around the network.

- what sort of scenario would be involved where the attacker knows how to get one db but not the others? The hard part is figuring out the first db

> Drawbacks of course include “performance degradation”, “increasingly complex app”.

On the contrary, sharding is a super common performance technique.


Minor nit, symmetric encryption is “impacted” by QC, see Grover’s algorithm. The speed up isn’t as fast, though.


it is also trivial to work around by just doubling the key length. But even without that the speed up is slow enough that we will be well within the quantum age before this matters. The article talks about this a bit.


Typically once you get access you just try to dump everything and figure it out later. Splitting into separate stores is just convoluting your day to day for minimal inconvenience to a possibly non-existent an adversary.

The only real protection is encryption.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: