缺少來自Parse.com中的Cloud Code的crypto
庫的文檔,這表明我應該在別處尋找。但我發現它支持AES加密和一些散列。Parse.com的Crypto庫是否支持PBKDF2?
我看不到任何PBKDF2支持。
任何人都可以確認Parse.com Crypto是否支持PBKDF2?你有一個API的例子嗎?
缺少來自Parse.com中的Cloud Code的crypto
庫的文檔,這表明我應該在別處尋找。但我發現它支持AES加密和一些散列。Parse.com的Crypto庫是否支持PBKDF2?
我看不到任何PBKDF2支持。
任何人都可以確認Parse.com Crypto是否支持PBKDF2?你有一個API的例子嗎?
是的,Cloud Code提供的默認加密庫確實支持PBKDF2,因此不需要嘗試將另一個庫移植到框架中。
例如,
var crypto = require('crypto');
var SALT_LEN = 32;
function randomSafeBytes(len) {
return crypto.randomBytes(len)
.toString('base64')
.slice(0,len)
.replace(/\+/g, '0') // replace '+' with '0'
.replace(/\//g, '0'); // replace '/' with '0'
}
function generate_key(password) {
// get a brand new key
var salt = randomSafeBytes(SALT_LEN);
return {
salt:salt,
key:generate_key_from_salt(password, salt)
}
}
function generate_key_from_salt(password, salt) {
// regenerate a key from a given salt
var ITERATIONS = 100000; // tune this figure to balance platform/needs
var KEY_LEN = 32;
return crypto.pbkdf2Sync(password, salt.slice(0,SALT_LEN), ITERATIONS, KEY_LEN);
}
我沒有在雲代碼中使用往心裏去,但here's a relevant post from Parse that addresses your question.隨着雲代碼的問候到加密模塊,
這是一般的節點模塊,可以在這裏找到: http://nodejs.org/api/crypto.html
Crypto確實支持PBKDF2,如果您需要更新版本的模塊,您可以直接將模塊放入您的雲/文件夾並使用require('cloud/crypto')來加載模塊