📙 IT 5분 잡학사전
📑 오늘 읽은 범위: episode 35~38
➡ 해시 함수를 사용하면 비밀번호 시스템을 더 안전하게 구현할 수 있다.
(해시 함수를 사용하면 비밀번호를 무작위 값으로 둔갑시켜 준다)
그러나 해시함수도 완벽하지 않다.
'레인보우 테이블'(해시함수가 변경한 값을 원래의 값과 연결한 표)이라는 것이 있기 때문.
'솔트'를 이용!**
➡ 비밀번호를 무작위 텍스트인 솔트와 합쳐서 해시함수에 통과시키면 레인보우 테이블이 있어도 원래 비밀번호를 찾을 수 없다.
➡ 반복되는 같은 속성을 객체 지향 프로그래밍의 '클래스'라는 개념으로 구조를 만듦.
➡ 코드 중복 시, '상속'을 활용하여 중복해결과 코드의 양을 줄이고 의미도 명확하게 함.
선언형 프로그래밍 & 명령형 프로그래밍
- 선언형 프로그래밍은 원하는 결과값을 선언. ex)샌드위치 만들어줘, css
함수형 프로그래밍
함수 중심으로 코드를 적는 방식으로 선언형 프로그래밍 콘셉트를 유지한다.
해시함수와 솔트를 이용해 비밀번호를 저장하는 방법을 직접 구현해보고 이번장을 읽어보니 정리도 되고 이해도 쉬웠다. 사실 오늘 읽은 부분에서 가장 재밌고 알차게 봤던 부분은 함수형 프로그래밍이었다. 자바스크립트에서 어떤 일을 수행하는 함수를 만들고, 그 함수를 활용해서 선언형 프로그래밍을 하는 방법으로 연습해왔는데, 사실 그 개념은 자세히 몰랐었고 있는지도 몰랐다. 그러나 오늘 읽고 그부분에 대한 지식을 습득할 수 있어 좋았다.
없음!
없음!