Sygma celo module is the part of Sygma-core framework. This module brings support of celo compatible client module.
Project still in deep beta
- Chat with us on discord.
Refer to installation guide for assistance in installing.
Module should be used along with core framework.
Since chainbridge-celo-module is a package it will require writing some extra code to get it running alongside chainbridge-core. Here you can find some examples Example
Though Celo is an EVM-compatible chain, it deviates in its implementation of the original Ethereum specifications, and therefore is deserving of its own separate module.
The differences alluded to above in how Celo constructs transactions versus those found within Ethereum can be viewed below by taking a look at the Message structs in both implementations.
Here you will find fields relating to the most recent London hardfork (EIP-1559), most notably gasFeeCap
and gasTipCap
.
Message {
from: from,
to: to,
nonce: nonce,
amount: amount,
gasLimit: gasLimit,
gasPrice: gasPrice,
gasFeeCap: gasFeeCap,
gasTipCap: gasTipCap,
data: data,
accessList: accessList,
isFake: isFake,
}
In Celo's struct you will notice that there are additional fields added for feeCurrency
, gatewayFeeRecipient
and gatewayFee
. You may also notice the ethCompatible
field, a boolean value we added in order to quickly determine whether the message is Ethereum compatible or not, ie, that feeCurrency
, gatewayFeeRecipient
and gatewayFee
are omitted.
Message {
from: from,
to: to,
nonce: nonce,
amount: amount,
gasLimit: gasLimit,
gasPrice: gasPrice,
feeCurrency: feeCurrency, // Celo-specific
gatewayFeeRecipient: gatewayFeeRecipient, // Celo-specific
gatewayFee: gatewayFee, // Celo-specific
data: data,
ethCompatible: ethCompatible, // Bool to check presence of: feeCurrency, gatewayFeeRecipient, gatewayFee
checkNonce: checkNonce,
}
We take all security issues seriously, if you believe you have found a security issue within a ChainSafe project please notify us immediately. If an issue is confirmed, we will take all necessary precautions to ensure a statement and patch release is made in a timely manner.
Please email us a description of the flaw and any related information (e.g. reproduction steps, version) to security at chainsafe dot io.
GNU Lesser General Public License v3.0