Tag Info

Hot answers tagged

41

"Fault attacks" are something you do on some hardware: that is in your physical hands, but is shielded against intrusion ("tamper resistant"), and does computations with values that you don't know but would like to ("cryptographic keys"). Example of such hardware are smart cards. A classic scenario would be: you have a smart card for a satellite-TV ...


16

I'd use bit length for the size of something, such as a key. I'd use bit strength as the base 2 logarithm of the cost of an attack. i.e. it costs about 2^n basic operations to break something. A brute force attack against an n bit key that simply tries to guess the key costs 2^(n-1) calls to the encryption function on average, which lead to this convention ...


16

This is a local attack and is an attack on the cryptographic algorithm itself. Basically, it is making use of the fact that at low voltage, it is hard to distinguish between a 0 and a 1 in order to fuzz the encryption algorithms in to leaking information about the key. This is of limited use since it requires a system that is securely loading and running ...


9

As far as I can tell, this scheme doesn't make any sense. As you've noted, you still need to store the plaintext email address for the user, so there isn't any significant security benefit to using the plaintext email and email + password + salt hash vs just using plaintext email and password + salt hash. As I'm sure you've already noted, without the ...


7

They are pretty similar but are slightly different. The key length is simply the length, in bits, of the key used for cryptographic operations. If the key is chosen randomly and the algorithm doesn't have any vulnerabilities, then the bit strength is exactly the same as the key length. The bit strength is a measure of how resistant something is to ...


6

When the bit strength is k, this means: "the algorithm stands its ground against attackers who cannot compute at least 2k-1 elementary operations". When the bit length is k, this means: "the key, or at least the main component of the key, can be represented as a sequence of k bits". Exhaustive search is about trying all possible keys until one works. This ...


6

Your notation seems to relate to hybrid encryption. The message is encrypted with a symmetric key KAB; that key was probably generated randomly by the sender. For the recipient to know it, it is necessary to send it along with the message, but not as clear text, of course: KAB is encrypted with the recipient's (Bob's) public key. Thus, Alice does the ...


5

To answer your questions: {K_AB}**K_B_E is prepended to the message so that the receiver has the symmetric key to decrypt the message. Because the key K_B_E is used only Bob can decrypt the symmetric key and only he can therefore read the message. The next is the hash {h} which is encrypted/signed by the key K_A_D. I assume that K_A_D is the private key of ...


4

Could there be some miscommunication between you and the IT department head? As Xander had already pointed out, such a scheme does not work, and I would even add that it is ridiculous. In order to authenticate a user, a database lookup has to be performed on the login email address in order to retrieve the corresponding hash used for comparison: SELECT hash ...


4

The resulting secret value (the list of filenames to show the concatenation order) would take up more space than the original file. You'd be better off simply using a one-time pad, and keeping that secret... or even keeping the original file secret directly. Your method would work in most cases, in the sense that anyone who possessed the randomly-named ...


4

Statistical tests like the one you use cannot detect whether /dev/urandom is good or bad on a specific machine. Specifically, /dev/urandom runs a cryptographically secure PRNG. From a given initial internal state (the "seed"), it produces an arbitrarily long stream of seemingly random bytes. The PRNG being cryptographically secure means that for an attacker ...


3

The AES competition received 15 candidates, two of which suffered from "academic breaks" (weaknesses that are only theoretical, but still demonstrate that the underlying block cipher is not "optimally secure"). The remaining 13 are, to my knowledge, still unbroken to this day. Therefore, the choice of Rijndael had to be done for reasons other than security. ...


3

Only the last line is the actual message sent. Symmetric encryption is generally much faster and potentially more future proof than asymmetric cryptography. It requires far shorter key lengths for security. Since it is the intent to share the entire message with Bob, Alice doesn't have to encrypt the entire message (long) with Bob's public key. Instead, ...


3

This is the path used when proving the encrypted data hasn't been tempered with, commonly known as a digital signature[1]. The part the diagram leaves out is that the commonly accepted technique for digital signatures is to use a hash function, like SHA-256, to represent the data, then sign the hash. It reduces the amount of data being transmitted and ...


3

No. MD5 and SHA1 are largely unrelated. Knowledge about one does not confer any knowledge about the other.


2

If you have the keys (and other parameters, e.g. IV), you could just decrypt the data. That would tell you that the right algorithm was used. If you don't have the keys, then it's very unlikely. If you could do so, you'd be performing a distinguishing attack. There are known distinguishers for some common ciphers (e.g. RC4) but not for others (e.g. AES). ...


2

Yes, you can use a master key to generate what is called a "keystream" the size of the plaintext, and XOR it with the plaintext to encrypt it. This is what we call a stream cipher, and examples are RC4 and Salsa20. No, this does not provide perfect security. Claude Shannon demonstrated in 1949 that you cannot have information theoretic perfect secrecy ...


2

No, this is not the case. A certificate signed by a CA contains only the public key, but for decrypting you need the private key too. This private key is not needed for the CA to sign the key, so they usually don't have it either. But, some CA offer to simplify the process of certificate generation by generating a key pair for the certificate too. In this ...


2

The check is to ensure that skew doesn't occur. If your random number generator has a range of 0 to 9, and you simply take a straight modulus, you'll end up with the following outputs: 0 % 6 = 0 1 % 6 = 1 2 % 6 = 2 3 % 6 = 3 4 % 6 = 4 5 % 6 = 5 6 % 6 = 0 7 % 6 = 1 8 % 6 = 2 9 % 6 = 3 This leads to the values 4 and 5 being less common than 0, 1, 2, or 4. ...


1

Not commenting on the security, this is what I got from a once over: It is considered better form to have a single comma-separated var statement You could do var startDate = new Date('2014/1/1'); and then you dont need your comment You can write if (codeToCheck == todaysCode) return true; return false; as return codeToCheck == todaysCode; Other than ...


1

Took a while to wrap my head around the bizarre syntax your lecturer is using, but basically the symmetric key is a "session" key generated per message and not reused. Hence the need to include an encrypted copy of it in the final message. I'm assuming H**K_A_D is Alice encrypting the message digest with her private key.


1

Collision resistance is about the infeasibility of finding two distinct inputs m and m' such that h(m) = h(m'). The attacker gets to choose m and m' arbitrarily, as long as he ends up with two distinct messages that hash to the same value. Second-preimage resistance is very similar except that the attacker does not get to choose m. Instead, we give him m, ...


1

The two encryptions are equivalent. You can add a wrapper to use one approach as a drop-in replacement of the other: /** * Uses the one-parameter method as if it was the 2-parameter one. */ function buhlencrypt($keya, $data) { global $key; $key = $keya; return encrypt($data); } /** * Uses the two-parameter method as if it was the one-parameter. */ ...


1

Just adding a simpler explanation of Functional Encryption Fully Homomorphic Encryption before proceeding to Functional Encryption and Indistinguishability Obfuscation as it is easier to explain that way. Taken mainly from http://crypto.stanford.edu/craig/easy-fhe.pdf The above is a paper by Craig Gentry (one of the pioneers in this field), and he gives a ...


1

Unfortunately, this won't be as secure as you may be hoping. First, you will have to have a fairly coarse geographical scheme, because GPS coordinates vary based on things like weather, interference, etc. You might need to have regions that are 250 meters wide. Then, when you divide up someone's town or home region into a grid like that, there are only a few ...


1

There is a few different approaches to this problem. Formal proof: Very few crypto systems has been formally proven secure. However two notable examples that have been formally proven secure are the one-time-pad and message authentication codes based on almost strongly universal families of hash functions. Both of those are impractical for most usage cases ...


1

There is no mathematical proof that secure encryption systems can actually exist, let alone that any specific candidate is secure. At best, some encryption algorithm can be proven to be secure (for some notion of security) as long as some given mathematical problem remains intractable with existing knowledge. E.g. the Rabin cryptosystem can be proven (with ...


1

I use a combination of data sources and a good hashing algorithm to generate random data. On a web-server you can combine server data (HW, SW, performance), client data (user-agent, request-time, cookie, URL variables, whatever you can gather), some external data (like random.org), mix everything with let say sha1(mixed_data + time + some_secret_key) and ...


1

Differentially private mechanisms have been implemented in prototypes. These prototypes will usually take a set of records (eg. a database table) and a query, and then return the result of the query on the table with a small amount of added noise to guarantee differential privacy. While proving that a mechanism is differentially private is mathematically ...



Only top voted, non community-wiki answers of a minimum length are eligible