a
This commit is contained in:
15
decrypt.html
15
decrypt.html
@@ -22,6 +22,7 @@
|
|||||||
const encrypted = document.getElementById("pgpMsg").value
|
const encrypted = document.getElementById("pgpMsg").value
|
||||||
|
|
||||||
const privKeyObj = (await openpgp.key.readArmored(privkey)).keys[0]
|
const privKeyObj = (await openpgp.key.readArmored(privkey)).keys[0]
|
||||||
|
|
||||||
if (passphrase) {
|
if (passphrase) {
|
||||||
await privKeyObj.decrypt(passphrase)
|
await privKeyObj.decrypt(passphrase)
|
||||||
}
|
}
|
||||||
@@ -32,14 +33,12 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
openpgp.decrypt(options).then(plaintext => {
|
openpgp.decrypt(options).then(plaintext => {
|
||||||
if (plaintext.data) {
|
document.getElementById("result").value = plaintext.data;
|
||||||
document.getElementById("result").value = plaintext.data;
|
document.getElementById("progressbar").className = "progress-bar bg-success";
|
||||||
document.getElementById("progressbar").className = "progress-bar bg-success";
|
}).catch(function(error){
|
||||||
} else {
|
document.getElementById("result").value = error.message;
|
||||||
document.getElementById("result").value = 'Error decrypting message.';
|
document.getElementById("progressbar").className = "progress-bar bg-danger";
|
||||||
document.getElementById("progressbar").className = "progress-bar bg-danger";
|
});
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
<style>
|
<style>
|
||||||
|
|||||||
22
encrypt.html
22
encrypt.html
@@ -19,21 +19,25 @@
|
|||||||
// put keys in backtick (``) to avoid errors caused by spaces or tabs
|
// put keys in backtick (``) to avoid errors caused by spaces or tabs
|
||||||
const pubkey = document.getElementById("pubKey").value
|
const pubkey = document.getElementById("pubKey").value
|
||||||
|
|
||||||
const options = {
|
let options;
|
||||||
|
try {
|
||||||
|
options = {
|
||||||
message: openpgp.message.fromText(document.getElementById("text").value), // input as Message object
|
message: openpgp.message.fromText(document.getElementById("text").value), // input as Message object
|
||||||
publicKeys: (await openpgp.key.readArmored(pubkey)).keys, // for encryption
|
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 => {
|
openpgp.encrypt(options).then(ciphertext => {
|
||||||
encrypted = ciphertext.data // '-----BEGIN PGP MESSAGE ... END PGP MESSAGE-----'
|
encrypted = ciphertext.data // '-----BEGIN PGP MESSAGE ... END PGP MESSAGE-----'
|
||||||
if (encrypted) {
|
document.getElementById("result").value = encrypted;
|
||||||
document.getElementById("result").value = encrypted;
|
document.getElementById("progressbar").className = "progress-bar bg-success";
|
||||||
document.getElementById("progressbar").className = "progress-bar bg-success";
|
}).catch(function(error){
|
||||||
} else {
|
document.getElementById("result").value = error.message;
|
||||||
document.getElementById("result").value = 'Encryption failed.';
|
document.getElementById("progressbar").className = "progress-bar bg-danger";
|
||||||
document.getElementById("progressbar").className = "progress-bar bg-danger";
|
});
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
<style>
|
<style>
|
||||||
|
|||||||
4
gen.html
4
gen.html
@@ -30,6 +30,10 @@
|
|||||||
document.getElementById("privkey").value = privkey;
|
document.getElementById("privkey").value = privkey;
|
||||||
document.getElementById("pubkey").value = pubkey;
|
document.getElementById("pubkey").value = pubkey;
|
||||||
document.getElementById("progressbar").className = "progress-bar bg-success";
|
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>
|
</script>
|
||||||
|
|||||||
37
sign.html
37
sign.html
@@ -22,26 +22,29 @@
|
|||||||
const passphrase = document.getElementById("pass").value
|
const passphrase = document.getElementById("pass").value
|
||||||
const msg = document.getElementById("msg").value
|
const msg = document.getElementById("msg").value
|
||||||
|
|
||||||
const privKeyObj = (await openpgp.key.readArmored(privkey)).keys[0]
|
let privKeyObj;
|
||||||
|
let options;
|
||||||
if (passphrase) {
|
try {
|
||||||
await privKeyObj.decrypt(passphrase)
|
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) {
|
openpgp.sign(options).then(function(signed) {
|
||||||
if (signed.data) {
|
cleartext = signed.data; // '-----BEGIN PGP SIGNED MESSAGE ... END PGP SIGNATURE-----'
|
||||||
cleartext = signed.data; // '-----BEGIN PGP SIGNED MESSAGE ... END PGP SIGNATURE-----'
|
document.getElementById("result").value = cleartext;
|
||||||
document.getElementById("result").value = cleartext;
|
document.getElementById("progressbar").className = "progress-bar bg-success";
|
||||||
document.getElementById("progressbar").className = "progress-bar bg-success";
|
}).catch(function(error){
|
||||||
} else {
|
document.getElementById("result").value = error.message;
|
||||||
document.getElementById("result").value = 'Signing failed.';
|
document.getElementById("progressbar").className = "progress-bar bg-danger";
|
||||||
document.getElementById("progressbar").className = "progress-bar bg-danger";
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
26
verify.html
26
verify.html
@@ -20,20 +20,24 @@
|
|||||||
const pubkey = document.getElementById("pubKey").value
|
const pubkey = document.getElementById("pubKey").value
|
||||||
const cleartext = document.getElementById("signMsg").value
|
const cleartext = document.getElementById("signMsg").value
|
||||||
|
|
||||||
options = {
|
let options;
|
||||||
message: await openpgp.cleartext.readArmored(cleartext), // parse armored message
|
try {
|
||||||
publicKeys: (await openpgp.key.readArmored(pubkey)).keys // for verification
|
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) {
|
openpgp.verify(options).then(function(verified) {
|
||||||
validity = verified.signatures[0].valid; // true
|
validity = verified.signatures[0].valid; // true
|
||||||
if (validity) {
|
document.getElementById("result").value = 'Signed by key id ' + verified.signatures[0].keyid.toHex();
|
||||||
document.getElementById("result").value = 'Signed by key id ' + verified.signatures[0].keyid.toHex();
|
document.getElementById("progressbar").className = "progress-bar bg-success";
|
||||||
document.getElementById("progressbar").className = "progress-bar bg-success";
|
}).catch(function(error){
|
||||||
} else {
|
document.getElementById("result").value = error.message;
|
||||||
document.getElementById("progressbar").className = "progress-bar bg-danger";
|
document.getElementById("progressbar").className = "progress-bar bg-danger";
|
||||||
document.getElementById("result").value = 'Verification wrong or failed. DO NOT TRUST.';
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
Reference in New Issue
Block a user