change ServerDHParams to re-use the DH abstraction in Crypto.DH.
This commit is contained in:
parent
1e62ddd53f
commit
6d63cde8cb
2 changed files with 9 additions and 10 deletions
|
@ -453,13 +453,14 @@ putSignatureHashAlgorithm (h,s) =
|
||||||
putWord8 (valOfType h) >> putWord8 (valOfType s)
|
putWord8 (valOfType h) >> putWord8 (valOfType s)
|
||||||
|
|
||||||
getServerDHParams :: Get ServerDHParams
|
getServerDHParams :: Get ServerDHParams
|
||||||
getServerDHParams = ServerDHParams <$> getInteger16 -- p
|
getServerDHParams = ServerDHParams <$> getDHParams <*> getDHPublic
|
||||||
|
where getDHParams = dhParams <$> getInteger16 -- p
|
||||||
<*> getInteger16 -- g
|
<*> getInteger16 -- g
|
||||||
<*> getInteger16 -- Ys
|
getDHPublic = dhPublic <$> getInteger16 -- y(server)
|
||||||
|
|
||||||
putServerDHParams :: ServerDHParams -> Put
|
putServerDHParams :: ServerDHParams -> Put
|
||||||
putServerDHParams (ServerDHParams p g y) =
|
putServerDHParams (ServerDHParams dhparams dhpub) =
|
||||||
mapM_ putInteger16 [p,g,y]
|
mapM_ putInteger16 $ dhUnwrap dhparams dhpub
|
||||||
|
|
||||||
getDigitallySigned :: Version -> Get DigitallySigned
|
getDigitallySigned :: Version -> Get DigitallySigned
|
||||||
getDigitallySigned ver
|
getDigitallySigned ver
|
||||||
|
|
|
@ -59,6 +59,7 @@ import Data.Typeable
|
||||||
import Control.Monad.Error (Error(..))
|
import Control.Monad.Error (Error(..))
|
||||||
import Control.Exception (Exception(..))
|
import Control.Exception (Exception(..))
|
||||||
import Network.TLS.Types
|
import Network.TLS.Types
|
||||||
|
import Network.TLS.Crypto.DH
|
||||||
|
|
||||||
type Bytes = ByteString
|
type Bytes = ByteString
|
||||||
|
|
||||||
|
@ -222,11 +223,8 @@ data HandshakeType =
|
||||||
| HandshakeType_NPN -- Next Protocol Negotiation extension
|
| HandshakeType_NPN -- Next Protocol Negotiation extension
|
||||||
deriving (Show,Eq)
|
deriving (Show,Eq)
|
||||||
|
|
||||||
data ServerDHParams = ServerDHParams
|
data ServerDHParams = ServerDHParams DHParams {- (p,g) -} DHPublic {- y -}
|
||||||
{ dh_p :: Integer -- ^ prime modulus
|
deriving (Show,Eq)
|
||||||
, dh_g :: Integer -- ^ generator
|
|
||||||
, dh_Ys :: Integer -- ^ public value (g^X mod p)
|
|
||||||
} deriving (Show,Eq)
|
|
||||||
|
|
||||||
data ServerRSAParams = ServerRSAParams
|
data ServerRSAParams = ServerRSAParams
|
||||||
{ rsa_modulus :: Integer
|
{ rsa_modulus :: Integer
|
||||||
|
|
Loading…
Reference in a new issue