Basics/Hashing, Encryption 2

SHA 해싱

SHA 해싱SHA(Secure Hashing Algorithm)는 안전한 해시 알고리즘으로 암호학적 해시 함수들의 모음입니다. SHA-0을 시작으로 이후 변형된 SHA-1이 발표되었고, 이후 SHA-224, SHA-256, SHA-384, SHA-512가 더 발표되었습니다. SHA-256과 SHA-512는 각각 32비트, 64비트 워드를 사용하는 해시함수이며 몇몇 상수들이 다르지만 그 구조는 라운드의 수를 빼고는 같습니다. SHA-224와 SHA-384는 SHA-256과 SHA-512의 결과를 최종 해시값 길이에 맞춰 잘라낸 것입니다. 해시값을 얻어낼 때에는 원문의 각 비트들을 and, or, xor, rotr(회전) 등의 연산을 하며 해싱하게 되는데 원문에서 토시 하나라도 달라지게 되면 스노우볼 효과로..

RSA 암호화

RSA 암호화 RSA암호화는 공개키 암호화 시스템의 하나로, 암호화 뿐만 아니라 전자서명이 가능한 최초의 알고리즘입니다. RSA암호화는 비대칭 방식으로 암호화 하는 키와 복호화하는 키가 다른 암호화 방식입니다. 소인수분해의 난해함을 이용한 암호화 방식으로 공개키만 가지고는 개인키를 알아낼 수 없도록 설계되어 있습니다. RSA 암호화 처리 방식 RSA 암호화는 두 개의 키를 갖습니다. - 키 : 메시지를 열고 잠그는 상수 공개키와 개인키 두 가지를 사용하는데 - 공개키 : 데이터를 암호화하는데 사용하는 키, 공개되어 있는 키 - 개인키 : 암호화된 데이터를 풀어내는데 사용하는 키, 복호화 할 수 있는 키, 공개되어있지 않은 키라고 해서 다른말로 비밀키라고도 합니다. 누구나 암호화 시킬 수 있지만 그것을 볼..