MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Как да съхранявам крипто pbkdf2 в mongoDB?

Съхраняването на хеша като шестнадесетичен низ в базата данни работи добре за мен (съхраняването им „сурово“ в String или Buffer свойство не):

var crypto      = require('crypto');
var mongoose    = require('mongoose');
var client      = mongoose.connect('mongodb://localhost/test');
var UserSchema  = new mongoose.Schema({
  salt  : String,
  hash  : String
});

var User = mongoose.model('User', UserSchema);

hash('secret', function(err, salt, key) {
  new User({ salt : salt, hash : key.toString('hex') }).save(function(err, doc) {
    User.findById(doc._id, function(err, doc) {
      hash('secret', doc.salt, function(err, key) {
        console.log('eq', doc.hash === key.toString('hex'));
      });
    });
  });
});

(между другото и двете crypto.pbkdf2 и crypto.randomBytes имат синхронни двойници)




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB:Възникна изчакване след 30 000 ms избор на сървър с помощта на CompositeServerSelector

  2. Как да стартирате mongo db на windows

  3. Извършване на изявление на случай в рамката за агрегиране на mongodb

  4. Формат на датата Mongoose

  5. Как да промените поддокумент след намиране с mongoose