Ejemplo n.º 1
0
func generate() ([]byte, []byte, error) {
	privateKey, publicKey, err := bletchley.Generate()
	if err != nil {
		return []byte{}, []byte{}, err
	}

	privateKeyPEM := bletchley.PrivateKeyToPEM(privateKey)
	publicKeyPEM, err := bletchley.PublicKeyToPEM(publicKey)

	return publicKeyPEM, privateKeyPEM, err
}
Ejemplo n.º 2
0
package bletchley_test

import (
	"crypto/rand"
	"crypto/rsa"

	"github.com/pivotal-cf-experimental/bletchley"

	. "github.com/onsi/ginkgo"
	. "github.com/onsi/gomega"
)

var _ = Describe("Generating asymmetric key pairs", func() {
	It("should return a 4096 bit key pair", func() {
		private, public, err := bletchley.Generate()
		Expect(err).NotTo(HaveOccurred())

		Expect(public).To(Equal(private.Public()))
		Expect(public.N.BitLen()).To(Equal(4096))
	})
})

var _ = Describe("Serialization of asymmetric keys", func() {
	var privateKey *rsa.PrivateKey

	BeforeEach(func() {
		nbits := 256
		var err error
		privateKey, err = rsa.GenerateKey(rand.Reader, nbits)
		Expect(err).To(BeNil())
	})