Difficulty [uint64] - abstract figure that allows for adjustment of time it takes to calculate a block in blockchain. It decreases the system’s reaction time when the network hashrate is intensely growing or shrinking, preserving a constant block rate.
Here is an excerpt from CryptoNote 2.0 Whitepaper:
|“||The general idea behind our algorithm is to sum all the work completed by the nodes and divide it by the time they have spent. The measure of work is the corresponding difficulty values in each block. But due to inaccurate and untrusted timestamps we cannot determine the exact time interval between blocks. A user can shift his timestamp into the future and the next time intervals might be improbably small or even negative. Presumably there will be few incidents of this kind, so we can just sort the timestamps and cut-off the outliers (i.e. 20%). The range of the rest values is the time which was spent for 80% of the corresponding blocks.||”|