去中心化之前,首先我们得知道,什么是中心化,什么又是去中心化。通俗地讲,中心化就是一个或多个重要级别的领导讲话,所有其他人只能参与听,领导讲话你是不能插嘴的。以前的门户网站是中心化。而去中心化就是每个人都可以讲话,都可以选择听还是选择讲,就像自由讨论模式。
区块链是去中心化技术,而去中心化技术与现在的中心化组织之间是一种矛盾关系,这意味着二者是个悖论吗,现在各大公司推出的区块链应用其实并没有解决中心化的问题。而解决中心化的方法也并不一定是将现有数据完全共享,完全去中心化,而是从现有的数据开始,原来的中心机构自发形成一个数据网络,当然,这也是个愿景。
function initialize(uint160 sqrtPriceX96) external override { require(slot0.sqrtPriceX96 == 0, 'AI'); int24 tick = TickMath.getTickAtSqrtRatio(sqrtPriceX96); (uint16 cardinality, uint16 cardinalityNext) = observations.initialize(_blockTimestamp()); slot0 = Slot0({ sqrtPriceX96: sqrtPriceX96, tick: tick, observationIndex: 0, observationCardinality: cardinality, observationCardinalityNext: cardinalityNext, feeProtocol: 0, unlocked: true });
在一个分布有众多节点的系统中,每个节点都具有高度自治的特征。节点之间彼此可以自由连接,形成新的连接单元。任何一个节点都可能成为阶段性的中心,但不具备强制性的中心控制功能。节点与节点之间的影响,会通过网络而形成非线性因果关系。这种开放式、扁平化、平等性的系统现象或结构,我们称之为去中心化。
随着主体对客体相互作用的深入和认知机能的不断平衡、认知结构的不断完善,个体能从自我中心状态中解除出来,称之为去中心化。
再来看看它的性质是什么?去中心化,不是不要中心,而是由节点来自由选择中心、自由决定中心。简单地说,中心化的意思,就是中心决定节点,节点必须依赖中心,节点离开了中心就无法生存。而在去中心化系统中,任何人都是一个节点,任何人也都可以成为一个中心,任何中心都不是久的,而是阶段性的,任何中心对节点都不具有强制性。
function deploy( address factory, address token0, address token1, uint24 fee, int24 tickSpacing ) internal returns (address pool) { parameters = Parameters({factory: factory, token0: token0, token1: token1, fee: fee, tickSpacing: tickSpacing}); pool = address(new UniswapV3Pool{salt: keccak256(abi.encode(token0, token1, fee))}()); delete parameters; }