a peer-to-peer encyclopedia network
TRANSCRIPT
APeer-to-PeerEncyclopediaNetworkSamKazemian,KedarIyer,TravisMoore,TheodorForselius,LarrySanger
[email protected]@[email protected]
[email protected]@everipedia.com
DISCLAIMER:ThisEveripediaNetworkTechnicalWhitePaperversion1.21
(June212018)isaworkinprogressandforinformationalpurposesonly.It
ismeanttoserveasaproposalofideasforfree,open-sourcesoftware.
AbstractEmergingblockchaintechnologyhasmadeitpossibletocreatean
incentivizedpeer-to-peernetworkforsubmitting,curating,andgoverning
adatabaseofencyclopediaarticles.Participantsinthenetworkearn
tokensforcuratingandsubmittingcontenttothedatabase,thenusethese
tokenstovoteonprotocolupgradesandfurthersubmissionsor
modificationstothedatabaseofarticles.Websites,businesses,or
individualscanbuildtheirownuserinterfacetointeractwiththenetwork
orasubsetofthenetwork.Thisallowswebsitesandapplicationstoaccess
andcollaborateonasynchronizeddatabaseofhumanknowledge,a
“greaterwiki,”thatisconstantlyupdatedbyallparticipantsand
applicationsonthenetwork.
Weproposeathreemodulesystemconsistingofatokenmodule,a
governancemodule,andanarticlesubmissionmodule.Thesecomponents
interacttocreateasustainable,decentralized,immutable,incentivized
networkofeditorsthatcreatequality,well-citedencyclopediaarticles.The
usefulnessofhavingcredibleinformationincludedinthishighlyordered,
historicallyrecorded,andcommunitymaintaineddistributeddatabase
becomesvaluable.Thisusefulnessandastakeintheoverallnetwork
providesthetokenitsutilityandvalue.
Introduction:TheEveripediaNetworkTheEveripediaNetwork(EPN)isadecentralizedencyclopediadatabase
fullygovernedbytokenholders.Tokenholderscanapproveedits,create
network-widerulesthatgoverntheencyclopedia,aswellasbuyandsell
servicesfortokensonthenetwork.Thisalsomeansthattokensplaya
centralroleintheconsensusprotocoloffinalizingdataentryintothe
network.
TheEveripediaNetworkturnsthenon-profitknowledgeindustryintoa
knowledgeeconomywhereeconomicincentivescanguidethecreationof
knowledgecontent.WiththeEPNonecanconnectdirectlytotheworld’s
largestwikidatabasefromanysite.Weimagineafutureinwhicheven
non-programmerscancreatesitesthatutilizetheEveripediaNetwork
throughsomethingassimpleasaWordpresstemplate.
Networkeffectshavehadaheavycentralizationeffectontheknowledge
industrypreventingseriouscompetitionandmarketforcesfromspringing
up.Wikipediaisoneofthelargestwebsitesintheworldboastingover19
billionpageviewsamonthacrossalllanguages.[1][2]However,Wikipedia
unintentionallytrapstheknowledgecapitalitgenerateswithinitsown
platformwhenitscontentcouldbeusedtocreateathrivingknowledge
economy.
Additionally,oneclearshortcomingWikipediahasdemonstratedisits
inabilitytocaptureanyofthemonetaryandintrinsicvalueofcontentthat
itsplatformandcommunityhascreated,asevidencedbybi-annual
donationbannercampaigns.[3][4]Inthisregard,thereisroomto
dramaticallyupendthestatusquobycreatinganopen,distributed
knowledgebasewithtechnologythatproperlytracksthevaluecreationof
thecommunityandreturnsthisvaluebacktothecreators,curators,and
developersoftheplatform.Additionally,adistributedplatformwhich
drawsconsensus,contributions,incentives,andvaluefromtheparticipants
ofthenetworkalsohasauniqueopportunityfortheparticipantstotake
partintheactualhosting,storage,anddistributionofthecontentonsuch
anetwork.
Achievingsuchagoalwouldcreateapeertopeerdistributedcontent
systemthatisproperlyincentivizedandcoordinated.Suchasystemwould
beimmunetosinglepointsoffailurewhichmakesitnearlyimpossibleto
censororblockaccessbyvariousbadactors.
<sub><sup>ThethreemodulesoftheEPNandtheirinteractions.The
tokenmoduleisresponsibleforholdingtokenbalances,mintingschedule,
andsending/receiving/feefunctions.Itcanchangethestateofthearticle
module.Thearticlemoduleisresponsibleforeditproposalsandchanging
thestateofthedatabaseofarticleswhicharethensenttoIPFSnodes.The
governancemoduleisresponsibleforproposalsonchangingnetwork-wide
rules.Itcanchangethestateofanymodule(includingitself)bydeploying
newcodethatisvotedthroughbytokenholders.</sub></sup>
On-chainKnowledge&FactsCurrentsmartcontractsarefairlysimplisticanddonothavethecapability
toreplicatemorenuancedfinancialarrangementsintherealworld.
Additionally,the“oracleproblem”isstillunresolved.Thereisnostandard,
trustless,andsybilresistantmethodforagreeingonreal-worldknowledge
sothatfinancialtransactionscanreferencethem.Oneofthedirectusesof
theEveripediaNetworkshouldbetocreatetheworld’sfirstrepositoryof
on-chainknowledgesothatfinancialtransactionsanddecentralized
applicationscanreferencethemwithouthavingtore-inventtheirown
oraclesystems.Inthissense,theIQtoken’sintrinsicvalueisthestakeit
providesinthelargestdistributedrepositoryoffactsusedbyagrowing
industry.
GovernanceModuleThegovernancemoduleisanobjectwhichhasscopetomakechangesto
everymodule,includingitself.Governanceactionscanmodifythesoftware
foranyofthethreemodules,butnotthedatabasescontainingtoken
balancesandarticles.
Thegovernancemoduleallowsforsubmittingchangestothecommunityof
tokenholdersforapproval.Ifapproved,thegovernancemodulethen
deploysthosechangestothecorrespondingmodule(s).Thisallowsforthe
communitytocometosocialconsensusontherulesthatgovernthe
networkasawhole.Discussionaboutthisconsensuscantakeplaceoff-
chainonsocialmediaandothercommunicationhubs,butdeploymentof
newcodeneedstobedoneon-chaininatrustlessmanner.
TheEPNwillbeasystemofsmartcontractsontheEOSplatform,sousers
willnotberunningfullnodesoftheEveripediaNetwork.Thismeansusers
cannotvoteonsoftwareupdatesbyupdatingtheirclientsoftwareasthey
doinBitcoinorEthereum.Instead,atrustlesson-chainconsensusprocess
mustbedesignedfordeploymentofnewupdates.
Withoutaninternalconsensusprocess,theonlyviablealternativefor
updatingthemodulesoftwarewouldbeforatrustedparty(suchascore
developersorafoundation)toprocessoff-chainconsensusanddeploynew
updateswiththeirelevatedpermissions.Thisisundesirablegiventhe
spiritoftheindustryandthecleartrustlessalternativethatispossible.
Researchanddevelopment,solutionstoscaling,andimprovementstothe
codebasearejustascritical(ifnotmorecritical)asanyserviceandfeature
builtontopofthenetwork.Forthisreason,wehavelaidthefoundationfor
proposingeditsandadditionstothesourcecodeofthenetworkthrough
thegovernancemodule.Thismechanismwillbeusedformeta-governance
ofthenetworkprotocolitselfinafullytrustless,on-chainprocess.
FundingtheNetworkandSelf-SustainabilityTheEveripediaNetworkisaseriesofmodules(smartcontracts)which
runsontheEOSVirtualMachine(EVM).Thevirtualmachine’sstorage,
randomaccessmemory,andbandwidth/computeresourcesareallocatedto
accountsproportionaltotheirEOStokenbalances.TheEveripedia
NetworkwillrequireEVMresourcestorunandfunction.Asthenetwork
increasesinsize,itwouldrequireahigherpercentageoftheEOS
network’scomputepowerandasaresultneedmoreEOStokens.There
aremanywaysfortheEPNtofunditselfrangingfromoldergeneration
methodssuchassimpledonations(suchasWikipedia.org),UXlayer
revenueaswellasnewgenerationmethodsbasedontokeninflationand
auctioning.Onesuchfundingmethodwouldbeagovernanceactionwhich
wouldproposemintingnewIQtokenstobeauctionedforEOStokens.If
theactionisapprovedbyvoters,thenewlyacquiredEOStokenswould
thenbeusedtofundtheEPN’snewbandwidth,storage,andcompute
needs.ThismethodissimilartotheEOSnetwork’sowninflationbased
fundingmodelwhereblockproducersarepaidEOStokensfortheir
services.
TokenModuleThetokenmoduleisresponsibleformakingchangestothetokenbalances
ofaddressesbytransferringtokens,applyingtransactionfees,minting
tokens,andlockingtokensforthearticleconsensusprocess.The
fundamentalunitofaccountintheEveripediaNetworkistheIQtoken
whichistrackedwithinthetokenmodule.
InitialSupply&MintingScheduleTokenswillbemintedevery30minutesthroughtheeditprocessandedit
curationprocess.Therewillbeafixedamountoftokensmintedeachday.
Theamountwillbereseteverydayat00:00UTC.
ProposededitspasstieredthresholdsandreceiveIQrewardsbasedon
votesoftokenholders.Thefirsttiergetstheircollateralback,butno
additionalreward(foranexplanationofcollateral,seethearticlemodule).
ThresholdspastthefirsttierearnfromthedailyIQrewardpool.Theexact
thresholdsanddistributionsforthetierswillbedeterminedbythe
communityasoneofthefirstgovernanceactions.
Attheendofthe30minuteperiod,editorswillreceiveIQrewardsin
proportiontothevalueoftheircontributions.Ansingleeditor’s
contributionisvaluedbasedonthenumberandtiersofeditsapproved
(Listing1).TheIQrewardavailableperdayisdeterminedbythedaily
mintingformula(Listing2).
Listing1:IQrewardformulaforasingleeditor
R=Editor’sIQreward
E=Editor’scontributionvalue
T=Totalcontributionvalueforthe30-min-periodacrossalledits
Q=IQrewardperiodmintrateconstant
R=E*T
Q
TheavailableIQrewardfortheperiod,Q,isdeterminedbyListing2:
Listing2:RewardperiodIQmintingformula
S0=TokenSupplyatGenesis
F=Dailyperiodmintrate
A=Annualmintrate
F=(1+A)1/1051200-1
Q=F*S0
Theannualmintrate,A,willbe5%tomatchtheEOSinflationrate,butthe
numbercanbechangedbyagovernanceaction.Additionally,theminted
tokenscanbepartiallyre-allocatedbyagovernanceactionforadeveloper
fund,bounties,oranyotheruse.
TransactionFeesTheinitialnetworktransferfeewillbethelesserof0.1%or100IQtokens.
Thefeewillbesenttoanulladdressandburntinaverifiablemanner.
Thesenumberscanbechangedbythegovernancemodule.Thesefeesonly
existfortransfersthatarenotstakingorgovernancebasedactions.
Thetransferfeesaredesignedtocounteracttheinflationaryeffectsofthe
editrewards.Sincethetransactionrateforcryptocurrenciestendstobe
volatile,usingthetransferfeesdirectlyforeditrewardswouldleadtotoo
muchdailyuncertainty.
Thecommunityshouldsetthetransferfeeataratewherethemoving
averageofthedailyburnrateapproximatelymatchesthestableinflation
ratefromeditrewards.Theusabletokensupplywillbevirtuallyhard-
cappedthoughday-to-dayfluctuationswillexist.
Alargepercentageoftokentransfersinexistingblockchainnetworkstake
placeforthepurposeofspeculation.Undermostcurrentsystems,the
economicvalueofthisspeculationiscapturedbythespeculators,notthe
network.
Thetransferfeemodelweproposewillallowthenetworktobenefitfrom
marketspeculation.Sinceonlynon-governance,non-stakingtransfers
incurafee,thespeculatorsare,inaway,fundingthedevelopmentofthe
EveripediaNetwork.Thetransferfeecanbeburnedtocreatea
deflationarysupply,usedtofundnetworkdevelopment,orusedtofurther
economicactivityontheplatform.Eitherway,aportionofthespeculative
activity’svaluewillbecapturedandallocatedbythenetwork.
ArticleModuleThearticlemoduleisusedtoproposeeditstobeincludedinthedatabase.
ProposededitsaretupleobjectswhichcontainanIPFShashpointingto
theimmediateparentversionandanIPFShashpointingtothenew
version.Anexampleofaneditobjectcouldbe:
[QmXvHQCbvxp3vQm96VmZDBaTX8Aae6vVcoTvVB6QQsMXnM,
QmeAv3LJo4Kre6dR7GQBqjJFztY9YWZD131W5tYGStUcbM]
StakingIQTokensStakingIQtokensisrequiredtoproposeedits,voteonedits,and
propose/voteonnetworkgovernanceactions.IQisstakedbylockingup
tokensina21-dayvestingperiod.Thisissimilartootherblockchainssuch
asSteemwhichrequiresusersto“powerup”(essentiallylockandvest)
theirtokensinordertovote/stakethemoncontentpublishedonthe
platform.[9]TheprocessofstakingIQisalsocalledpoweringup(asa
tokenofappreciationtoSteem’spioneeringdesign).IQthatislockedup
for21daysgivestheholder“brainpower”(BP)ata1:1ratio.Brainpower
isnotafungibleortransferabletokenandonlyspentduringusageofthe
EPNbythestakingaccount.Onceanaccount’sBPisentirelyspent,they
mustwaitfortheIQstakingperiodof21daystoendbeforere-staking
theirtokensforBPtousetheEPN.Otherwise,theycanacquiremoreIQ
tokensandstakethenewlyacquiredIQforBP.
Example:Auserhas150IQtokens.Theycancallthestakingfunctionto
lockuptheir150IQtokensfor21daysandgettheiraccountallocated150
BrainPowertouseforproposingedits,governanceactions,andvoting.
ThesecondfeatureofthearticlemoduleisusiingBPfortokenholder
votingofinclusionorexclusionofproposededitsinqueue.Thevalidation
ofarticlesgoesthroughavalidationalgorithm(below)withparameters
thatcanbechangedthroughagovernancevote.
Editproposalsareapprovedintierswhichisanoutputofthevalidator
functioninsidethearticlemodule.Thetiersareasfollows:
Tier1:Proposalnotapproved
Tier2:Proposalapproved,notokenrewardgiven,collateralreturned
Tier3:Proposalapproved,tokenrewardsgivenproportionaltotoken
holdervotes,collateralreturned
IfeditproposalshitTier2orTier3thenthearticlemodulewillstorethe
correspondingeditproposalobjectintothemoduledatabase.
ValidationAlgorithm(thecontentconsensusmethod)Oneofthemostimportantprocessesinthenetworkisthevalidationof
statechangestothedatabase-thatis,approvalofchangestoarticlesor
creationofnewones.Thevalidationalgorithmisafunctionwhichtakesin
asargumentstheproposededitobjectofthearticleandtheBPvotesfor
thatproposal.Itreturnsthetieroftheeditproposalandtokenrewards
andslashingconditions(ifapplicable).
Thevalidationperiodforeacheditlastsamaximumof72hoursorwhena
minimumstakingthresholdisreached.Front-endsarefreetousetheir
owncriteriatodisplaypendingeditssinceevenpendingeditobjectsare
locatedinsidethedatabase.Forexample,somefront-endscouldchooseto
displayallpendingeditswithtime-sensitivecontent.
Attheendofthevalidationperiod,aneditisclassifiedintoatierusingthe
followingcriteria.Thesecriteriacanbemodifiedbythegovernance
module.OnevoteisequivalenttooneBP.
Tier1-Lessthan50%yesvotes
Tier2-Greaterthan50%ofyesvotesbutfailstoqualifyforTier3.
Tier3-Greaterthan75%ofyesvotes
EveryvotereceivedbyaTier3editcountstowardsaneditor’sdaily
contributionvalue.IQrewardsforthedayaredispersedbasedonthe
formulasinListings1and2intheTokenModule.
CurationRewardsCMR=Curationmintrate;numberofIQtokensmintedforcuration
rewardsperperiodP(initialnetworkP=30minutes)
SBP=Summatonofoneuser’sBrainPowerwhichvotedonthemajority
sideduringperiodP
OBP=Summationofalluser’sBrainPowerwhichvotedonthemajority
sideduringperiodP
CMR*(SBP/OBP)=user’scurationrewardperperiodP
EditRewards(ContentRewards)EMR=Editmintrate;numberofIQtokensmintedforeditorrewardsper
periodP(initialnetworkP=30minutes)
TBP=Summatonofoneeditor’sBrainPowervotessurpassingTier2
thresholdduringperiodP
OTBP=Summationofalleditor’sBrainPowervotessurpassingTier2
thresholdduringperiodP
EMR*(TBP/OTBP)=user’scurationrewardperperiodP
SlashingConditionsEditingarticlescanbeafairlycontentiousactivity.However,theremustbe
sybil-resistanteconomicincentivestohavetokenholdersarriveatthe
common,salientansweroftheeditproposal.Thatis,theremustbe
incentivesforeachindividualagenttoarriveatwhattheybelievetobethe
commonresponse-thecorrectone.Likewise,thereshouldbe
disincentivesproportionaltoarrivingattheminorityresponse-the
incorrectone.Unlikeproofofstakebasedconsensusmethodswhich
slash/burnthestaker’stokensforvotingonincorrectblocks,theEPN
slashingconditiondoesnotpermanentlyburntokensforvotingincorrectly
(votingontheminorityside).
Slashingincreasesthestakinglock-upperiodinverselyproportionaltothe
minorityvotingratio.Ifauser’saccountisslashed,theirlock-upperiodfor
withdrawingtheirIQtokensincreasesbysomeamount.Thissolvestwo
issues:1.RepeatedlyvotingontheminoritysideeffectivelyburnsIQ
tokenssincethelock-upperiodconsistentlyincreasessothatrepeated
attacksonthenetworkdefactoremovetheattacker’sIQtokensfrom
circulation(sincetheywillnotbeabletowithdrawandre-staketheir
tokensforaverylongduration).2.Participationingenuinecontentious
discussions(“editwars”)isnotdiscouragedsincelosingsidesdonotget
theirtokensburnedpermanently.Additionally,themorecontentiousan
editis,thelesspenaltythereisforvotingontheminorityside(sincethe
minorityisalmostaslargeasthemajority).
VotersinthemajorityaregivenaproportionalamountoftheIQ
inflationarytokenrewardallottedforcontent.Votersthatvoteinthe
minorityhavetheirtokenlock-upperiodincreasedforanextendedamount
oftime,inversely-proportionaltotheminoritystake.Theslashingratiocan
bemodeledwiththefollowing:
(TotalMajorityBPVotes-TotalMinorityBPVotes)/(TotalBPVotes)=
SlashingRatio
Ex:Userhas200BrainPowerandvotes“No”usingalltheirBPforanedit
proposal.Totalvotesequal2000BrainPowerwith1500BPvotes“Yes”and
500totalBPvotes“No.”Becausetheuservotedontheminorityside,the
slashingratioiscalculatedas:((1500)-(500))/(2000)=(.5)then
multipliedby(21days)togettheincreasedlock-uptime.
The200IQthatgeneratedthe200BPislockedupforanadditional10.5
days.Note:Themorecontentiousthevoting,thelessthepenaltyisfor
votingintheminority.
Identity,Reputation,andAccountHistoriesItispossibletoleverageupcomingon-chainidentificationandreputation
systemstoincorporateintothevalidationalgorithmandeditapproval
processsuchthatpreviousedithistoriesandidentitiesofeditorscanbe
measuredintheconsensusprocess.Suchidentitysystemscouldinclude
uPortornativeEOS.IOuserID/reputationsystems.Sinceeditproposals
(andtheirapproval/disapproval)arealreadystoredon-chain,thisuser
historycanbeincorporatedintonewupdatestothevalidationalgorithm
coupledwiththeidentification/credentialsoftheuser.
DelegatingVotesUserswhodonotwishtopersonallyvoteusingtheirBPcandelegatetheir
BPtoanotherentityor“pool”forconsensusvoting.Poolswillbeoperated
bythecommunityandvoteonbehalfoftheirusersaccordingto
transparentprinciplespublishedinaconstitution,wiki,orsimilar
document.ThiscouldformasecondarymarketforthepriceofBPifthere
issufficientdemandsimilartohowsecondarymarketsarelikelytoform
overEOS.IObandwidth,RAM,andstorage.
Buildingadelegatelayerontopofthebasevotingprotocolwouldallowa
markettoformoverarticlenarrativesas“thoughtleaders”pledgecuration
idealstheywouldfollowshouldtheybedelegatedvotes.Forexample,an
anti-censorshipstakingpoolcouldstatethattheywillvoteinfavorofany
editthatadequatelycitesitssourcesregardlessofthespecificsofthe
content.Userswhobelieveinthisvisionfortheencyclopedianetwork
coulddelegatetheirvotestothestakingpool.
StakingbyArticleorTopic
ItispossibletoexploreperarticleorpertopicstakingsuchthatstakingIQ
tokenstoaspecifiedsubsectionofthenetwork’scontentgivesthestaker
moreBPauthorityoversucharticle/topicbutonlyallowsthemtopartake
invotingforthatspecifiedarticle/topic.Thevalidationalgorithmwhich
computesBPvoteswouldneedtocheckforthetypeofstake(generalvs.
perarticle/topic)andweightthevoteaccordingly.Thisfeaturewouldallow
usersto“own”acertainjurisdictionalauthorityovercertaintopics
proportionaltotheirstakeinthatareaofthenetwork’scontent.
EOS.IOImplementationEOS.IOsoftwareisaTuring-completedistributedcomputingplatformand
smartcontractsysteminwhichblockproducersallocatebandwidth&
storageforlargescaledecentralizedapplicationsproportionaltothe
user/developerEOStokenbalance.[7]
<sub><sup>EOS.IOschematic:Blockproducersofthenetworkprovide
bandwidth,IPFSstorage,queryservices,servers,andgatewayinterfaces.
TheyareincentivizedtodothisthroughnewlymintedEOStokens,similar
tohowBitcoinminersareincentivizedtoprovideSHA256hashingservices
tothenetworkthroughBitcoinblockrewards.Users(clients)thenconnect
toservicesmadeavailablebyblockproducerssimilartousingclassical
internetservices.Sincetherearemultipleblockproducers,thereisa
distributedentrypointtoallsoftwareontheEOS.ionetworkunlike
classicalcentralizedwebapplications.img-source:EOS.IOretrievedfrom:
steemit.com</sub></sup>
Thisallowsforfeelesstransactionssinceaccountsareonlyrate-limited
basedontheirEOStokenbalance.ThemoreEOStokensanaccountholds,
themoreoftheirtransactionsanaccountcanexpecttobeincludedinthe
ledger.Thisgaslessprotocol(comparedtoEthereum)allowsforthe
buildingofrichdecentralizedconsumerapplications.
Additionally,theEOSprotocolhasaspecialprocessinwhichthe
communityvotestoallocateEOStokenstoupto3“communitybenefit
applications”thatdirectlybenefittheEOSnetwork.Animplementationof
theEveripediaNetworkonEOS.IOsoftwarewillplantoprovidemaximal
communityvalueandinnovationtobesuccessfullyconsideredforoneof
thesethreecovetedspots.[7]
EveripediaNetworkarticles(aswellastheirhistories)willbestoredusing
IPFSprotocolnodesincentivizedthroughEOSblockproducerrewards.
ThismeansthatEOSblockproducerswouldprovideIPFSretrievalof
articlestousersfreeofchargebutratelimitedbythebalanceofEOS
tokensheldbytheEveripediaNetworkEOSaccount.SinceEOSblock
producersareindependentnodeoperatorsontheEOSnetwork,anyblock
producercanretrieveEveripediaarticlestoarequestinguser.Inthis
sense,itwouldnotbepossibleforstatesorotherorganizationstoeasily
blockaccesstoEveripediaarticlesastheycandowithWikipediaby
blockingaccesstoacentralizedserveroraDNSrecordset(ie:thedomain
nameWikipedia.org).InordertoblockaccesstoEveripediaNetwork
content,actorswouldhavetopreventanyTCP/IPinteractionandpacket
exchangebetweenendusersandtheEOSmainnetentirelyasevenasingle
EOSblockproducercanprovideaccesstoEveripediacontent.Thistask,
whiletheoreticallyfeasible,issubstantiallymoredifficultthanblockinga
singledomainandismoreakintoattemptingtoshutdowntorrent
networksbygoingafterallindividualtorrentseeders-ataskthathas
consistentlyprovenimpossibleformanywell-fundedorganizationsand
stateactors.Additionally,itispossibleforcommunitymemberstohostany
setofarticlesfromtheirownprivateIPFSdaemonwhichlistensforedits
ofarticlesbyconnectingtotheEOSnetwork.Thismeansthatanyonewho
wishestohostarticles(orsomesubsetofarticles)candosofromany
locationorserverbyrunningtheirownIPFSnodeandlightEOSclient.
UndertheEOS.IOimplementation,anEveripedia“reader”isanyindividual
withaninternetconnectionthatcanaccesstheEOSmainnetwork.
ReadingandrequestingEveripediacontentisplannedtobefreetoallend
usersanddoesnotrequireanyIQtokenbalance.Conversely,anEveripedia
“user”isanyindividualwhopossessesafunctionalwallet(anEOS.IO
account)withavalidbalanceofIQtokenstoproposeedits.Userswillsign
alltheirtransactionswiththeassociatedprivatekeytodemonstrate
ownershipofavalidbalance.UsingtheEOS.IOaccountsystemallowsfor
variouswebstandardsandbenefitsthatarenotcurrentlyavailableon
otherblockchainssuchasaccountrecoveryandhumanreadable
usernames.Thiswouldessentiallycreateaseamlessuserexperience
similartousingawebapplicationwithclassicaluserandaccount
authentication.Additionally,itispossibletoleverageupcomingEOS.IO
identificationandreputationsystemstoincorporateintothevalidation
algorithmandeditapprovalprocesssuchthatpreviousedithistoriesand
identitiesofeditorscanbemeasuredintheconsensusprocess.
<sub><sup>Currentinternetcontentbusinessesarebasedonthemodel
ontheleft.Acompanyisformedwhichcreatesaserviceorplatformusing
rentedorboughtcentralizedserverhardware.Usersproducecontent
and/orusetheservice.Thebusinessownersextractvaluefromusers,
content-producers,andvaluecreatorsthroughadvertising,subscriptions,
andasmanymeansaspossibletopayforserverandbusinesscosts.The
profitsarethenaccruedforinvestorsandstockholders.Adistributed
autonomousplatform(right)usestokenvaluestorestoaligntheincentives
ofallparticipants(contentcreators,curators,bandwidth).Thereareno
centralstockholders,profit-takers,orrent-seekingbehaviorsinceall
participantsholdthesametypeofvaluestoreinthenetwork.All
participantsalsodirectlyworktowardmakingeachpartoftheservice
usefultoeachclassofparticipant.Img-sources(partiallyaltered):EOS.io
presentation.retrievedfrom:youtube.com</sub></sup>
DatabaseSchemaCollectivecollaborationrequiresagreednormsandstandards,especially
normsinhandlingthedatathatisstored,updated,andconsumed.
Bitcoin’sunspenttransactionoutput(UTXO)databasemodelisonly
effectivebecauseallnetworkparticipantsagreetokeepaccountvalues
storedinsuchastructure.Otherwise,thesamesecurityguaranteeswould
notbepossible.
The“databaseschema”refersthestructureofon-chainstorageinthe
EOS.IOblockchaininsideofthearticlemodule(theassociatedsmart
contract).ThedatabasefortheEveripediaNetworkwillbea2column
elementthatpertainstothecurrenthashofthearticlestate.Thesecond
elementistheimmediateprecedinghashofthepreviousstateofthe
articlewhichfunctionsasapointer.Thisallowsforatree-likestructureof
thehistoryofIPFShashesofthearticleandallowsquickqueryingofthe
EveripediaNetworkdatabasetofindthecurrentstateofanarticlein
relationtosomehistoricalsnapshot(aswellasanyforksormerges).This
issimilartoagitprotocoltreeofallpreviouscommitstoacodebase
excepttheworkdonetobecommittedisanencyclopediaarticleoredit.
Thisschemahastwotechnicalguaranteesthatmakeitidealfordistributed
ledgerstorage:1.Queryingforacompletestatetreeofanarticle
(thereforeshowingallprevioushistoricaledits).2.Easybranchingand
mergingofarticleswhilekeepingaunifiedhistoryofpreviousstates.
Anexampledatabaseof10rowsisshownbelow:
{
[QmPgLhaXAPYxx9isxGuxnBZA28WoUxhYsiRaPPbMKdvPAm,null],
[QmSRvE5W6WV4KGRwhttumnamJgGGyiaAGYLEaubRgRreP2,
QmPgLhaXAPYxx9isxGuxnBZA28WoUxhYsiRaPPbMKdvPAm]
[QmcmBixvVnzrswZ24BbzjbrkTvi4ZMbxZcZpfqjzkxmLYA,null]
[QmeAv3LJo4Kre6dR7GQBqjJFztY9YWZD131W5tYGStUcbM,null],
[QmXvHQCbvxp3vQm96VmZDBaTX8Aae6vVcoTvVB6QQsMXnM,
QmeAv3LJo4Kre6dR7GQBqjJFztY9YWZD131W5tYGStUcbM],
[QmYP7vvmy1MX7x6QDazd8opK4KB2NuhiLGbwBQWgxR552q,
QmXvHQCbvxp3vQm96VmZDBaTX8Aae6vVcoTvVB6QQsMXnM]
[QmXoypizjW3WknFiJnKLwHCnL72vedxjQkDDP1mXWo6uco,null],
[QmcHn96sJBZY4QaGeDh6vVBDznygqbVCgh7bwHbskxcoaY,
QmeAv3LJo4Kre6dR7GQBqjJFztY9YWZD131W5tYGStUcbM]
[QmbtygxuXiQDYn1BWDjsJtHUVYuFzUUV6fdJZg8AL4axVB,
QmSRvE5W6WV4KGRwhttumnamJgGGyiaAGYLEaubRgRreP2]
[QmYP7vvmy1MX7x6QDazd8opK4KB2NuhiLGbwBQWgxR552q,
QmcHn96sJBZY4QaGeDh6vVBDznygqbVCgh7bwHbskxcoaY]
}
Thefirstelementineachtuplemarkssomecurrentstate,whilethesecond
elementreferstothepreviousarticlestate.Ifthesecondelementisnull,
thismeansthatthearticlestatehasnopreviousstate(meaningthearticle
wasjustcreated).Intheexampleabove,rows1,3,4,and7depictthe
creationofanewarticlewithnopreviousstate.Row2simplyshowsthe
articleinlineonebeingedited.Row9showsthearticlestateinrow2
beingedited(nowwith3totaleditsinitshistory)
Line5and8demonstrateanarticleofthesamestateforkingintotwo
differentstates(perhapseditedbytwodifferentcommunitiesortelling
differentnarrativesofthesametopic).Bothline5and8sharetheprevious
stateofanarticlecreatedonrow4.Row6showsthearticlein5being
editedfurtherbuttheforkedoffarticleinrow8clearlyignoresthechange
becauserow9depictsaneditmadetotheforkedarticle.Row10shows
theoriginalforkedarticleinrow8beingmergedbackintothearticlethat
itforkedfrom.Thetwoforkedarticlesarenowmergedintooneagain
(perhapsduetoaneditproposalandcommunityagreement).
Whiletheabovestructurehasmanyadvantages,ithasseveralissuesthat
shouldbedirectlyaddressed.Forexample,concurrenteditproposalscan
potentiallycauseissues.Ifoneindividualproposesanedittoanarticleand
submitsaneditobject,thenbeforethatobjectisfinalizedthrough
consensus,anothereditobjectreferencingthesameparenthash
essentiallycreatesanunintendedforkofthearticle.Apotentialwayto
resolvethisissuewouldbetoonlyallowonependingeditproposal
referencingthesameparenthashatatimeinthequeueofpendingedits.
<sub><sup>Visualschematicoftheabovedatabaseschemashowing4
distinctarticles:“UniversityofCalifornia,LosAngeles,”“TravisMoore,”
“QajarDynasty,”and“BarackObama.”Eacharticleishashed.Thefirstedit
ofanarticle(articlecreation)pointstoanullparenthash.Subsequent
editscreatenewcontentandhenceanewhashandpointtothearticle’s
immediatepreviousstate.Thisformsatreewhichmakesthearticle
history.</sub></sup>
ArticleDataStructureArticleswillbestoredasHTMLfiles.ThisisbecauseusingtheHTML
documentobjectmodelallowsforhighcompatibilityofpossiblefrontend
combinationsforthedatawhichisretrievedfromthenetwork.Byusing
HTML,anydevelopercancreateafrontendtodisplayarticlesin
customizedmanners,submitedits,andanalyzedatainsidethedocument.
DesignatedHTMLclassattributeswillbeusedtomarkspecificportionsof
articlessothatallfrontendsoftwarecaneasilydetectstandardsectionsof
anarticle.Suchclassescouldinclude“infobox,”“citation,”or“title.”A
datastructurestandardshouldbedecidedonbycommunitymembersand
earlyadoptersofthetechnologywhichshouldincludelinkingschemesand
hyperlinkrules(suchaswhetheronlyinternallinkstothedatabasecanbe
embeddedinarticlesetc).Althoughthestandardscan,intheory,be
changedwithagovernancevote,practicalapplicationofsuchadata-
structurechangeishighlycumbersomeassomechangesarenot
backwardscompatibleandwouldneedtoberetroactivelyappliedtoall
olderarticleswithinthenetwork.
Finally,withintheHTMLfile,therewillbeonedesignatedJSON-LDclass
forlinkeddatatotheobjecttopicofthearticle.Thisallowseasy
retrievabilityofkey-valuedescriptorsfromanyarticleusingAPIendpoints
andallowsbotstoaddinformationeasilytotheJSON-LDclass.JSON-LDis
usedtobuildrichgraphrelationshipsbetweenobjectsandiscurrently
usedinwebpagestodescribesemanticrelationshipsbetweenthe
webpage’stopicandcontent.Havingarobustdataclassforbuildingrich
graphrelationshipsbetweentopicswithinthearticlehelpscreateameta-
networklayerwhichcanbequeriedforrichdatabymachines,services,
andartificialintelligencetraining.
<sub><sup>EacharticleisanHTMLfilethatcanbeservedfromIPFS
nodesorEOS.IOstorageacrossmanyjurisdictionsandparticipants.CSS
andstylingisappliedonthefrontendUXlayerandcanbecustomizedby
websiteownersthatservethecontentandcompetewithotherfrontend
services.Thearticlecontent,metadata,andclassobjectsareeditedby
networkparticipantsandrequiretokenholderconsensus.</sub></sup>
BlockchainAgnosticismThiswhitepaperdiscussestheimplementationoftheEveripediaNetwork
usingEOS.IOsoftware.Itisentirelypossibleforthethreemodules
discussedabovetobebuiltandimplementedusingdifferentdistributed
ledgertechnologywhilepreservingthefundamentalsubstanceandutility
proposed.Additionally,itisentirelypossibletobuildthethreemodules
usingdifferentdistributedledgertechnologywhichinteractthroughcross-
blockchaintransfersofvalueanddata.Oneexampleofsuchan
implementationwouldbebuildinganentireblockchaininaproofofstake
systemusingtheEthereumPlasmaFramework.IQwouldactasthe
stakingtokenforproductionandpropositionofblocks.[5][6]Another
exampleofcross-chainimplementationcouldbebuildingthegovernance
moduleusingtheupcomingTezosnetworksinceTezossoftwareisbundled
withsophisticatedself-governancefeaturestobeusedforitsownnetwork
rule-making.Additionally,thestorageofarticleblobsthroughIPFSnodes
canbeincentivizedusingdifferentimplementations,suchasFilecoin,in
additiontoEOS.IOStorage(likediscussedabove).
Wikipediastartedwith1990sserverhardwareandarchitecturebut
upgradedtocachinginfrastructureandstateoftheartdatacenters.The
EveripediaNetworkisalongtermself-sustainableprojectthathasthegoal
ofcreatingthefirstglobaldecentralizedknowledgebase.Giventhatgoal,
thenetworkshouldspecificallyusetechnologythathaslongtermpotential
anddevelopersshouldkeepopenmindstowardsfuturescalingsolutions.
Thisallowsnetworkdevelopersandmaintainerstomakebetsonwhatwill
bevaluableblockchaintechnologytodayandintheforeseeablefuture,but
allowsbuildinganexpandableandplatformagnosticnetworkwhichcan
usemultiplebreakthroughtechnologiestofunctionefficiently.
Bounties,Services,Bots,Private
Edits,Marketplaces,andNetworkDevelopmentTheEveripediaNetworkisalight-protocol,meaningthatitisagnosticto
featuresandservicesbuiltonitsunderlyinginfrastructure.Forthisreason,
thenetworkdoesnotcomedirectlybundledwithserviceshard-codedsuch
asclassicaladvertisingorsubscriptions.Instead,thenetworkimposesa
nominaltransactionfeeonalltokeninteractionswhichisburnt
(governancebasedtransactionsandmessagesdonotaccrueafee).This
createsabaselayerforanecosystemofservices,bounty/freelancework,
andmarketplacesforcitationverificationservicesandothernoveluses.In
thisway,theEveripediaNetworkcouldsupportestablishedmedia
organizationssuchastheWikimediaFoundation(Wikipedia),CNN,and
NYTimestakingpartintheeditingandverificationprocessbycreating
theirownservicesandorganizationaccountsonthenetwork.Thisineffect
createsanecosystemwhereparticipantsarenotonlyencouragedtocreate
themostreliablecontentbutalsoencouragedtocreatethebesttoolsand
servicesforthecreationofcontent.Thisalsocreatesalargevolumeof
transactionswhichsuppliessizabletransactionfeeswhichareburnt.
Additionally,infutureupdates,itwouldbepossibletousezeroknowledge
succinctnon-interactiveargumentofknowledgeproofs(zk-SNARKs)to
publishstatechangestoarticleswithcompleteprivacy.Thishasatwofold
effect:1.)Individualscanproposecontentwithoutbeingpubliclyidentified
intheledger.2.)Curatorscanvotefororagainsttheproposalwithout
beingpubliclyidentifiedintheledger.Implementationofzk-SNARKs(or
otherzeroknowledgeproofs)wouldbedoneinthesamewaythatprivate
transactionproofsareperformedinz.cashandlikelytobeimplementedin
Ethereum.[8]Toproperlyusesuchtechnology,thebaseblockchainused
forthenetworkwouldlikelyneedtosupportzeroknowledgeproofsin
somecapacitysothatentireSNARKimplementationsdonothavetobe
“hand-rolled”bytheEveripediaNetwork’scontractcodeitself.
ConclusionTheEveripedianetworkusesIQtokens,whichtrackthestakesofusers
andactasincentiverewardsforcontentcreatorsandcurators.The
networkusesathreemodulesystem(token,governance,andarticle)to
createaself-sustainingdatabaseofencyclopediaarticles.Thestructureof
contentisuniformandstandardizedsothatitiseasilyanalyzed,
consumable,andimproveduponbyservices,front-endwebsites,AI,and
bots.Thedatabaseschemaallowsallthetechnicalguaranteesofpriorwiki
software(suchashistoricalsnapshotofallarticlestates)aswellasnew
functionsnotpossiblebefore(suchasdistributed,real-timehostingand
scalableforking&mergingofarticles)
Innovationintheencyclopediaindustryhasstagnatedinthepast10years.
Creatingasynchronized,collaborativeencyclopediadatabaseaccessibleby
allapplicationsontheinternetwillgeneratethenetworkeffectsrequired
tore-ignitegrowthandinnovationinthedocumentingofknowledge.
References[1]PageViewsforWikipedia,Bothsites,Normalized.(2005).Retrieved
Oct.&nov.,2017,from
https://stats.wikimedia.org/EN/TablesPageViewsMonthlyCombined.htm
[2]Matei,S.A.,&Britt,B.C.(2017).AnalyticInvestigationofaStructural
DifferentiationModelforSocialMediaProductionGroups.LectureNotes
inSocialNetworksStructuralDifferentiationinSocialMedia,69-84.
doi:10.1007/978-3-319-64425-7_5
[3]Denning,P.,Horning,J.,Parnas,D.,&Weinstein,L.(2005).Wikipedia
risks.CommunicationsoftheACM,48(12),152.
doi:10.1145/1101779.1101804
[4]BlockchainInvesting-OlafCarlson-WeeandAaronHarris(25:01).
(2017,July19).RetrievedAugust10,2017,from
https://www.youtube.com/watch?
v=9SYVX2wcMVM&feature=youtu.be&t=25m1s
[5]Buterin,V.,&Poon,J.(2017,August11).Plasma:ScalableAutonomous
SmartContracts.RetrievedAugust12,2017,from
http://plasma.io/plasma.pdf
[6]Poon,J.(2017,June17).OmiseGO:DecentralizedExchangeand
PaymentsPlatform.RetrievedJuly3,2017,from
https://cdn.omise.co/omg/whitepaper.pdf
[7]Larimer,D.,(Bytemaster),&Lavin,J.,(hkshwa).(2017,June3).EOS.IO
TechnicalWhitePaper.RetrievedJune11,2017,from
https://github.com/EOSIO/Documentation/wiki/Whitepaper-Test
[8]Buterin,V.(2017,November9).STARKs,PartI:Proofswith
Polynomials.RetrievedNovember10,2017,from
http://vitalik.ca/general/2017/11/09/starks_part_1.html
[9]LarimerD.,ScottN.,ZavgorodnevV.,JohnsonB.,CalfeeJ.,Vandeberg
M.Steem:Anincentivized,blockchain-basedsocialmediaplatform.March
2016.RetrievedJanuary7th,2018from
https://github.com/steemit/whitepaper/commit/da16f36bf23bc53d30b57787d7b9044d9c07399c