2025-03-18 19:28:35 +01:00
|
|
|
<!DOCTYPE html>
|
2024-03-27 01:34:04 +01:00
|
|
|
<script src="../include.js"></script>
|
|
|
|
|
<script>
|
|
|
|
|
asyncTest(async done => {
|
|
|
|
|
const encoder = new TextEncoder();
|
|
|
|
|
const message = "Hello friends";
|
2024-03-31 23:04:58 +02:00
|
|
|
const encodedMessage = encoder.encode(message);
|
2024-03-27 01:34:04 +01:00
|
|
|
|
2024-03-31 23:04:58 +02:00
|
|
|
const keyAlgorithm = {
|
|
|
|
|
name: "Ed25519",
|
2024-03-27 01:34:04 +01:00
|
|
|
};
|
|
|
|
|
const extractable = true;
|
|
|
|
|
const usages = ["sign", "verify"];
|
2024-03-31 23:04:58 +02:00
|
|
|
const key = await window.crypto.subtle.generateKey(keyAlgorithm, extractable, usages);
|
2024-03-27 01:34:04 +01:00
|
|
|
|
2024-03-31 23:04:58 +02:00
|
|
|
const signatureAlgorithm = {
|
|
|
|
|
name: "Ed25519",
|
2024-03-27 01:34:04 +01:00
|
|
|
};
|
|
|
|
|
const signature = await window.crypto.subtle.sign(
|
2024-03-31 23:04:58 +02:00
|
|
|
signatureAlgorithm,
|
2024-03-27 01:34:04 +01:00
|
|
|
key.privateKey,
|
2024-03-31 23:04:58 +02:00
|
|
|
encodedMessage
|
2024-03-27 01:34:04 +01:00
|
|
|
);
|
|
|
|
|
|
2024-03-31 23:04:58 +02:00
|
|
|
println(`Signed OK`);
|
2024-03-27 01:34:04 +01:00
|
|
|
|
|
|
|
|
done();
|
|
|
|
|
});
|
|
|
|
|
</script>
|