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.

learn more… | top users | synonyms (1)

127
votes
11answers
41k views

Why are hash functions one way? If I know the algorithm, why can't I calculate the input from it?

Why can't a password hash be reverse engineered? I've looked into this ages ago and have read lots on it, but I can't find the explanation of why it can't be done. An example will make it easier to ...
2
votes
6answers
1k views

“Double hashing” with 2 different hash functions

Is doing something like this sha256(sha512(password+salt)) Less secure then just doing sha256(password+salt) I've heard it will increase collision chances. I can think of 3 reasons to do this ...
0
votes
2answers
166 views

How much security should I use for my web application?

My question is, for a "normal" site, what do you think is enough to secure against methods used by "script kiddies"? For example, SQL injection, XSS, and stuff like that. Same question for password ...
9
votes
1answer
959 views

Would it make sense to use Bcrypt and PBKDF2 together?

I've read various opinions about whether Bcrypt or PDBKF2 is a better key derivation hashing method. The answer seems to depend on a lot of complicated factors that are not easy to analyze. Would ...
3
votes
4answers
401 views

sha512 as no-login-necessary token

My site has a news subscription system. When an item is updated, a notification email goes out to everyone subscribed to that item. You can un/subscribe via a form on each item's page. I wanted to ...
5
votes
2answers
1k views

Revisting the Username Hash

There are a few questions which ask for inputs on the wisdom of storing (possibly salted) username hashes for the purpose of authenticating end user access to some information resource. Most of the ...
18
votes
2answers
5k views

How big should salt 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
5answers
2k views

What is the problem with chain hashing?

Let's say that my password is a single character: "a". Couldn't I chain hash it 1000 (or more) times and make it nearly invulnerable to rainbow table attacks and brute force? Why isn't this ...
7
votes
1answer
1k views

Bcrypt as a key derivation function?

I read a lot of entries at stack exchange about bcrypt and why it is supposed to be better than PBKDF2 in terms of password storage. I'm asking now if bcrypt is better than PBKDF2 in terms of key ...
5
votes
2answers
946 views

Zero padding in HMAC

Section 2 of RFC 2104 defines the key used in HMAC should be padded with zero bytes up to the block length of the underlying hash algorithm. Isn't this a potential security vulnerability since any key ...
5
votes
2answers
3k views

openssl_digest vs hash vs hash_hmac? Difference between SALT & HMAC?

openssl_digest vs hash vs hash_hmac I want to use SHA512 for storing password. Which of the above methods are best to use? Why? What is the difference between SALT & HMAC? I just read ...
10
votes
2answers
2k views

How does Google not care about “spaces” in Application-specific passwords?

I have recently setup "2-step verification" for my Google account. One of the features is the ability to create "Application-specific passwords " for devices that do not support the 2 step process. ...
12
votes
1answer
638 views

General purpose slow/unique hash routine for dup checking of private data, without storing the data itself?

I am wondering if there is a percentage of uniqueness known to be lost with every repeat of various hash routines, like MD5, SHA1, and how that might compare with other algorithms. If theoretically I ...
4
votes
2answers
5k views

PHP Vulnerability May Halt Millions of Servers - max_input_vars!

Recent version of PHP 5.3.9 has been released a couple days ago, and Hash Collisions have been fixed, most of the servers actually didn't upgrade their server until now, including my website's server. ...
4
votes
3answers
394 views

Is it safe or even common to cache bcrypt checks in-memory

In a web application that (as a side effect of implementing the password anti-pattern) stores passwords, one recommendation is to bcrypt to store them (or computationally expensive one-way salted ...
16
votes
7answers
3k 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 ...
4
votes
1answer
3k views

Rainbow tables, generation and lookup, preferably using GPU

1a) What software can I use to generate my own rainbow tables, preferably software that can utilize CUDA or ATI Stream? One of the reasons I want to make my own, is that I want to use a specific ...
7
votes
2answers
2k views

Keeping user data private in a cloud environment like Google App Engine

I am writing an open-source Java application for Google App Engine (GAE). The application will let users create content that is intended to be private. I want to provide reasonable assurances that ...
6
votes
3answers
199 views

How could one detect if Apple/Google/etc. has modified a third party application distributed through their App Stores?

Are there any realistic methods for verifying that Apple or whoever has not tampered with third party application distributed through their App Store? You might for example have an open source ...
13
votes
4answers
6k 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 ...
7
votes
5answers
15k views

SHA, RSA and the relation between them

SHA is the hashing mechanism. However, RSA is the encryption algorithm. So does RSA algorithm use SHA hashing mechanism to generate hashing keys which in turn is used to encrypt the message?? ...
18
votes
1answer
3k 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 ...
1
vote
1answer
2k views

Can Solaris' shadow hashes be created by better algorithms than the default DES-based hash?

By default, Solaris uses Traditional DES to encrypt password hashes in the shadow file. Is there a way to harden the security by changing this default behaviour and make it to be hashed using a ...
6
votes
2answers
2k views

What algorithms are best be cracked by GPU?

What algorithms are best being attacked by a GPU powered password cracker? For example, I heard that md5crypt that is being used in unix shadow file, is not the best choice for GPU cracking because it ...
4
votes
2answers
215 views

Salting a public hash

Does it make any sense at all to salt a hash which might be available publicly? It doesn't really make sense to me, but does anyone actually do that? UPDATE - Some more info: An acquaintance of ...
4
votes
3answers
1k views

Does Hash/Salted password really help when DB is compromised?

I came across this article and got a basic understanding hash, salt and brute force attack. My question is in the article, the author emphasises how hard it is to reverse the hash/salted password to ...
6
votes
3answers
890 views

Global check of input/output of known hash functions

Is there a website, application, or script that will allow you to give an input/output for a hash function, run these against known functions, and return any matches? Here's one attempt to list the ...
9
votes
2answers
1k 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).
6
votes
9answers
5k views

What is the best way of securing a website logon without SSL or preshared keys?

Today I sniffed some unencrypted wlan traffic during class and I found quite a few passwords by a simple search for "pass" and "user" in wireshark. Turns out about half the sites we use for school ...
15
votes
7answers
4k 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. ...
15
votes
4answers
5k 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 ...
29
votes
4answers
10k 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 ...
4
votes
5answers
488 views

Am I required to hash passwords

Is one required to hash passwords by law in the US or elsewhere? If not required by law, are there legal ramifications if unhashed passwords are stolen? If not required in the US, but required in the ...
25
votes
3answers
14k 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, ...
13
votes
3answers
1k 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 ...
3
votes
1answer
115 views

What are the implications of omitting the username in Secure Remote Password's verifier?

I consider implementing a Secure Remote Password (SRP-6a) verifier that omits the username from the x key hash. The intention is to allow authentication with multiple alternate user identifiers such ...
3
votes
2answers
477 views

What is considered a reasonably high iteration count?

I copy-pasted a function that implements the PBKDF2 hashing algorithm in PHP. The function asks for the amount of time that I would want it to loop in order to produce a hash. Now, I'm wondering, ...
6
votes
3answers
74 views

Patient Hashes for Compression and Security

Are there any front-running approaches to using server-generated hashes to encapsulate patient condition in a concise manner while maximizing security? For example, a system to represent current med ...
31
votes
5answers
13k views

Why AES is not used for secure hashing, instead of SHA-x?

As far as I understand, AES is believed to be extremely secure. (I have read somewhere that it would certainly not be broken in the next 20 years, but I am still not sure if the author was serious.) ...
2
votes
1answer
205 views

How do we encrypt a password using another password?

Heys all I've got a nub question, I was wondering What does it mean to encrypt a password using another password? For example I want to encrypt a password foo using a password bar, does it mean that ...
8
votes
1answer
468 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 ...
3
votes
4answers
248 views

Are there any websites that gather hash sums of different disk image files?

For example the SHA256sum of an Ubuntu ISO image, or an OpenBSD amd64 image. Are there any sites? It's important that the site must use HTTPS or at least it must provide GPG check for the hashes.
3
votes
3answers
2k views

what is the fastest and cheapest way to crack this kind of hash - md5(md5($password) + salt))?

I'm looking for a program that can use any GPU (ATI\NVIDIA) and can brute force a vBulletin hash - md5(md5($password) + salt)). I have the salt and hash. the password contains the symbols - ...
10
votes
3answers
1k 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 ...
5
votes
3answers
1k views

Is it safe to use different derived keys but from the same passphrase for AES CBC encryption followed by HMAC SHA256 hashing?

I am working on a cross platform (JS/iOS/Android) list manager application that persists data through a REST API and I want to ensure that any textual data is properly encrypted on the client side so ...
8
votes
4answers
2k views

Is using HMAC to transmit a password OK?

I'm writing a small webapp and I don't want to transmit login passwords as cleartext. As I don't have SSL available I've written a one-time challenge system which sends a random string with the login ...
14
votes
2answers
679 views

Trustworthiness of kernel.org post attack

What are the security implications of the compromise of kernel.org on the trustworthiness of the code base hosted on the site’s Git repository? The announcement today explained the mitigations ...
22
votes
4answers
4k views

How would you store a 4 digit pin code securely in the database?

I'm familiar with password hashing, using salts, bcrypt etc. But it doesn't seem like this would work to store a 4 digit pin code since the attacker could try all 10,000 combinations quite quickly. ...
40
votes
2answers
5k views

Pre-hash password before applying bcrypt to avoid restricting password length

Good practice is not to unnecessarily restrict password length, so that appropriately-long passphrases (perhaps 35-45 chars for 6/7 dicewords) can be used. (See e.g. Should I have a maximum password ...
11
votes
1answer
902 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 ...