nativeScript-temporary-key-storage
Android 和 iOS 的临时密钥存储。
npm i --save nativescript-temporary-key-storage

NativeScript 临时密钥存储

我编写了这个简单的插件供自己使用,它适用于预期的用途,并在SQLCipher数据库中临时存储密钥。数据库使用随机加密密钥,在预定义的周期内会改变,并且只要应用程序在运行,它就会不断改变密钥。一旦用户或系统终止应用程序,用户将需要再次提供密码。

安装

tns plugin add nativescript-temporary-key-storage

用法

导入插件

import { keyStorage, processDb } from 'nativescript-temporary-key-storage';

存储密钥

keyStorage(myKeyGoesHere, 60000);

在这里,我们调用 keyStorage 函数,传递两个参数。第一个是密钥本身,第二个是数据库更改加密密钥的时间(毫秒)。这个函数应该在用户登录后立即调用,这样你就可以在应用程序需要时检索他的密钥。

获取密钥

let mainKey = {key:""};
let requestKey = new processDb();
requestKey.getKey();
setTimeout(function() {
mainKey.key = requestKey.returnKey();
if (mainKey.key === ""){
// Do something here!
} else {
// Do something else!
}
},0);

我们需要在 setTimeout 函数内请求密钥;否则,它将返回空值。我们还需要检查是否返回了任何密钥,这就是为什么我们在示例中使用了 if (mainKey.key === "")