当我们使用OpenPGP创建新密钥时,我们如何设置“到期时间”?

时间:2017-01-11 17:37:18

标签: javascript openpgp openpgp.js

在OpenPGP.js中,我们有一个函数Key.prototype.getExpirationTime,其中“返回主键的到期时间,如果键未到期,则返回null”: https://github.com/openpgpjs/openpgpjs/blob/master/src/key.js#L472

但是,当我们创建新密钥时,我们如何设置此到期时间? 我没有在此函数https://github.com/openpgpjs/openpgpjs/blob/master/src/key.js#L938中或在文档中看到“{到期时间”的https://openpgpjs.org/openpgpjs/doc/module-key.html参数

2 个答案:

答案 0 :(得分:0)

在尚未实施的OpenPGP.js中,请参阅:https://github.com/openpgpjs/openpgpjs/issues/511#issuecomment-272376745

现在我看到的最简单的解决方案是使用kbpgp.js进行密钥生成,如下所示:https://ageyev.github.io/crypto/openpgp/密钥生成需要的时间比OpenPGP.js要长,但有效。

答案 1 :(得分:0)

就像:

let expires = 60 * 60 * 24 * 30 // seconds to expire keys {Number}
let PGPOptions = {
    userIds: [{
        name: 'username',
        email: 'awesome@mail.com'
    }],
    numBits: 2048,                // RSA
    passphrase: 'good passphrase' // protects the private key
    keyExpirationTime: expires    // 30 days
}
// create keys (pub/priv)
openpgp.generateKey(PGPOptions).then(key => {
    let privkey = key.privateKeyArmored,
        pubkey = key.publicKeyArmored
})
相关问题