...
1 package linter
2
3 import (
4 "crypto/ecdsa"
5 "crypto/ed25519"
6 "crypto/elliptic"
7 "crypto/rsa"
8 "math/big"
9 "testing"
10
11 "github.com/letsencrypt/boulder/test"
12 )
13
14 func TestMakeSigner_RSA(t *testing.T) {
15 rsaMod, ok := big.NewInt(0).SetString("ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 16)
16 test.Assert(t, ok, "failed to set RSA mod")
17 realSigner := &rsa.PrivateKey{
18 PublicKey: rsa.PublicKey{
19 N: rsaMod,
20 },
21 }
22 lintSigner, err := makeSigner(realSigner)
23 test.AssertNotError(t, err, "makeSigner failed")
24 _, ok = lintSigner.(*rsa.PrivateKey)
25 test.Assert(t, ok, "lint signer is not RSA")
26 }
27
28 func TestMakeSigner_ECDSA(t *testing.T) {
29 realSigner := &ecdsa.PrivateKey{
30 PublicKey: ecdsa.PublicKey{
31 Curve: elliptic.P256(),
32 },
33 }
34 lintSigner, err := makeSigner(realSigner)
35 test.AssertNotError(t, err, "makeSigner failed")
36 _, ok := lintSigner.(*ecdsa.PrivateKey)
37 test.Assert(t, ok, "lint signer is not ECDSA")
38 }
39
40 func TestMakeSigner_Unsupported(t *testing.T) {
41 realSigner := ed25519.NewKeyFromSeed([]byte("0123456789abcdef0123456789abcdef"))
42 _, err := makeSigner(realSigner)
43 test.AssertError(t, err, "makeSigner shouldn't have succeeded")
44 }
45
46 func TestMakeIssuer(t *testing.T) {
47
48 }
49
View as plain text