When it comes to encryption, a digital signature is associated with two concepts that are often confused.
Encryption: Encryption is a way to send information in a password way. Only the person with the correct key can unlock the password for this information. For other people, this information looks like a series of random letters, numbers, and symbols. Encryption is especially important if you want to send sensitive information that should not be viewed by others.
Digital Signature: Digital signature is a kind of common physical signature written on paper, but it uses the technology of public key cryptography to identify the method of digital information. A set of digital signatures usually defines two complementary operations, one for signature and the other for verification.
The difference between encryption and digital signature
Like digital signatures, public key cryptography uses software such as PGP, uses mathematical algorithms to transform information, and relies on public and private keys. However, there is a difference between encryption and digital signatures, and the purpose of encryption is to secretly hide content by translating information into passwords. The purpose of digital signatures is integrity and identity, verifying that the sender and the content of a message have not been modified. Although encryption and digital signatures can be used alone, you can also use digital signatures for encrypted information.
When you sign a message, you use your private key, and anyone with your public key can verify that the signature is legal. When you encrypt a message, you use the public key for the person who received your message, and use his or her private key to decode the information. The recipient of this information should be the only person to be able to view this information, for people to keep their private key secret, and to protect the keys with a password.
Algorithm Classification
First, one-way hashing algorithm: belongs to the digest algorithm, is not an encryption algorithm, the function is to change any long input message string into a fixed long output string a function
BASE64 (Strictly, code format, not encryption algorithm)
MD5 (Message Digest algorithm 5, Information Digest algorithm)
SHA (Secure Hash algorithm, secure Hash Algorithm)
HMAC (hash messages authentication code, hash message authentication code)
CRC (Cyclical redundancy check, cyclic redundancy code checksum)
Symmetric encryption algorithm: The encryption key is the same as the decryption key
DES (Data encryption Standard, Encryption Standard algorithm)
AES (Advanced encryption Standard, Advanced Encryption Standard)
PBE (password-based encryption, based on password authentication)
RC5 (group cipher algorithm with variable parameters)
BLOWFISH (symmetric key grouping encryption algorithm)
Asymmetric encryption algorithm: Encryption key and decryption key is not the same
RSA (the name of the algorithm is named after the inventor: Ron Rivest, Adishamir and Leonard Adleman)
DH (Diffie-hellman algorithm, key agreement)
Elgamal (can be used for both data encryption and digital signatures)
DSA (Digital Signature algorithm, digital signature)
ECC (elliptic Curves cryptography, Elliptic curve algorithm)
Merkle-hellman (knapsack algorithm)
Miller Rabin algorithm (prime number test algorithm)
Reference digital signature encryption one-way hash algorithm symmetric encryption algorithm asymmetric encryption algorithm BASE64 algorithm MD5 algorithm SHA algorithm HMAC algorithm CRC algorithm des algorithm AES algorithm PBE algorithm RC5 algorithm blowfish algorithm RSA algorithm Dif Fie-hellman algorithm ElGamal algorithm DSA algorithm elliptic curve algorithm Merkle-hellman knapsack algorithm Miller Rabin algorithm