public void Verify_ReturnsTrue_ForValidSignatures(string text, string signature, string publicKey) { var key = SodiumSecurityKey.FromPublicKey(Convert.FromBase64String(publicKey)); var provider = new SodiumSignatureProvider(key, SodiumAlgorithms.EdDsa); var verified = provider.Verify(Encoding.UTF8.GetBytes(text), Convert.FromBase64String(signature)); Assert.IsTrue(verified); }
public void FromPublicKey_HasNoPrivateKey() { var key = SodiumSecurityKey.FromPublicKey(PublicKey); Assert.AreEqual(PrivateKeyStatus.DoesNotExist, key.PrivateKeyStatus); }
public void FromPublicKey_Sets_PrivateKeyToNull() { var key = SodiumSecurityKey.FromPublicKey(PublicKey); Assert.Null(key.PrivateKey); }
public void FromPublicKey_Sets_PublicKeyToInput() { var key = SodiumSecurityKey.FromPublicKey(PublicKey); CollectionAssert.AreEqual(PublicKey, key.PublicKey); }
public void FromPublicKey_ThrowsArgumentException_WhenPublicKeyTooShort() => Assert.Throws <ArgumentException>(() => SodiumSecurityKey.FromPublicKey(Array.Empty <byte>()));
public void Initialize() { _provider = new SodiumCryptoProvider(); _key = SodiumSecurityKey.FromPublicKey(Convert.FromBase64String("T/2hPBHWHSuVaOVL7AbqWTaOhIdIgwh2ReZOXpZTQi4=")); }