Questions tagged [password-based-encryption]

Encryption using a key derived from a password or passphrase entered by the user.

Filter by
Sorted by
Tagged with
125
votes
5answers
111k views

What is a cryptographic “salt”?

I'm a beginner to cryptography and looking to understand in very simple terms what a cryptographic "salt" is, when I might need to use it, and why I should or should not use it. Can I get a ...
19
votes
2answers
854 views

Is there any SRP-like key exchange only using “standard” cryptographic primitives?

I am looking into PAKEs (password-authenticated key exchanges), and it seems like SRP (Secure Remote Password) is essentially the de-facto standard. However, implementing SRP actually requires doing ...
16
votes
4answers
29k views

Is password-based AES encryption secure at all?

For a few years I have put all my passwords in a text file and encrypted that file with a password using a software solution (Axcrypt) which uses AES-128. The password is not really strong, but I ...
14
votes
2answers
1k views

How to derive two keys from one password

What is the best way to generate two independent symmetric keys from one user-entered password or passphrase? Would using both scrypt and pbkdf2 achieve this?
13
votes
1answer
3k views

When to use Argon2i vs Argon2d vs Argon2id?

I've read the manual, and multiple articles / StackExchange posts about this topic, but still can't decide which implementation of Argon2 is best for my use case. I want to securely encrypt passwords ...
12
votes
2answers
4k views

How can I make my cipher show the avalanche effect?

I am a beginner in cryptography. I designed an password based encryption-decryption algorithm, which uses a random salt and a password to encrypt a message. I'm using SHA-512 for hashing, matrix ...
10
votes
2answers
4k views

Need for salt with IV

I have mainly referred to this question. Definitely in case of using a salt, IV has a use of adding randomisation to each and every key. But isn't it redundant in case of using an IV to use a salt? (...
9
votes
1answer
3k views

Encrypting user data with their password?

I had an idea once that all of the user data (including the username) could be encrypted with the user's password. Obviously, most sites would store different data, so using the same password and ...
9
votes
3answers
19k views

Best way to generate a IV for AES-CBC when encrypting files?

The situation is that I want to use symmetric encryption to store some info in files. I'm going to use AES-CBC algorithm. The user is going to remember the password (meaning it will not be stored ...
8
votes
3answers
52k views

Length of encryption password aes-256-cbc

I'm encrypting a file with sensitive information with cat secret | openssl aes-256-cbc -a -salt > secret.enc I am choosing a random encryption password with <...
7
votes
3answers
3k views

Can I create a fixed length output from a fixed length input?

I use AES256 for various purposes in my app. However, the purpose I am now trying to achieve is the following: Input is for example AU00000001 and I would like a ...
7
votes
2answers
2k views

Argon2 for both password storage and key derivation

Is using Argon2 for both password storage and key derivation secure? I'm planning on using different salt values, of course. The basic concept is something like this: Alice has some secret data ($...
7
votes
1answer
268 views

How to generate a key using any $m$ passwords out of total $n$?

My application requires an AES-256 key K for some secure operation. In order to avoid saving this key in application, I have implemented following scheme: There ...
6
votes
2answers
2k views

How are recovery keys possible if something is encrypted using a password?

I thought that encryption works as follows - it is about changing the thing we want to secure using an algorithm and using the password to mathematically change the secured content so it is unreadable....
6
votes
1answer
4k views

Recommended password complexity for SSH key encryption using AES-256-CBC

When protecting SSH private keys with password-based encryption, what would be a good minimum password complexity+length standard to make cracking the password too difficult to be worthwhile anytime ...
6
votes
2answers
3k views

Encryption Key derivation from numeric PIN?

I want to store data encrypted within an Android application. Keeping an encryption key safe outside the app is not an option so I looked into password derived key algorithms. I found a nice example ...
6
votes
1answer
2k views

Generating a key to use with AES

I'm going paperless, and I want to encrypt the documents that I scan. I'd like to use CommonCrypto to perform AES-XTS encryption on each file. I'm a software engineer, and I like the idea of being ...
5
votes
3answers
12k views

What's the difference between PBKDF2 and HMAC-SHA256 in security?

Being a software developer, I haven't dealt with crypto so far. So I know very little, sorry for that already. I am aware that you should use bcrypt, scrypt, Argon2 or PBKDF2 for generating a hash ...
5
votes
1answer
299 views

Using a non-secure random generator for IV or salt generation

I was just looking at a post on Code Review when I noticed the other answer to the post. While I would agree mostly with the answer, I do however doubt if having a Cryptographically Secure PRNG is ...
5
votes
1answer
1k views

Can I secure my key by XORing it with a hashed password?

I'd like to build a simple password-protected symmetric key system. The key-creation process in my system operates as follows: The system creates a 256-bit key purely at random. The user chooses a ...
5
votes
2answers
2k views

Why cryptsetup default KDF is PBKDF2 and not Argon2(id)?

I plan to do a clean install of ArchLinux with Full Disk Encryption (with LUKS) but I'm not sure to understand the default KDF choice (PBKDF2+SHA-256). I didn't manage to find any pieces of evidence ...
5
votes
1answer
312 views

Is there a tangible benefit in keeping the number of PBKDF iterations secret and not storing them with the ciphertext?

Suppose I have a local file and it is encrypted with a symmetric key derived from a strong passphrase, unique salt and $x$ number of PBKDF (e.g. Scrypt) iterations. I am interested in keeping this ...
5
votes
1answer
350 views

Is it safe to derive two different keys with the same password and key derivation function using two different salts?

I would like to know if the following process would harm the security of a fictional system if the persisted data would be stolen: in this system a user has a single password. The password will be ...
5
votes
2answers
559 views

Password derived hash to encrypt known plaintext as password check

The title sounds way too adventurous for what it actually is. I am currently building a system which features some encryption. There is already a system in place, which is built after that scheme if ...
5
votes
1answer
150 views

How would quantum computers affect password based encryption?

At first glance: Assuming that the output of the password hashing function is large enough, quantum computers should have no effect on password encryption as on symmetric cryptography in general. Is ...
5
votes
0answers
767 views

How safe can PKZIP-compatible encryption be?

PKZIP encryption has been around since 1990, and its decryption is directly supported in most desktop environments (Windows, MacOS, most Linux distros). This makes it one of very few options when ...
5
votes
0answers
501 views

Is there a “brainwallet” for GPG keys? [closed]

“Brainwallet” is a program that takes a passphrase (hopefully a good one) and deterministically creates a Bitcoin wallet. This wallet can be used for transactions, then deleted from the computer. To ...
4
votes
3answers
2k views

Does encrypting data multiple times using different passwords increase security?

Does encrypting plain-text data multiple times using different passwords provide a greater level of security? If so, what encryption algorithm would be best for such a use? Would it be beneficial to ...
4
votes
3answers
995 views

Should we run PBKDF2 for every plaintext to be protected or should we run PBKDF2 only once?

I am going to store secrets from users. The secrets need to be stored confidentially. For this question, I am concerned only with confidentiality (not integrity). Here is how my encryption scheme is: ...
4
votes
3answers
3k views

Password-based cipher with fast encryption

Define a password-based cipher as a cipher which decryption key is a humanly memorable password, thus optimistically at most 28 to 44 bits of entropy (per the obligatory XKCD). For a password-based ...
4
votes
3answers
3k views

How can mega store my login details and still be secure?

I understand how Mega's encryption works. For a quick summary of all those in the future looking for an answer on this... here is how it works: Upon first signing up for an account you make a ...
4
votes
1answer
382 views

Can key hardening compensate lack of entropy?

In the context of an offline brute-force attack on encrypted data at rest (say, a password-protected AES encrypted file), is a password with 64 bits of entropy and 65536 rounds of key hardening just ...
4
votes
1answer
256 views

Encrypt a small amount of data with a password derived from PBKDF2

I have a small amount of data (about 128 bits) to secured with a strong password. I plan to run PBKDF2-SHA2-256 on the password and a 128 bit random salt to generate a 256 bit derived key. Then with ...
4
votes
2answers
2k views

End to end encrypted web chat app with stored messages in database

I am working on a web app with an integrated chat. All chats can only occur between two users - not more, not less. I am very concerned with security, so I would like to encrypt all chat messages with ...
4
votes
1answer
554 views

Multiple users getting access to same (secret) encryption key on a single computer?

I am developing an application for Desktop PCs (Mac primarily, Windows later) that uses an encrypted SQLite database. I want to give multiple authenticated users access to this "main" ...
4
votes
2answers
365 views

Using PBKDF2 twice with different argument order

I'm pretty sure this is a really bad approach (in theory), but one of my clients is doing this and I was wondering… How bad it is to perform pbkdf-2 in this way (with 2000 iterations)? ...
4
votes
0answers
105 views

Upgrading key derivation by adding a XOR with a known value

In general keys for password based key derivation are derived from a password hash such as the old PBKDF2 function or Argon2, possibly followed by another derivation function to derive data and ...
4
votes
1answer
152 views

Security limits of password-based encryption

A reasonable way to do password-based encryption is: put the passphrase¹ and nonce in a well-parametrized memory-hard iterated hash function like Argon2, to derive a key 128-bit or larger. output the ...
3
votes
2answers
465 views

How to design a cryptographically secure file hosting service

How would one go about designing something like Google Drive/Dropbox providing the following features: files are encrypted and decrypted on the client files can be synced between devices the service ...
3
votes
1answer
4k views

AES-256 password cracking time

My question is kinda simple. I want to use AES-256 encryption to encrypt my backup. Using a password like this: ...
3
votes
1answer
200 views

Hashing a password with the password?

I was wondering if hashing a password with the password would be a good way of encrypting the password. So, the user must know his/her password to get the same result as the one in the database. Also, ...
3
votes
1answer
114 views

What is this called: encrypt $X$ with key $E$, decrypt $X$ with key $D$?

I am a software developer interested in developing an application with cryptography. I can explain what I want to accomplish, but I do not know the technical terms for the cryptographic functions I am ...
3
votes
1answer
972 views

Would it be safe to store GCM nonce in the encrypted output?

I'm looking to use AES-256 GCM to encrypt and authenticate a file containing sensitive information. I am a bit loss on where to store the nonce that is required for GCM. Would it be adequate/safe to ...
3
votes
1answer
2k views

Rfc2898DeriveBytes - password length

Trying to find related answer for a long time, but not convinced yet. What I am trying is to encrypt using RijndaelManaged. To create Key, I am passing password, ...
3
votes
1answer
426 views

Is there a known vulnerability when using identical key and salt with PBKDF2?

For optimum security, a random salt should be chosen for PBKDF2. I came across a scenario where I produce a hash of a random file that serves as the "password". Due to the nature of files, this has ...
3
votes
1answer
147 views

Password-based encryption with small typos allowed

I'm trying to write some software to encrypt and decrypt some messages with a password. I am trying to implement it using this post: How can I securely convert a "string" password to a key used in ...
3
votes
1answer
190 views

How to change the master password in a password manager

For a personal project, I'm building a password manager, based off the project in this syllabus from Stanford http://crypto.stanford.edu/~dabo/cs255/hw_and_proj/proj1.pdf Since I don't exactly have ...
3
votes
1answer
490 views

How does ccrypt work?

On many Linux/GNU distributions CCrypt (ccrypt) by Peter Selinger is available as a command line utility to encrypt files. How does the protocol work and is it ...
3
votes
1answer
1k views

Database and End-to-End Encryption

I'm currently designing a mobile/desktop application to synchronize some messages or notes. I'm searching for a way to secure it and to avoid letting the server be able to read the messages. My goal ...
3
votes
1answer
171 views

What security differences are there between E(p',“well-known-plaintext”) vs. hash(p') where p'=KDF(p)

I am using a KDF to derive a key, p' from a password p. I would like to know if the password is correct before using the derived ...