Encryption / Decryption
암호화 알고리즘(Encryption Algorithm)은 데이터를 암호화(Encryption)하거나 복호화(Decryption)하는 데 사용되는 수학적인 기법이나 절차.
이 알고리즘은 데이터의 기밀성과 무결성을 보호하기 위해 사용됨.
이 알고리즘은 데이터의 기밀성과 무결성을 보호하기 위해 사용됨.
Symmetric Key / Asymmetric Key
대칭키(Symmetric Key)와 비대칭키(Asymmetric Key)는 암호화에 사용되는 키(key)의 종류를 나타낸다.
대칭키 (Symmetric Key) |
---|
대칭키는 암호화와 복호화에 동일한 키를 사용하는 방식 |
암호화할 때 사용한 키와 복호화할 때 사용하는 키가 같으므로 키를 비밀로 유지하는 것이 중요 |
대칭키 암호화 알고리즘에는 DES(Data Encryption Standard), AES(Advanced Encryption Standard), 3DES(Triple Data Encryption Standard) 등이 있음. |
대칭키는 암호화와 복호화 속도가 빠르지만, 키를 안전하게 공유하는 문제가 있음 |
비대칭키 (Asymmetric Key) |
---|
비대칭키는 암호화와 복호화에 서로 다른 키를 사용하는 방식. |
비밀 키(개인 키 또는 비밀 키)와 공개 키를 쌍으로 생성하고, 공개 키는 누구나 알 수 있지만 비밀 키는 소유자만 알고 있어야 함. |
공개 키로 암호화한 데이터는 개인 키로만 복호화할 수 있음 |
비대칭키 암호화 알고리즘에는 RSA, DSA, ECC(Elliptic Curve Cryptography) 등이 있움. |
비대칭키는 키 관리의 문제를 해결하기 위해 사용되지만, 암호화와 복호화 속도가 대칭키에 비해 느림. |