diff --git a/peyotls.cabal b/peyotls.cabal
--- a/peyotls.cabal
+++ b/peyotls.cabal
@@ -2,7 +2,7 @@
 cabal-version:	>= 1.8
 
 name:		peyotls
-version:	0.0.0.1
+version:	0.0.0.2
 stability:	Experimental
 author:		Yoshikuni Jujo <PAF01143@nifty.ne.jp>
 maintainer:	Yoshikuni Jujo <PAF01143@nifty.ne.jp>
@@ -272,7 +272,7 @@
 source-repository	this
     type:	git
     location:	git://github.com/YoshikuniJujo/peyotls.git
-    tag:	peyotls-0.0.0.1
+    tag:	peyotls-0.0.0.2
 
 library
     hs-source-dirs:	src
diff --git a/src/Network/PeyoTLS/HandshakeMonad.hs b/src/Network/PeyoTLS/HandshakeMonad.hs
--- a/src/Network/PeyoTLS/HandshakeMonad.hs
+++ b/src/Network/PeyoTLS/HandshakeMonad.hs
@@ -63,8 +63,10 @@
 		HandleMonad h [X509.FailedReason]
 
 instance ValidateHandle Handle where
-	validate _ cs = X509.validate X509.HashSHA256 X509.defaultHooks
-		validationChecks cs validationCache ("", "")
+	validate _ cs (X509.CertificateChain cc) =
+		X509.validate X509.HashSHA256 X509.defaultHooks
+			validationChecks cs validationCache ("", "") .
+				X509.CertificateChain $ reverse cc
 		where
 		validationCache = X509.ValidationCache
 			(\_ _ _ -> return X509.ValidationCacheUnknown)
