diff options
Diffstat (limited to 'src/PubKey.hs')
-rw-r--r-- | src/PubKey.hs | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/PubKey.hs b/src/PubKey.hs index 6dc8080..d7134c8 100644 --- a/src/PubKey.hs +++ b/src/PubKey.hs @@ -2,7 +2,7 @@ module PubKey ( PublicKey, SecretKey, KeyPair(generateKeys), loadKey, Signature(sigKey), Signed, signedData, signedSignature, - sign, signAdd, + sign, signAdd, isSignedBy, PublicKexKey, SecretKexKey, dhSecret, @@ -103,6 +103,9 @@ signAdd (SecretKey secret spublic) (Signed val sigs) = do ssig <- wrappedStore (storedStorage val) $ Signature spublic sig return $ Signed val (ssig : sigs) +isSignedBy :: Signed a -> Stored PublicKey -> Bool +isSignedBy sig key = key `elem` map (sigKey . fromStored) (signedSignature sig) + data PublicKexKey = PublicKexKey CX.PublicKey deriving (Show) |