gpt4 book ai didi

javascript - 在 iOS 应用程序的 Parse Cloud Code 上运行 crypto-js 时出现问题

转载 作者:行者123 更新时间:2023-11-28 20:07:53 27 4
gpt4 key购买 nike

我使用 Parse 作为我的 iOS 应用程序的后端,并希望加密 Parse 和我的 iOS 设备之间发送的所有数据。因此,我正在使用 Parse Cloud Code希望能够执行服务器端加密和解密来处理它发送和接收的所有数据。

显然 Parse 有一个 'crypto' module by default ,但由于我无法找到任何相关文档,因此我继续尝试使用 crypto-js将 AES 加密 + 解密的相应文件复制到我的 Parse Cloud Code /cloud 文件夹中。

我遇到的问题是我不确定 crypto-js 的 AES 加密/解密函数返回什么类型的对象。我*似乎*要取回一个 NSDictionary 对象,但不知道如何处理它。我本以为我会收到一个 NSString 或 NSData 对象,但我似乎猜错了。

请让我知道我可以提供哪些额外信息或者我可能做出了哪些不正确的假设。

最佳答案

我需要在服务器端加密/解密,这是我的云代码,类似于nodeJS代码:

var crypto = require('crypto');
var cryptoAlgorithm = "aes-128-cbc"; //or whatever you algorithm you want to choose see http://nodejs.org/api/crypto.html
var cryptoPassword = "theLongAndRandomPassphrase";
var cipher = crypto.createCipher(cryptoAlgorithm,cryptoPassword);
var decipher = crypto.createDecipher(cryptoAlgorithm,cryptoPassword);
exports.myCiphering = {
encrypt:function(text){
var encrypted = cipher.update(text,'utf8','hex')
encrypted += cipher.final('hex');
return encrypted;
},
decrypt: function(text){
var decrypted = decipher.update(text,'hex','utf8')
decrypted += decipher.final('utf8');
return decrypted;
}
};

如果此代码段已保存在“cloud/ciphering.js”中,则您可以在云代码中的任何位置使用这样的加密工具:

var text = "encryptMe";

var ciphering = require("cloud/ciphering.js").myCiphering;
var encrypted = ciphering.encrypt(text);
var decrypted = ciphering.decrypted(encrypted);

if (decrypted == text){
//the "password" is correct
}

关于javascript - 在 iOS 应用程序的 Parse Cloud Code 上运行 crypto-js 时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20460087/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com