同期型の bcrypt 関数を利用する方法

ここでは bcrypt の同期型の関数を利用する例を示します。

非同期型の関数呼び出しについては、「非同期の bcrypt 関数を利用する方法」をみてください。

基本的には非同期を使った方が処理がブロックしない分、リソースを有効に使うことができるのですが、 同期処理は処理の順番が単純でわかりやすい利点もあります。

const bcrypt = require('bcrypt');
const saltRounds = 10;
const password = 'Password123';

console.log('START');
console.time('A');

var salt = bcrypt.genSaltSync(saltRounds);
console.log(`salt = [${salt}]`);

var hash = bcrypt.hashSync(password, salt);
console.log(`hash = [${hash}]`);

console.log('END');
console.timeEnd('A');

ハッシュを使ったパスワードの検証は compareSync 関数を使います。

const bcrypt = require('bcrypt');
const hash = '$2b$10$CW9OqVEHzLLd/RNKJ02zBu9fMytwQGNLjNWa90WuJHL0kOhIwBfDm';
const password = 'Password123';

console.log('START');
console.time('A');

var res = bcrypt.compareSync(password, hash);
console.log(`res=[${res}]`);

console.log('END');
console.timeEnd('A');

以上、ここでは bcrypt の同期型関数の利用方法を示しました。

ここまでお読みいただき、誠にありがとうございます。SNS 等でこの記事をシェアしていただけますと、大変励みになります。どうぞよろしくお願いします。

© 2024 Node.js 入門