Пример #1
0
export async function generateKey({ name, email = '' }, passphrase) {
  const key = await openpgp.generateKey({
    userIds: [{ name, email }],
    numBits: 4096,
    passphrase,
  })

  return {
    name,
    email,
    privateKeyArmored: applyFelonyBranding(key.privateKeyArmored),
    publicKeyArmored: applyFelonyBranding(key.publicKeyArmored),
  }
}
Пример #2
0
 Keyring.prototype.generateKey = function(options, callback) {
   var that = this;
   if (!Array.isArray(options.userIds) || options.userIds.length === 0) {
     callback({error: "User ids aren't supplied."});
     return;
   }
   options.userIds = options.userIds.map(function(userId) {
     return (new goog.format.EmailAddress(userId.email, userId.fullName)).toString();
   });
   openpgp.generateKey({numBits: parseInt(options.numBits), userIds: options.userIds, passphrase: options.passphrase}).then(function(data) {
     if (data) {
       that.keyring.privateKeys.push(data.key);
       that.sync.add(data.key.primaryKey.getFingerprint(), keyringSync.INSERT);
       that.keyring.store();
       that.sync.commit();
       // by no primary key in the keyring set the generated key as primary
       if (!that.hasPrimaryKey()) {
         setKeyringAttr(that.id, {primary_key: data.key.primaryKey.keyid.toHex().toUpperCase()});
       }
     }
     callback(null, data);
   }, callback);
 };
Пример #3
0
 generateKeys: function generateKeys(options, done) {
   openpgp.generateKey(options).then(done);
 },
Пример #4
0
import Ember from 'ember';
import layout from '../templates/components/generate-key';
import openpgp from 'openpgp';

export default Ember.Component.extend({
  layout,
  
  actions: {
    generateKey() {
      const {name, email, passphrase} = this.getProperties('name', 'emailAddress', 'passphrase');
      
      const options = {
        userIds: [{name, email}],
        passphrase
      };
      
      openpgp.generateKey(options).then((result) => {
        this.set('privateKeyArmored', result.privateKeyArmored);
        this.set('publicKeyArmored', result.publicKeyArmored);
      }).catch((err) => {
        console.log(err);
        window.alert(err.message || err);
      });
    }
  }
});
Пример #5
0
 return new RSVP.Promise((resolve, reject) => {
   openpgp.generateKey(options).then(resolve).catch(reject);
 });