반응형

📝해시

데이터를 value에 두고 인덱스(key)를 만든 형태로 "key:value" 데이터 구조를 가지게 된다 시간복잡도가 O(1) 로 매우 빠르다

 

📝해싱

해시의 키를 이용해 값을 구하는 작업을 의미한다

 

📝해시 테이블

해시(key, value)로 되어있는 자료구조로 Map이 있다

 

📝해시함수

해싱할 때 필요한 함수를 의미한다 예를 들면 HashMap에서 Key를 이용해 Value를 구하는 걸 의미한다

 

📝해시값

해시함수를 거쳐서 나온 값

 

📝SSL 인증서

SSL(Secure Sockets Layer) 인증서는 웹사이트의 신원을 확인하는 디지털 인증서이며 SSL 기술을 이용하여 서버에 전송

되는 정보를 암호화 이 포맷은 적합한 암호 해독 키로만 판독 가능한 포맷으로 되돌릴 수 있습니다.
사용자의 웹브라우저와 인터넷 사이트의 웹서버간 암호화 통신을 가능하게 하는 제3의 신뢰기관이 인증한 인증서  웹브라우저와 서버간 암호화 통신을 위한 프로토콜

 

📝SHA-256 (Secure Hash Algorithm 256)

단방향 암호화 방식으로 복호화가 되지 않는다
어떤 길이의 값을 입력하더라도 256비트의 고정된 결과값을 출력한다
대표적으로 외부로 유출되면 안되는 유저들의 패스워드 같은 것들을 DB에 저장을 할 때 그대로 저장하기 보다는 암호화를 한 뒤 저장을 한다
복호화가 필요한 데이터는 SHA256이 아닌 다른 방식으로 암호화 시키는 것을 추천한다

 

📝RSA

비대칭키 암호화 방식으로 암호화할 때 키와 복호화할 때 키가 다르다 
암호화할 때 키를 "공개키", 복호화할 때 키를 "개인키" 클라이언트가 가지고 있는 "공개키"로 데이터를 암호화하여, 서버로 전달한다

 

📝AES (Advanced Encryption Standard)

대칭키 알고리즘으로 "대칭키" 하나로 암호화 및 복호화 모두 진행하고 문자열 길이에 제약이 없다

 

📝솔트 (Salt)

솔트값은 랜덤으로 생성되며 길이는 어느 것이든 될 수 있다.

솔트값은 평문 암호에 추가되는 형태로 위에 나온 해시함수들의 암호화를 더 보완해줄 수 있다

솔트는 최소 128bit 정도 되어야 안전하다

 

  • SHA256 = 비밀번호 + 솔트값(암호값)
    • 비밀번호 = 1234abc
    • E1F53135E559C253 = 솔트값
    • 1234abcE1F53135E559C253 (비밀번호 + 솔트값) → SHA256 → EFA123JQVZ4FJ6PROW…. (해시된 값)
반응형