Tag Info

New answers tagged

1

The general response to this is correct - if your server is storing a copy of a key that's used to encrypt something in memory, there is a chance that an exploit will allow it to be stolen. (See: heartbleed) I think it's definitely worth asking in this case why you need to store a hash and an encrypted version of the password. I can see a system in which ...


1

What is the difference between EAP-TLS and AES 256 encryption? They are not just different protocols, they are entirely different concepts. AES - the Advanced Encryption Standard - is a block cipher algorithm. In AES-256 the 256 denotes the key size (different key sizes also trigger slightly different of AES). AES can be used for the transport ...


0

What is the difference between EAP-TLS and AES 256 encryption? Direct answer No: EAP-TLS protocol is different from AES. First you need to understand the Extensible Authentication Protocol (EAP) which is an an extension to Point-to-Point protocol (PPP) spoken between the EAP peer and server and used for authentication (it supports multiple ...


-1

If you use the PUBLIC/PRIVATE style (RSA with sufficient bits :)) you can set up the kind of secure communication you describe this way: Alice write a message Alice encrypts it using Alice's PRIVATE key Alice encrypts it again using Bob's PUBLIC key Alice sends the results to Bob. Then: Bob receives a message (supposedly) from Alice Bob decrypts it ...


1

You are right to be suspicious of this process. Android apps are super easy to decompile, so you should assume that any keys that are embedded in the app might as well be posted in a public blog. Without more information on why you need to encrypt the data files it's hard to give detailed advice. A usual way to solve similar problems is to use public-key ...


1

Padding oracle attacks occur when the attacker is in position to submit encrypted messages and observe the key owner when it tries to decrypt them. The attacker then provides specially crafted messages (based from some piece of the encrypted data that the attacker would love to see decrypted) that decrypt to junk but occasionally decrypt to ...


3

I was planning on user AES256 to ensure the client can't change the value of the cookie. Encryption provides confidentiality, it does not provide authentication. If you do not want users to see a session data value, then you should encrypt then authenticate the value. This prevents a bit flipping attack from changing the value inside of the encrypted ...


2

Encryption alone is not enough because it only provides confidentiality and this task also requires authenticity. If the plaintext in the attacker's cookie contains something like User number 9 is authenticated then the attacker can change bits in the ciphertext that when it is decrypted on the server it will say User number 1 is authenticated and be ...


0

If you are looking for details, RFC 4880 describes all the details for implementing OpenPGP, which as far as I can tell is the most common method of encrypting data with one key (KEY1), encrypting that key with a second key (KEY2) to generate an encrypted key ("Enc_KEY1"), storing both the encrypted data and the encrypted key. Later only people who have (or ...


1

You used both terms key and password, so I am not sure what you mean because they are different concepts. That is why I will discuss them briefly: In the case you are talking about keys, then your whole system is insecure because: The person who has encryption keys should not be the same person who has access to the encrypted data. At least two persons ...


3

I highly suggest creating secure, random cryptographic keys every time you have to encrypt customer information via AES and enter it into the database. Obviously, you will have to somehow store the keys since they will be randomly generated. With that being said, I would suggest using a Hardware Security Module to store keys, but you should definitely ...


2

Since there's only one key for all users, you're probably storing it on the server that the DB is located on. This is only marginally better than just leaving data in cleartext - it's like taping your house key to your door's lock. If you give the key to every client, then it'll be trivial for an attacker to acquire the key, rendering your encryption ...


0

Few comments to the provided flow: Be sure that when you say "Two random initialization-vectors are generated.", they really are cryptographically-secure random. Symmetric Encryption must be Authenticated Encryption. Therefore, I suggest you add som MAC (i.e using HMAC). E.g: 1. AES-encrypt: plaintext + secret key + fresh-generated random IV = ...



Top 50 recent answers are included