A computer-implemented method comprising: receiving, at a first mempool node of a distributed mempool network implementing a distributed hash table, a request to update routing information of the mempool node, the update occurring in two phases: at a first phase: initializing a set of random walks within a key space of the DHT, the set of random walks used for generating a set of key-value records to be stored in a first table Tab_RND (Sx); at a second phase: for a number, α, of routing iterations, each iteration i < α, three other routing tables, 2 nd table Tab_ID (Sx), 3 rd table Tab_DIST (Sx, i) and 4 th table Tab_CLOSE (Sx, i) are generated, creating a 2 nd table Tab_ID (Sx) record by selecting a random identification information from a record in Sx (i-1)-th TAB_DIST table, wherein the first entry is a random key from the Tab_RND (Sx) table, creating a 3 rd table Tab_DIST (Sx, i) record by performing a random walk to a mempool node and collecting a resulting mempool node's address and the i-th identification information from its Tab_ID table, and generating 4 th table Tab_CLOSE (Sx. i) based on information included in Tab_RND (Sx) by at least requesting records of Tab_RND (Sy), which are the lexicographically closest relative to at least one other key following the identification information at a given iteration i. at a first phase: initializing a set of random walks within a key space of the DHT, the set of random walks used for generating a set of key-value records to be stored in a first table Tab_RND (Sx); at a second phase: for a number, α, of routing iterations, each iteration i < α, three other routing tables, 2 nd table Tab_ID (Sx), 3 rd table Tab_DIST (Sx, i) and 4 th table Tab_CLOSE (Sx, i) are generated, creating a 2 nd table Tab_ID (Sx) record by selecting a random identification information from a record in Sx (i-1)-th TAB_DIST table, wherein the first entry is a random key from the Tab_RND (Sx) table, creating a 3 rd table Tab_DIST (Sx, i) record by performing a random walk to a mempool node and collecting a resulting mempool node's address and the i-th identification information from its Tab_ID table, and generating 4 th table Tab_CLOSE (Sx. i) based on information included in Tab_RND (Sx) by at least requesting records of Tab_RND (Sy), which are the lexicographically closest relative to at least one other key following the identification information at a given iteration i. for a number, α, of routing iterations, each iteration i < α, three other routing tables, 2 nd table Tab_ID (Sx), 3 rd table Tab_DIST (Sx, i) and 4 th table Tab_CLOSE (Sx, i) are generated, creating a 2 nd table Tab_ID (Sx) record by selecting a random identification information from a record in Sx (i-1)-th TAB_DIST table, wherein the first entry is a random key from the Tab_RND (Sx) table, creating a 3 rd table Tab_DIST (Sx, i) record by performing a random walk to a mempool node and collecting a resulting mempool node's address and the i-th identification information from its Tab_ID table, and generating 4 th table Tab_CLOSE (Sx. i) based on information included in Tab_RND (Sx) by at least requesting records of Tab_RND (Sy), which are the lexicographically closest relative to at least one other key following the identification information at a given iteration i.