그누보드 5.4의 javascript 패스워드

· 6년 전 · 2733

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

+
제목 글쓴이 날짜 조회
3년 전 조회 947
3년 전 조회 962
3년 전 조회 1,503
4년 전 조회 1,402
4년 전 조회 3,499
4년 전 조회 4,158
4년 전 조회 2,985
5년 전 조회 1,677
5년 전 조회 1,202
5년 전 조회 1,734
5년 전 조회 1,890
5년 전 조회 1,358
5년 전 조회 1,743
5년 전 조회 3,466
6년 전 조회 2,734
6년 전 조회 1,818
6년 전 조회 1,801
6년 전 조회 1,575
6년 전 조회 1,778
6년 전 조회 2,766
6년 전 조회 2,409
6년 전 조회 2,072
8년 전 조회 2,472
8년 전 조회 2,186
8년 전 조회 3,111
9년 전 조회 4,501
9년 전 조회 2,095
9년 전 조회 2,450
9년 전 조회 2,507
10년 전 조회 3,300