diff --git a/lib/dubp/common-doc/src/blockstamp.rs b/lib/dubp/common-doc/src/blockstamp.rs
index a1f87b1538d49774e4279e608601f2e68089f8d2..ac156ef1629c737fafdf7a77aa85ae7deb00658e 100644
--- a/lib/dubp/common-doc/src/blockstamp.rs
+++ b/lib/dubp/common-doc/src/blockstamp.rs
@@ -161,20 +161,20 @@ impl Blockstamp {
     pub fn from_string(src: &str) -> Result<Blockstamp, BlockstampParseError> {
         let mut split = src.split('-');
 
-        if split.clone().count() != 2 {
-            Err(BlockstampParseError::InvalidFormat())
-        } else {
-            let id = split.next().unwrap().parse::<u32>();
-            let hash = Hash::from_hex(split.next().unwrap())?;
-
-            if let Ok(id) = id {
-                Ok(Blockstamp {
-                    id: BlockNumber(id),
-                    hash: BlockHash(hash),
-                })
-            } else {
-                Err(BlockstampParseError::InvalidBlockNumber())
+        match (split.next(), split.next(), split.next()) {
+            (Some(id), Some(hash), None) => {
+                let hash = Hash::from_hex(hash)?;
+
+                if let Ok(id) = id.parse::<u32>() {
+                    Ok(Blockstamp {
+                        id: BlockNumber(id),
+                        hash: BlockHash(hash),
+                    })
+                } else {
+                    Err(BlockstampParseError::InvalidBlockNumber())
+                }
             }
+            _ => Err(BlockstampParseError::InvalidFormat()),
         }
     }
 }
diff --git a/lib/dubp/common-doc/src/lib.rs b/lib/dubp/common-doc/src/lib.rs
index 31059d9d90ee9107d4f1aad36cf83dc81740c909..b08475fc6677215fe6b97a4024adbd7d1372abf5 100644
--- a/lib/dubp/common-doc/src/lib.rs
+++ b/lib/dubp/common-doc/src/lib.rs
@@ -16,6 +16,8 @@
 //! Provide common tools for DUBP.
 
 #![deny(
+    clippy::option_unwrap_used,
+    clippy::result_unwrap_used,
     missing_debug_implementations,
     missing_copy_implementations,
     trivial_casts,