- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在开发一个 Qt 应用程序,我正在使用 QScript 为我的程序编写 javascript“扩展”。
我需要安全地存储密码,所以我想使用 SHA3-512 或 PBKDF2 或 HMAC我找到了一个实现上述内容的 javascript 库。
我正在使用这个简单的 QScript 示例。
我的问题是,如何使用该库,更具体地说,如何使我的 javascript 可以使用该库?
最佳答案
在评估您自己的自定义代码之前,您只需评估要使用的其他脚本文件。对于您选择的库,由于有很多文件,这可能会有些工作,但这有望帮助您入门(假设该库中的 sha1.js 位于您执行程序的目录中):
#include <QtCore>
#include <QDebug>
#include <QtScript>
void loadScriptFile(QScriptEngine &engine, const QString &fileName) {
QFile scriptFile(fileName);
scriptFile.open(QIODevice::ReadOnly);
QTextStream stream(&scriptFile);
QString contents = stream.readAll();
scriptFile.close();
QScriptValue value = engine.evaluate(contents, fileName);
if (value.isError()) {
qCritical() << "Unable to load " << fileName;
}
}
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QScriptEngine engine;
loadScriptFile(engine, QLatin1String("./sha1.js"));
QScriptValue output = engine.evaluate("CryptoJS.SHA1(\"Testing 1 2 3\");");
qDebug() << output.toString();
return a.exec();
}
顺便说一句,如果您使用的是 Qt 5.0 或更高版本,请考虑使用 QJSEngine 而不是 QScriptEngine:http://qt-project.org/doc/qt-5.0/qtqml/qjsengine.html .它更快,更积极地维护。 API 几乎相同,因此移植您的代码应该很容易。
关于javascript - Qt QScript 加密,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19414499/
我整天都在努力让这段代码正常工作。它应该与 QScript help page 中提供的代码相同但不幸的是,它根本不起作用! class Person { public: QString nm;
我正在开发一个 Qt 应用程序,我正在使用 QScript 为我的程序编写 javascript“扩展”。 我需要安全地存储密码,所以我想使用 SHA3-512 或 PBKDF2 或 HMAC我找到了
我是一名优秀的程序员,十分优秀!