Nothing
context("EC signatures and diffie hellman")
test_that("ECDSA works", {
key <- read_jwk("../keys/ecdsa.json")
pubkey <- read_jwk("../keys/ecdsa.pub.json")
sig <- readBin("../keys/ecdsa.sig", raw(), 1e4)
expect_is(key, "key")
expect_is(pubkey, "pubkey")
expect_is(key, "ecdsa")
expect_is(pubkey, "ecdsa")
expect_identical(pubkey, as.list(key)$pubkey)
# Does not work yet because webcrypto does not use DER format for binary data:
# https://chromium.googlesource.com/chromium/src/+/master/components/webcrypto/algorithms/ecdsa.cc#63
# expect_true(openssl::signature_verify(charToRaw("testje"), sig, openssl::sha256, pubkey))
# expect_true(openssl::signature_verify("../keys/data", "../keys/ecdsa.sig", openssl::sha256, pubkey))
})
test_that("ECDH works", {
key <- read_jwk("../keys/ecdh.json")
pubkey <- read_jwk("../keys/ecdh.pub.json")
bin <- readBin("../keys/ecdh.bin", raw(), 1e4)
expect_is(key, "key")
expect_is(pubkey, "pubkey")
expect_is(key, "ecdsa")
expect_is(pubkey, "ecdsa")
expect_identical(pubkey, as.list(key)$pubkey)
expect_equal(openssl::ec_dh(key, pubkey), bin)
})
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.