[TIL] 새로 배운 개념들 정리_NodeJS 로그인 구현 관련

Robin·2022년 8월 3일
0

TIL

목록 보기
14/24

새로운 개념들 정리

NodeJS 중반부에 들어서자 새로운 개념들의 향연이다.
분명 다시금 서칭할 나를 위해 정리해놓고자 한다.


Mongo Atlas? Shell? Compass?

MongoDB는 유저들이 편히 데이터를 갖고 놀 수 있도록 두가지 인터페이스를 제공한다.
1. Mongo Shell

  • 터미널 마냥 명령어 적어서 진행. 실제로 다운 받은 후 터미널에서 mongo shell 명령어를 통해 접근 가능하다.
  1. Mongo Compass
  • 그래픽 UI가 들어가서(GUI) 우리에게 더욱 친숙하게 느껴질 Mongo Compass 또한 존재한다.
  • Mongo Compass내에서도 별도의 창을 이용하여 Mongo Shell을 사용할 수 있다.
    Mongo Compass 내의 Mongo Shell

MongoDB aggregation

  • 기존의 find({})를 통해서는 원하는 데이터로 가공하는데에 어려움이 있다. 이에 mongoDB aggregation을 이용하면 다양한 데이터 가공을 적용할 수 있다.
  • Aggregation Framework Pipeline
    mongoDB aggregation이 데이터를 처리하는 방식으로, (쉽게) 자료를 여러 단계에 걸쳐서 처리해 나가는 것
    👉 참고: 잔재미코딩

bcrypt와 crypto

  • crypto는 노드에 내장되어 있어(native crypto) 불러다가 쓰기만 하면 된다.
  • bcrypt는 별도의 설치가 필요한 모듈이다.

🤔 stackOverflow등을 확인해보니, bcrypt는 Blowfish라는 무거운 알고리즘을 쓰기 때문에 해싱에 엄청난 비용이 든다고 한다. 하지만 그렇기에 정말 공격하면 안되는 (예를 들어 유저의 비밀번호) 곳에 주로 사용되는 것 같다. 그외에 랜덤 토큰 발행 등의 나머지 업무에는 보통 crypto를 사용하는 것 같다.


마무리

It's interesting!
요즘 이 단계인거 같아서 교수님 말씀이 공감갔다 :)
분명 피곤한데, 재밌으니 계속하게 된다. 계속 이랬으면 좋겠네!

profile
Always testing, sometimes dog walking

0개의 댓글