마

그누보드 5.4의 javascript 패스워드

· 2019-09-15 (일) 03:09:04 · 2995

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

 

[code]

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)

[/code]

 

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

Node.js

55건
+
제목 글쓴이 날짜 조회
22-03-01 조회 1,152
22-03-01 조회 1,161
22-02-09 조회 1,695
21-06-24 조회 1,594
21-05-07 조회 3,737
21-05-07 조회 4,362
21-05-03 조회 3,240
21-02-04 조회 1,863
21-01-14 조회 1,442
20-12-25 조회 1,935
20-12-18 조회 2,107
20-11-30 조회 1,554
20-11-26 조회 1,936
20-11-01 조회 3,714
19-09-15 조회 2,996
19-04-29 조회 2,045
19-04-29 조회 2,017
19-02-25 조회 1,776
19-02-15 조회 2,021
19-02-13 조회 3,041
19-02-13 조회 2,648
19-02-13 조회 2,315
17-06-08 조회 2,714
17-06-03 조회 2,420
17-04-30 조회 3,363
17-01-17 조회 4,790
17-01-04 조회 2,323
16-12-08 조회 2,695
16-12-06 조회 2,759
16-01-19 조회 3,543