This commit is contained in:
unknown
2018-11-12 16:54:19 +00:00
parent c5b3c7f274
commit 0b538416e9
5 changed files with 59 additions and 45 deletions

View File

@@ -22,6 +22,7 @@
const encrypted = document.getElementById("pgpMsg").value
const privKeyObj = (await openpgp.key.readArmored(privkey)).keys[0]
if (passphrase) {
await privKeyObj.decrypt(passphrase)
}
@@ -32,14 +33,12 @@
}
openpgp.decrypt(options).then(plaintext => {
if (plaintext.data) {
document.getElementById("result").value = plaintext.data;
document.getElementById("progressbar").className = "progress-bar bg-success";
} else {
document.getElementById("result").value = 'Error decrypting message.';
document.getElementById("progressbar").className = "progress-bar bg-danger";
}
})
document.getElementById("result").value = plaintext.data;
document.getElementById("progressbar").className = "progress-bar bg-success";
}).catch(function(error){
document.getElementById("result").value = error.message;
document.getElementById("progressbar").className = "progress-bar bg-danger";
});
}
</script>
<style>

View File

@@ -19,21 +19,25 @@
// put keys in backtick (``) to avoid errors caused by spaces or tabs
const pubkey = document.getElementById("pubKey").value
const options = {
let options;
try {
options = {
message: openpgp.message.fromText(document.getElementById("text").value), // input as Message object
publicKeys: (await openpgp.key.readArmored(pubkey)).keys, // for encryption
}
} catch (err) {
document.getElementById("result").value = err.message;
document.getElementById("progressbar").className = "progress-bar bg-danger";
}
openpgp.encrypt(options).then(ciphertext => {
encrypted = ciphertext.data // '-----BEGIN PGP MESSAGE ... END PGP MESSAGE-----'
if (encrypted) {
document.getElementById("result").value = encrypted;
document.getElementById("progressbar").className = "progress-bar bg-success";
} else {
document.getElementById("result").value = 'Encryption failed.';
document.getElementById("progressbar").className = "progress-bar bg-danger";
}
})
document.getElementById("result").value = encrypted;
document.getElementById("progressbar").className = "progress-bar bg-success";
}).catch(function(error){
document.getElementById("result").value = error.message;
document.getElementById("progressbar").className = "progress-bar bg-danger";
});
}
</script>
<style>

View File

@@ -30,6 +30,10 @@
document.getElementById("privkey").value = privkey;
document.getElementById("pubkey").value = pubkey;
document.getElementById("progressbar").className = "progress-bar bg-success";
}).catch(function(error){
document.getElementById("pubkey").value = error.message;
document.getElementById("privKey").value = error.message;
document.getElementById("progressbar").className = "progress-bar bg-danger";
});
}
</script>

View File

@@ -22,26 +22,29 @@
const passphrase = document.getElementById("pass").value
const msg = document.getElementById("msg").value
const privKeyObj = (await openpgp.key.readArmored(privkey)).keys[0]
if (passphrase) {
await privKeyObj.decrypt(passphrase)
let privKeyObj;
let options;
try {
privKeyObj = (await openpgp.key.readArmored(privkey)).keys[0]
if (passphrase) {
await privKeyObj.decrypt(passphrase)
}
options = {
message: openpgp.cleartext.fromText(msg), // CleartextMessage or Message object
privateKeys: [privKeyObj] // for signing
};
} catch (err) {
document.getElementById("result").value = err.message;
document.getElementById("progressbar").className = "progress-bar bg-danger";
}
options = {
message: openpgp.cleartext.fromText(msg), // CleartextMessage or Message object
privateKeys: [privKeyObj] // for signing
};
openpgp.sign(options).then(function(signed) {
if (signed.data) {
cleartext = signed.data; // '-----BEGIN PGP SIGNED MESSAGE ... END PGP SIGNATURE-----'
document.getElementById("result").value = cleartext;
document.getElementById("progressbar").className = "progress-bar bg-success";
} else {
document.getElementById("result").value = 'Signing failed.';
document.getElementById("progressbar").className = "progress-bar bg-danger";
}
cleartext = signed.data; // '-----BEGIN PGP SIGNED MESSAGE ... END PGP SIGNATURE-----'
document.getElementById("result").value = cleartext;
document.getElementById("progressbar").className = "progress-bar bg-success";
}).catch(function(error){
document.getElementById("result").value = error.message;
document.getElementById("progressbar").className = "progress-bar bg-danger";
});
}
</script>

View File

@@ -20,20 +20,24 @@
const pubkey = document.getElementById("pubKey").value
const cleartext = document.getElementById("signMsg").value
options = {
message: await openpgp.cleartext.readArmored(cleartext), // parse armored message
publicKeys: (await openpgp.key.readArmored(pubkey)).keys // for verification
};
let options;
try {
options = {
message: await openpgp.cleartext.readArmored(cleartext), // parse armored message
publicKeys: (await openpgp.key.readArmored(pubkey)).keys // for verification
}
} catch (err) {
document.getElementById("result").value = err.message;
document.getElementById("progressbar").className = "progress-bar bg-danger";
}
openpgp.verify(options).then(function(verified) {
validity = verified.signatures[0].valid; // true
if (validity) {
document.getElementById("result").value = 'Signed by key id ' + verified.signatures[0].keyid.toHex();
document.getElementById("progressbar").className = "progress-bar bg-success";
} else {
document.getElementById("progressbar").className = "progress-bar bg-danger";
document.getElementById("result").value = 'Verification wrong or failed. DO NOT TRUST.';
}
document.getElementById("result").value = 'Signed by key id ' + verified.signatures[0].keyid.toHex();
document.getElementById("progressbar").className = "progress-bar bg-success";
}).catch(function(error){
document.getElementById("result").value = error.message;
document.getElementById("progressbar").className = "progress-bar bg-danger";
});
}
</script>