그누보드 5.4의 javascript 패스워드 > Node.js

Node.js

그누보드 5.4의 javascript 패스워드 정보

그누보드 5.4의 javascript 패스워드

본문

5.4에서 사용한 pbkdf2 패스워드 라이브러리를 Javascript로 구현해 봤습니다.

 


var btoa = require('btoa')
var atob = require('atob')
var pbkdf2 = require('pbkdf2')
var crypto = require('crypto')
 
var key = '1234'
 
var salt = btoa(crypto.randomBytes(24))
var iterations = 12000
var dkLen = 24
var algorithm = 'sha256'
 
var derivedKey = btoa(pbkdf2.pbkdf2Sync(key, salt, iterations, dkLen, algorithm))
 
var mb_password = algorithm + ':' + iterations + ':' + salt + ':' + derivedKey
console.log(mb_password)

 

  • crypto.randomBytes(24) : 24바이트의 Random 바이트를 만듭니다.
  • btoa  base64_encode를 합니다.  출력은 32바이트가 됩니다.
  • pbkdf2.pbkdf2Sync 출력이 24바이트 이것도 encode하면 32바이트가 됩니다.
  • sha256:12000:9My4e5n9JYVKUzGANJ/lH8AS327FZ9nV:DkoLIbeItUGHtSwPSO7NppNhw/CKGcLN
  • 테스트 방법: 위의 출력을 g5_member의 mb_password에 넣으시고 로그인되는지 확인하세요
공감
0
  • 복사

댓글 0개

© SIRSOFT
현재 페이지 제일 처음으로