EdenChain is composed of several core components and to have a clear understanding of EdenChain it is useful to browse them in turn.
The below image depicts core components, their relationships and how they are deployed.
EdenChainis a cloud based blockchain platform,andas you can seethere isheavy usage of kubernates. Hypernodes, super node and the eden core areallrunning on top of kubernates.
Eden core moduleshandle theessential business logic required to operateEdenChain,whereaspure blockchain related functions are located in hyper nodes and super nodes.
A Hyper node manages EDN coin, TEDN coin and anchoring. It is the main blockchain inEdenChain.
A Super node is solely dedicated to processingrequests from corresponding dApps.dAppsareis not allowed to accessahyper node directly,theyaccesse a super node to processtheirtasks. Then depending on requests, core componentscome into play.
AdApp serveranddApp client are supposed to be created bythedApp provider.ThedApp server connectsto asuper node to handle corresponding tasks submitted fromthedApp client.
Hyper node has 3 major tasks.
- Native Coin, EDN Management
- TEDN Anchoring
- Super Node Transaction Data Anchoring
Super node handlesdApps’ requests, more precisely it stores TEDN related transactions generated bydApps.
Itsprimary tasksis to recordand storeTEDN transactions.
- To record TEDN related transactions
EdenChainhas internallytwotypes of coin, EDN(native coin), TEDN(internal coin foradApp). TEDN is the main coin required to useadApp.
TheCoin server exchanges EDN to TEDN, TEDN to EDN, it acts like an internal exchange server inEdenChain.
- Convert EDN to TEDN
- Convert TEDN to EDN
TheBalance server processes actual coin related transactions such as deposit/withdraw but it is dedicated for TEDN.
It has a sophisticated logicin orderto manage TEDN correctly to secure transactions betweenadApp client and dApp serverand to avoidunexpected situations such as hacking, double spending, system error and so on.Basically,the balance of TEDN should not be manipulated and there should be no errors.
- To handle deposit/withdraw TEDN
The Transaction Server is the middleware of all super-node transactions.
Whenatransaction is transmitted, the Transaction server will validate the transaction and write it toasuper node.
After thesuper node completesablock commit,thetransaction server will be notifiedofthe completed events,retrievethe blockwhichwas completed and write it to data storage.
If a request to read transaction blocks is submitted, the Transaction Server will retrieve it from data storage similar to a cache read.
The Transaction server does block height/transaction anchoring.
- TEDN Transaction Cache
- To write transactions in super node
- To read transaction from cache
- To write anchoring data into hyper node
EIAM is an identity server intheEdenChainplatform.Itplaysanimportant role because it provides identity information toarequester.
EIAM has account info, user specific information and so on inanencrypted manner to secure data.
For higher security, EIAM supportstwotypes of user,anormal user andaserver user.A normaluser has limited accessibilityrestricted tothe connected user’s data only.
TheServer user has full accessibility,and is createdand granted byEdenChain’s admin.TheServer user uses TLS.
- Identity Management
- To send identity information to requester
- To sign TEDN transaction
- To create TEDN wallet address
ThedApp server handles requests fromadApp client with its own business logic.
From adevelopment viewpoint,thedApp server hastwomajor roles, 1) business logic, 2) access toasuper node.
For security reasons, thedApp client is not supposed to accessasuper node directly. We expects HTML5 will be a major technology for dApp building. HTML5 isaneasy to use, cross platform with goodaeco system, but isrelatively easy to hack and there are many hacking tools available. So blockchain related processing isrelegated to thedApp server’s functionality.
- To manage TEDN
- Business logics
- TEDN balance check
- Sign in/Sign out