A hash algorithm is a function which takes a variable size input and produces a fixed size output. The algorithm tries to make it difficult to predict the output for a given input, find two inputs with the same output, or reconstruct the input from the output.
14
votes
2answers
1k views
Is “real salt” the same as “initialization vectors”?
In the question about real vs. fake salt, the answers describe how real salt 'perturbs the encryption algorithm.' I know roughly how initialization vectors work; is this the same concept, or something ...
13
votes
7answers
3k views
Why do people still use/recommend MD5 if it is cracked since 1996?
It's still commonly recommended way of hashing passwords, even if it's insecurity had been proven in 1996
Therefore we suggest that in the future MD5 should no longer be implemented in ...
13
votes
4answers
2k views
How quickly can these password schemes really be beaten?
If you use a quick hashing algorithm like MD5 or SHA-1 to hash passwords and you don't use any salt at all, how quickly could one expect a hacker to find my password out?
If I use a truly random salt ...
13
votes
5answers
1k views
The aescrypt implementation hashes a password 8192 times to generate the key. Is this necessary?
I'm considering encrypting some small files (hundreds of kb apiece) using the aescrypt reference implementation. Looking at the source, it seems that the encryption key is derived from the IV and the ...
13
votes
6answers
468 views
Is there any security risk in storing hashed variations of passwords?
For example, if hypothetically an application requirement was to tell users when their password might have failed because caps-lock was turned on, and hypothetically there was no way for the ...
12
votes
2answers
2k views
Why is it always `HASH( salt + password )` that we recommend?
Browsing over this site, many forums, online articles, there's always one specific way we're suggesting to store a password hash:
function (salt, pass) {
return ( StrongHash(salt + pass) )
}
But ...
12
votes
7answers
1k views
Tripwire - Is it security Theater?
Tripwire type intrusion detection systems supposedly protect your system from rootkits, by monitoring the checksums of important binaries for changes.
Let's say I have tripwire configured to run ...
12
votes
1answer
301 views
Doing a dictionary attack on RSA if you have the public key?
I'm trying to learn exactly how RSA works. Currently I have a very, very simplictic overview that goes like this.
Having the public key allows you to encrypt things. Encrypting the same message ...
12
votes
2answers
3k views
Which SSL/TLS ciphers can be considered secure?
The OpenSSL website provides a long list of different ciphers available for SSL and TLS.
My question is, which of those ciphers can be considered secure nowadays. I am especially interested in HTTPS, ...
12
votes
3answers
814 views
What's the mathematical model behind the security claims of symmetric ciphers and digest algorithms?
Why can SHA-1 be considered a secure hash function? That's something I still wonder about.
I understand the concepts of why modern asymmetric algorithms are deemed to be secure. They are founded on ...
11
votes
4answers
1k views
Looking for example of well-known app using unsalted hashes
Does anyone know of a well-known application that still uses unsalted hashes for password storage? I'm looking for an example for an upcoming lecture on Rainbow Tables, and I think it would add ...
11
votes
2answers
2k views
What is the difference between a Hash Function and a Cryptographic Hash Function?
I mean, is it just a matter of "how dificult is it to reverse the function with the current technology"?
Or is there a mathemathical concept or property that makes them diferent?
If it is a matter ...
11
votes
4answers
455 views
Handling passwords in a web application
I am trying to learn how a secure web application is developed. Particularly, I am unsure of how passwords are sent from the client to the server. For a typical user/password login form. If the client ...
11
votes
5answers
677 views
Convenient cross-platform help on checking secure hashes like SHA-256
It is often helpful to be able to obtain a good cryptographic checksum of a file, e.g. the SHA-256 hash. This can be used to verify file integrity, so long as you have a reliable source for the hash.
...
11
votes
1answer
219 views
“Please Enter Nth Character” without HSM
This question has been asked a few times, but always in the format
"How does examplewebsite.com implement their 'please enter xth yth and zth characters of your password' function?"
And the ...
11
votes
2answers
4k views
Securing a JavaScript Single Page App with RESTful backend
I'm currently in the process of building a JavaScript SPA and have been researching how to secure it. There is currently as RESTful API that is being completely interacted with through AJAX. We also ...
10
votes
7answers
3k views
What are the realistic, and most secure crypto for Symmetric, Asymmetric, Hash, Message Authentication Code ciphers?
I'm interested in updating this two pronged question for 2011:
What cryptology is most appropriate for low-powered devices (such as a cellphone), and yet still effective?
What cryptology is most ...
10
votes
6answers
5k views
Is PBKDF2-based System.Cryptology.RFC2898DeriveBytes() “better” for Unicode Password hashing than traditional methods?
When is it appropriate to use RFC2898DeriveBytes versus a typical hash?
Update
I now understand that a KDF is typically used to create a symmetric key for possible use in encrypting a stream. I ...
10
votes
2answers
6k views
What are the differences between MD5, SHA and RSA?
MD5 tools output hexadecimal values. In the same manner, do SHA and RSA together produce a hexadecimal (or any other) output?
What are the differences between the MD5, SHA and RSA algorithms?
10
votes
7answers
803 views
Why does some popular software still use md5?
Nowadays no one dares to defend md5 for any use, and of course they should not!
However, much popular software still uses md5 in applications such as password hashing (although it's not simple/plain ...
10
votes
3answers
457 views
Does the salt need to be unique or not predictable?
I always thought that salts is simply used to prevent rainbow tables to be used. Other have suggest they should be unique on a per account basis. Currently i have been using a config file to use as ...
10
votes
2answers
1k views
Why are GPUs so good at cracking passwords?
What is it about GPUs that lets them crack passwords so quickly?
It seems like the driving force behind adopting good key-derivation functions for passwords (bcrpyt, PBKDF2, scrypt) instead of ...
10
votes
3answers
519 views
Cryptographic Security of Dynamically Generated, Non-Random Salts
So when it comes to security, when I have an idea that seems good, but no one else seems to be doing, I try to assume that I'm overlooking something obvious or otherwise significant. This is one such ...
10
votes
4answers
881 views
MS-SQL Password Storage
What would be your recommendation for replacement of an MD5 hash approach to password storage within an MS-SQL database be?
10
votes
2answers
353 views
Password Salts and Randomness
Alright, so I understand that users are the kind of beasts who like to use one password and make it short and easy to remember (like "doggies"). If I understand correctly, that's one reason we use ...
10
votes
1answer
852 views
Timing attacks on password hashes
Timing attacks can have a devastating impact in scenarios where the secret is involved, often in cases where byte-wise array comparison is used.
Now there are those that advertise using constant ...
10
votes
4answers
2k views
https security - should password be hashed server-side or client-side?
I am building a web application which requires users to login. All communication goes through https. I am using bcrypt to hash passwords.
I am facing a dilemma - I used to think it is safer to make a ...
10
votes
5answers
913 views
How secure is the SRP that Blizzard uses to protect passwords?
Blizzard very recently announced that their network was compromised, but they assure users in their statement that the password information that the attackers had access to was saved in a secure way:
...
10
votes
4answers
586 views
Encrypting IP addresses in a MySQL database
I'd like to encrypt IP addresses in my MySQL database, with the following constraints:
Does not need to be resistant to attackers that can execute queries.
Must be resistant to attackers that have ...
10
votes
1answer
297 views
What did Blackberry do wrong?
The NIST defines a vulnerability in RIM Blackberry encryption discovered last October.
Apparently, Blackberry's flavour of PBKDF2 was weak. They say:
The offline backup mechanism in Research In ...
9
votes
4answers
2k views
Does symmetric encryption provide data integrity?
Let's say I have one server that encrypts a file with a symmetric key, e.g. AES-CBC, and sends it to clients that decrypt it. Does that provide data integrity when decrypted? Or is it possible for ...
9
votes
3answers
777 views
What is a good enough salt for a SaltedHash?
Since I'm hashing all passwords with each their own salt, is there a benefit to the salt being really random, or would an incremental counter or a guid be good enough? Also, is there a benefit of ...
9
votes
3answers
1k views
Cracking MS-CACHE v2 hashes using GPU
As most people here will know, Windows caches domain/AD credentials in a format known as MS-Cache v2. Obviously, these would be excellent passwords to gain during a penetration test when local access ...
9
votes
2answers
2k views
What are the most common password salting methods?
I learned that the Sun guys used the login name as salt for password hashing. Is this a common approach?
What are the most common salt values?
9
votes
2answers
637 views
Is there any advantage of bcrypt over multiple iterations of SHA-x/MD5?
I know that a good password hashing algorithm should be slow. MD5, SHA256, etc. are fast. So I've been adding multiple iterations of SHA-256 hashing to my web apps (around 50000). Getting the hash of ...
9
votes
1answer
774 views
How to apply a pepper correctly to bcrypt?
For hashing passwords in a database, i would like to add a pepper to the hash function. Of course this pepper will be additionally to the unique salt.
The reason why i want to add a pepper is, that ...
9
votes
2answers
583 views
Estimating the size of a rainbow table
What are rainbow tables and how are they used? Gives a very precise answer about what rainbow tables are and how they are used. I had always confused hash-tables and rainbow tables. My question is ...
8
votes
6answers
555 views
Does prepending a salt to the password instead of inserting it in the middle decrease security?
I read somewhere that adding a salt at the beginning of a password before hashing it is a bad idea. Instead, the article claimed it is much more secure to insert it somewhere in the middle of the ...
8
votes
4answers
312 views
How to evaluate the strength of a hashing algorithm?
At work the hashing algorithm we use for passwords appears to be bespoke. Obviously that's a pretty bad idea, but the management don't seem bothered.
The algorithm always produces 20 character long ...
8
votes
3answers
754 views
Using MD5 for malware ids: collision attack risks?
It has been known since 2004 that the MD5 hash is vulnerable to collision attacks (update - not "preimage" attacks - my mistake....). Yet it still seems that people are using it to identify malware. ...
8
votes
4answers
2k views
moving from MD5 to SHA-512
This question is more of a security policy than a technical security question.
Many years ago I developed an asp.net site, implemented Forms Authentication, and stored the user passwords as MD5 ...
8
votes
3answers
347 views
Are different hash algorithms ever used together?
I was wondering if different hashes (e.g. md5(sha1($data)) ) are ever used together for data security and if there was any reason for it (either positive or negative answer).
8
votes
2answers
73 views
PINsentry PRNG and Bank Cards
My bank provides me with a device similar to this:
The device is essentially a PRNG, presumably based on the date/time of it's internal clock, synchronized with the bank servers.
To generate a pin ...
8
votes
2answers
1k views
How big salt should be?
I will be using scrypt to store passwords in my application. As such, I'll be using SHA-256 and Salsa20 crypto primitives (with PBKDF2).
Having that in mind, how big salt should I use?
Should it be ...
8
votes
3answers
4k views
Whats the difference between MAC vs hash
What is the difference between the two algorithms?
One difference that I know of, is that MAC is keyed and hash is not.
8
votes
2answers
279 views
Is it okay to widely share the RSA key fingerprint for a host?
When you ssh into a remote box for the first time or if the remote host's key fingerprint has changed (from what's stored in your known_hosts file) you get a warning and you are shown the fingerprint ...
8
votes
1answer
435 views
Is there repetition in the Solaris 11 hash routine? Can I add some?
Solaris 11 now uses SHA-256, so we can have longer than 8 character passwords now, by default. That is nice.
I'll just make it clear that this password is never used as a line of defence. Only a ...
8
votes
1answer
303 views
Cheap to validate yet expensive to compute hashing algorithm
I am looking for a hashing algorithm somewhat like bcrypt, except that I would like validation to be extremely cheap.
As an anti-spam measure I would like to require my clients spend say, half a ...
8
votes
1answer
284 views
Any risk in using the same salt for several hashes on a user?
Right now I'm storing a salt and password_hash on the users table (pretty standard stuff).
The need arose to get a secure hash of another field for a user. Is there any risk in reusing the same salt ...
7
votes
2answers
676 views
How difficult is it to modify an ISO image and still have the old md5 check sum?
If I want to download the ubuntu11.04.iso then:
UBUNTUMIRRORSRV -> ISP -> ISP -> etc. -> MYPC
I just want to ask that how difficult is to spoof the original MD5 sum (e.g.: the md5sum would be ...
