Java – advantages of PBE over DES, 3DES and AES
In addition to DES, 3DES and AES encryption technology, I also implemented PBE Compared with the other three, I need some advantages of PBE When I searched the Internet, I only found shortcomings Help me figure out some advantages of using PBE?
Solution
If I understand the term you use, PBE means password or passphrase based encryption
According to the source I saw, PBE is a way to "use" some encryption algorithm Instead of generating a random key, you can use a user supplied password or passphrase to convert it into a key in the format required by the encryption system (using the key derivation function) Here are some references:
> How does password-based encryption technically work? > Java 256-bit AES Password-Based Encryption > Password based encryption. > Encrypt/decrypt with DES using a pass phrase.
In other words, if you compare PBE with DES or AES, you will compare apples with oranges
So what you're really talking about here is comparing PBE with using random keys Advantages of PBE:
>Passwords or passphrases are more memorable than random keys (in fact, random keys are usually so unforgettable that normal people need to put them in a "Keyring" or something... And then use a password or password to protect them!)
Disadvantages include:
>Passwords or passwords can be guessed. > Unused passwords or passphrases may be vulnerable to attacks using the rainbow table