gitlab.com/SiaPrime/SiaPrime@v1.4.1/crypto/X25519_test.go (about)

     1  package crypto
     2  
     3  import (
     4  	"testing"
     5  )
     6  
     7  // TestDeriveSharedSecret tests that the same shared secret can be derived
     8  // using either secret+public combination of two keypairs.
     9  func TestDeriveSharedSecret(t *testing.T) {
    10  	sk1, pk1 := GenerateX25519KeyPair()
    11  	sk2, pk2 := GenerateX25519KeyPair()
    12  	if DeriveSharedSecret(sk1, pk2) != DeriveSharedSecret(sk2, pk1) {
    13  		t.Fatal("shared secret does not match")
    14  	}
    15  	if DeriveSharedSecret(sk1, pk1) == DeriveSharedSecret(sk2, pk2) {
    16  		t.Fatal("shared secret should not match")
    17  	}
    18  }