피드로 돌아가기
Node.js 10.5.0 (Current)
Node.js BlogNode.js Blog
Backend

Node.js 10.5.0에서 crypto.scrypt(), fs.stat BigInt 지원, Worker Threads 실험 기능 추가로 암호화·파일 시스템·멀티스레딩 기능 확장

Node.js 10.5.0 (Current)

2018년 6월 20일5intermediate

Technical Solution

  • crypto 모듈에 scrypt() 및 scryptSync() 메서드 추가: OpenSSL의 scrypt 함수를 Node.js 애드온에 노출
  • fs.stat과 fs.watchFile에 BigInt 지원 추가: 매우 큰 파일 크기 및 타임스탬프 값 처리 가능
  • fs 모듈의 mode 인자 검증 완화: 0o777보다 큰 값에 대한 예외 발생 제거
  • Worker Threads 모듈에 --experimental-worker 플래그로 멀티스레딩 기능 추가: 실험 단계 기능으로 breaking changes 가능성 명시
  • fs의 closed event watcher 크래시 수정: #20297 이슈 해결
  • crypto의 createCipher wrap 모드 동작 수정: #21287 커밋으로 개선
  • randomBytes(), pbkdf2() 메서드 리팩토링: DRY 원칙에 따른 타입 체크 개선
  • OpenSSL CVE-2018-0732 보안 패치 적용: deps에서 ea7abee float
  • V8 엔진을 6.7.288.46 버전으로 업그레이드: #21260 커밋으로 성능 향상

Node.js 애플리케이션에서 강력한 암호화가 필요한 환경에서 crypto.scrypt()를 도입하면 OpenSSL 네이티브 함수를 직접 활용할 수 있다. Worker Threads를 --experimental-worker 플래그로 활성화하면 CPU 집약적 작업을 별도 스레드에서 처리하여 이벤트 루프 블로킹을 방지할 수 있으나, 실험 단계 기능이므로 프로덕션 환경에서는 breaking changes에 대비해야 한다.

원문 읽기