package identity_test import ( "crypto/ecdsa" "crypto/elliptic" "crypto/rand" "testing" "koti.casa/numenor-labs/dsfx/pkg/crypto/identity" ) func TestImportExportPrivate(t *testing.T) { key, err := ecdsa.GenerateKey(elliptic.P384(), rand.Reader) if err != nil { t.Fatalf("failed to generate key: %v", err) return } exported, err := identity.ExportPrivateKey(key) if err != nil { t.Fatalf("failed to export key: %v", err) return } imported, err := identity.ImportPrivateKey(exported) if err != nil { t.Fatalf("failed to import key: %v", err) return } if !key.Equal(imported) { t.Fatalf("imported key does not match original") return } } func TestImportExportPublic(t *testing.T) { key, err := ecdsa.GenerateKey(elliptic.P384(), rand.Reader) if err != nil { t.Fatalf("failed to generate key: %v", err) return } exported, err := identity.ExportPublicKey(&key.PublicKey) if err != nil { t.Fatalf("failed to export key: %v", err) return } imported, err := identity.ImportPublicKey(exported) if err != nil { t.Fatalf("failed to import key: %v", err) return } if !key.PublicKey.Equal(imported) { t.Fatalf("imported key does not match original") return } }