diff --git a/src/sakia/data/entities/blockchain.py b/src/sakia/data/entities/blockchain.py
index e6af029cb49e7ba422b03e834f6e322d497ef8ea..7d5b3418ec8602bd82cb231728833a6b49197fa9 100644
--- a/src/sakia/data/entities/blockchain.py
+++ b/src/sakia/data/entities/blockchain.py
@@ -14,12 +14,16 @@ class BlockchainParameters:
     sig_period = attr.ib(convert=int, default=0, cmp=False, hash=False)
     # Maximum quantity of active certifications made by member
     sig_stock = attr.ib(convert=int, default=0, cmp=False, hash=False)
-    # Maximum delay in seconds a certification can wait before being expired for non-writing
-    sig_window = attr.ib(convert=int, default=0, cmp=False, hash=False)
     # Maximum age of a active signature (in seconds)
     sig_validity = attr.ib(convert=int, default=0, cmp=False, hash=False)
     # Minimum quantity of signatures to be part of the WoT
     sig_qty = attr.ib(convert=int, default=0, cmp=False, hash=False)
+    # Maximum delay in seconds a certification can wait before being expired for non-writing
+    sig_window = attr.ib(convert=int, default=0, cmp=False, hash=False)
+    # Maximum delay in seconds an identity can wait before being expired for non-writing
+    idty_window = attr.ib(convert=int, default=0, cmp=False, hash=False)
+    # Maximum delay in seconds a membership can wait before being expired for non-writing
+    ms_window = attr.ib(convert=int, default=0, cmp=False, hash=False)
     # Minimum decimal percent of sentries to reach to match the distance rule
     xpercent = attr.ib(convert=float, default=0, cmp=False, hash=False)
     # Maximum age of an active membership( in seconds)
diff --git a/src/sakia/data/processors/blockchain.py b/src/sakia/data/processors/blockchain.py
index 569ae051e31ef7f2b41f908350c5beff732d63d8..b2e4dcfe1feca585a6277e8420305d7eb10f758c 100644
--- a/src/sakia/data/processors/blockchain.py
+++ b/src/sakia/data/processors/blockchain.py
@@ -1,6 +1,6 @@
 import attr
 import re
-from ..entities import Blockchain
+from ..entities import Blockchain, BlockchainParameters
 from .nodes import NodesProcessor
 from ..connectors import BmaConnector
 from duniterpy.api import bma, errors
@@ -175,6 +175,32 @@ class BlockchainProcessor:
         blockchain = self._repo.get_one(currency=currency)
         if not blockchain:
             blockchain = Blockchain(currency=currency)
+            blockchain_parameters = BlockchainParameters()
+            log_stream("Requesting blockchain parameters")
+            try:
+                parameters = await self._bma_connector.get(currency, bma.blockchain.Parameters)
+                blockchain.parameters.ms_validity = parameters['msValidity']
+                blockchain.parameters.avg_gen_time = parameters['avgGenTime']
+                blockchain.parameters.blocks_rot = parameters['blocksRot']
+                blockchain.parameters.c = parameters['c']
+                blockchain.parameters.dt = parameters['dt']
+                blockchain.parameters.dt_diff_eval = parameters['dtDiffEval']
+                blockchain.parameters.median_time_blocks = parameters['medianTimeBlocks']
+                blockchain.parameters.percent_rot = parameters['percentRot']
+                blockchain.parameters.idty_window = parameters['idtyWindow']
+                blockchain.parameters.ms_window = parameters['msWindow']
+                blockchain.parameters.sig_window = parameters['sigWindow']
+                blockchain.parameters.sig_period = parameters['sigPeriod']
+                blockchain.parameters.sig_qty = parameters['sigQty']
+                blockchain.parameters.sig_stock = parameters['sigStock']
+                blockchain.parameters.sig_validity = parameters['sigValidity']
+                blockchain.parameters.sig_qty = parameters['sigQty']
+                blockchain.parameters.sig_period = parameters['sigPeriod']
+                blockchain.parameters.ud0 = parameters['ud0']
+                blockchain.parameters.xpercent = parameters['xpercent']
+            except errors.DuniterError as e:
+                raise
+
             log_stream("Requesting current block")
             try:
                 current_block = await self._bma_connector.get(currency, bma.blockchain.Current)
diff --git a/src/sakia/data/repositories/blockchains.py b/src/sakia/data/repositories/blockchains.py
index e61b905ed527e752809c1b5ee424b092b551037b..d0c9a8dfe161f702563686eaef047c1692d7ab6e 100644
--- a/src/sakia/data/repositories/blockchains.py
+++ b/src/sakia/data/repositories/blockchains.py
@@ -68,7 +68,7 @@ class BlockchainsRepo:
             c = self._conn.execute(request, tuple(values))
             data = c.fetchone()
             if data:
-                return Blockchain(BlockchainParameters(*data[:15]), *data[16:])
+                return Blockchain(BlockchainParameters(*data[:17]), *data[18:])
 
     def get_all(self, offset=0, limit=1000, sort_by="currency", sort_order="ASC", **search) -> List[Blockchain]:
         """
@@ -110,7 +110,7 @@ class BlockchainsRepo:
                 c = self._conn.execute(request)
             datas = c.fetchall()
             if datas:
-                return [Blockchain(BlockchainParameters(*data[:15]), *data[16:]) for data in datas]
+                return [Blockchain(BlockchainParameters(*data[:17]), *data[18:]) for data in datas]
         return []
 
     def drop(self, blockchain):
diff --git a/src/sakia/data/repositories/meta.sql b/src/sakia/data/repositories/meta.sql
index 610cc552bccadf7045ef14a00db601aa6df63307..0a99b1a43bdfef1b9c5b73236e1093285d560e7c 100644
--- a/src/sakia/data/repositories/meta.sql
+++ b/src/sakia/data/repositories/meta.sql
@@ -24,6 +24,8 @@ CREATE TABLE IF NOT EXISTS blockchains (
   sig_period                    INT,
   sig_stock                     INT,
   sig_window                    INT,
+  idty_window                   INT,
+  ms_window                     INT,
   sig_validity                  INT,
   sig_qty                       INT,
   xpercent                      FLOAT(1, 6),