Reading:
MOU with Certik & Argos, Turn necessary consensus-critical constant into argument, etc.
Image

MOU with Certik & Argos, Turn necessary consensus-critical constant into argument, etc.

by Rooney
2020-07-20

Monthly Report June 2020

DEVELOPMENT

We have been hard at work in June not only been making advancements with the AGORA codebase but also with an entirely new project called Stoa. Stoa will act as the gateway to AGORA for developers and other third party service providers. We will make sure to keep everyone up to day on all the latest Stoa developments as we progress with this new project. Additionally, we have successfully completed the initial phase of Quorum Balancing development. AGORA now has the ability to output a single quorum using the newly implemented Quorum Balancing Shell, more can be learned about this down below. The following is a summary of last months development activity and items that are currently still under development:

Core Development in June:

Monthly Activity:
Last month we had 82 pull-requests and 30 active issues. Of which:

  • 3 pull request proposed
  • 82 pull requests merged
  • 7 new issues
  • 23 issues closed

Functionality Developed:

Turn necessary consensus-critical constant into argument #894

This feature was developed by both Jay and Mathias during the first part of June. At the moment, we have issues with consensus constants being constant and accessed through the code source. E.g. We have the various genesis values, but also the cycle length.

The problem with such constants is that they might need to be modified to ensure things work correctly at a low cost. E.g. our cycles are 1008 blocks at the moment, which is expensive to generate in a test. Being able to reduce this to a few blocks would make things more scalable.

There are three approaches we can think of:

Having them with version => This is what we’re doing currently. It works well when one does not need to change the values, or when there’s a “common default”. E.g. We have a common genesis block for all unittests. However it creates problems for integration testing as we would need a special build.

Having them globally selected with a runtime parameter. This is what we started to do with the genesis block, e.g. #712 but it also creates some issues, e.g. #813. This issue recently showed again with ‘ValidatorCycle’.

Having a global context that is passed around. This would be similar to the idea of “Consensus params” in the BTC implementation: https://github.com/bitcoin/bitcoin/blob/master/src/consensus/params.h but might lead to a lot of context being passed around if overused.

Please refer to the Github link below for more information:
https://github.com/bpfkorea/agora/issues/894

Constraints of Genesis Block (Block with height 0 also needs to be verified) #747

This feature was developed by Henry during the first part of June. This issue was actually a bug fix related to the genesis block. In order for this to function properly the following code had to be implemented to ensure that the first block equals the genesis block.

// special case for the genesis block
if (block.header.height == 0)
return block == GenesisBlock ?
null : “Block: Height 0 but not Genesis block”;

This will also assume that the definition of ‘GenesisBlock’ is correct. It should verify all the rules we have in place: merkle root, transaction limit, etc..

Please refer to the Github link below for more information:
https://github.com/bpfkorea/agora/issues/747

Integrate the ability to restart a node into TestAPIManager #906

This feature was developed by Mathias during the first part of June. Our intent with this was to be able to restart nodes to test things like catchup and correct validator behavior, e.g. #893 & #798

Localrest has had this ability since pull request #71 However, integrating it in Agora is more than just calling the function, as we need to properly shut down the node (passing it to the same delegate as TestAPIManager.shutdown) and then restart it.

Please refer to the Github link below for more information:
https://github.com/bpfkorea/agora/issues/906

Implement shell quorum balancing #785

This feature was developed by Andrej during the first part of June. Our best approach to the quorum balancing issue #240 is to start with a “shell” algorithm which will simply output a single quorum.

Definition of done:

  • There is no user-visible quorum configuration;
  • The quorum configuration is derived from the state of the chain;
  • The output of the shell QB algorithm is a single quorum with all enrolled validators;

Please refer to the Github link below for more information:
https://github.com/bpfkorea/agora/issues/785

Implement shell API server with `/push`, `/validators` and `/validators/{address}` endpoints (Stoa API Server) #9

This feature was developed by both Michael and Henry during the last part of June. This piece of work was related to a new project that we just kicked off called Stoa. Stoa os an API that will allow users to interact with Agora without having to worry about the nitty-gritty details. For comparison Stoa can be compared to Stellar’s Horizon or Ethereum’s Infura. Just as a Stoa acted as an entryway to the Agora in ancient Greece, the Stoa API will act as an entry point for any third-party service provider to the Agora network.

Add Enrollments to the hardcoded genesis blocks #907

This feature was developed by both Michael and Mathias during the last part of June.This issue depended on the completion of #821. Our genesis blocks need to have Enrollments in themselves in order to be valid and usable. Currently, the lack of Enrollment means we had to come up with a unique workaround for our tests. On a side note, issues such as #822 ended up being slowed down by this.

Node stakes are taken into account when forming quorums #963

This feature was developed by Andrej during the last part of June. Now that #785 has been implemented, we began to take the node’s stakes into account. Nodes that have a higher amount of staked should have a greater chance of being included in a node’s quorum. This functionality implementation is just a series of many smaller issues related to quorum balancing.

Should not accept a block with no enrollments if the validator set will become empty #822

This feature was developed by Michael during the last part of June.

Consider this example case:

  • Genesis block begins with 2 validators
  • Their expiration block is at height 1008
  • Block height 1008 is reached, and the validators are now expired.

Now that the blockchain has permanently halted. Block 1009 will never be created because there are no active validators that can reach consensus and sign a new block. Re-enrolling is not possible at this point either, because enrollments need to be written to a block to be considered active.

We need to come up with some kind of rule. For example, if all of the validators are about to expire, then do not create a block unless there are new enrollments in the block.

Additionally, we may want to make another protocol rule: Do not allow less than X validators to be enrolled at all times. For example: If there are only 2 enrolled validators left in the validator set and those two validators go permanently offline (or lose their key, etc), the blockchain permanently halts.

Ongoing Validator Development:

MARKETING

Signed MOU with Certik

BOSAGORA has partnered with Certik, a global market leader in blockchain security and technology verification. The most important thing for BOSAGORA, a proof-of-stake blockchain, is the security of token holder assets. Overcoming security vulnerabilities is the most important, as the 51% attack that is most deadly on the proof-of-stake blockchain is related to the value of staking and frozen coins. Therefore, the BOSAGORA team will do its best to create a secure blockchain, and will create a more stable blockchain system with Certik, which has advanced blockchain security and verification technology.

See full contents: https://medium.com/bosagora/mou-with-certik-45d45874d2c3

Signed MOU with Argos

BOSAGORA has signed an MOU with Argos, one of Asia’s leading KYC and AML service providers. Non-face-to-face authentication, a core competency of Argos, is a very important factor in the blockchain system of the new normal era, and effective and comprehensive AML service is a key requirement to gain an edge in a changing regulatory environment.

With these two technologies, BOSAGORA will work with Argos to become a healthy cryptocurrency project that meets the legal requirements of governmental policy and industry regulation and finds more use cases.

See full contents: https://medium.com/bosagora/mou-with-argos-73a3e49d01b2

Bitboy x Boa Quiz

Every month, we held a quiz event using BOSAGORA contents by Bitboy to promote his Youtube content far and wide which includes useful contents related to BOSAGORA. With this quiz event, the community could reaffirm positive information about BOSAGORA, and potential holders worldwide came across BOSAGORA and recognized its high potential. It also benefitted Bitboy toexposure of his contents and the number of subscribers increased.

Quiz event winners and their comments

World Oceans Day Sticker Set Campaign

Last June 8th was World Oceans Day designated by the UN. BOSAGORA, which aims to make a ‘better world’ also participated in by holding a campaign creating stickers considering marine environment and animals with the community. Many people from all over the world participated in the campaign, and among them, we selected and rewarded the work that best represented the message they wished to convey. By doing so, we could expand the bond of sympathy with the community about protecting the environment.

Sticker Event Winner

‘Do you know BOA?’ event

Last month, we held ‘Do You Know BOA?’ Event to select global ambassador communities that voluntarily share the contents of BOSAGORA and to make BOSAGORA more widely known to them. The event promoted BOSAGORA to tens of thousands of communities in Russia, Spain, Japan, Turkey, and Southeast Asia, and a wider variety of members joined the community.

Below shows the country-specific community that participated in the event.

Ambassador by language

🇹🇷Turkish Community: bountyhive.io
🇯🇵Japanese Community: https://t.me/kamigroupni
🇷🇺Russian Community: https://t.me/satoshi_club_ru
🇪🇸Spanish Community: https://t.me/satoshi_club_spanish
🌏Southeast Asian Community: https://t.me/nanochatroom

Celebrating community members reaching 2K

The number of BOSAGORA community members finally reached 2,000(2,316 as of July 6). Despite COVID19 rampantly broke out across the world in the first half of this year, the Foundation established BOSAGORA and continued marketing activities and reached the milestone of having 2K members. BOSAGORA will further devote itself to fulfilling the community’s faith and expectations for the project. Below are the messages from the community celebrating BOSAGORA’s breakthrough of having 2,000 members.

WorkfromAnywhere Campaign

Now is the era of non-face-to-face due to COVID19. We launched the ‘Workfromanywhere’ campaign in line with the social change where remote working is spreading. Anyone in the community can work anywhere at home, cafe, resort, etc., thanks to the development of technology. If you send us a photo of your working in the most unexpected or wonderful place, not in the office, we will reward you by drawing. BOSAGORA will continue striving to become a project that can respond flexibly to changes and communicate with the community even in difficult times.

Crypto TV published a content introducing BOSAGORA

After the bitboy, the famous crypto Youtuber in the United States, another new crypto Youtuber in the United States introduced the BOSAGORA project. Since the release of a video that guides the history of the project from the beginning to the present and the key points that BOSAGORA aims for, we received positive feedback on BOSAGORA.

See full crypto TV contents: https://www.youtube.com/watch?v=Qq40ibyxTZg

Bitboy, BOSAGORA contents for June

BOSAGORA continues to be exposed to the global market through Bitboy, who is growing as a global top crypto Youtuber. The theme for June’s content is ‘Next De-Fi’ briefing the trends and coins leading the cryptocurrency market from the past to the present, and explained features and potential of BOSAGORA while outlining the niche market that will replace De-Fi in the crypto industry.

See full contents of Bitboy: https://www.youtube.com/watch?reload=9&v=NQ4hi0ZafBE

BOSAGORA Technology & Trend Column, Tech Trends

Tech Trends is a column of. OSAGORA that takes a look at the technology and trends of the blockchain industry. In June, a total of 2 episodes, #5 and #6 were published. Please check the link for details.

#5 Cutting Out Inflation: How Token Burning Models Support Asset Values
Eng: https://bit.ly/2O1THeA
Kor: https://bit.ly/2Z04egI

#6 Why SCP is the future of blockchain protocol
Eng: https://bit.ly/2BDImOU
Kor: https://bit.ly/2VcvkyO

Paxnet News, BOSAGORA

Paxnet News starts publishing article series named ‘ICO retrospective’ of which the first article is ‘Korea’s №1 ICO BOSAGORA ready for another leap forward’. It outlines the events from theestablishment of BPF, the birth of BOSAGORA to the present, along the direction the project pursues.

See full article: https://paxnetnews.com/articles/61183

Please join our communication channels as follows!

Website(Kor): https://bosagora.io/ko
Website(Eng): https://bosagora.io
Telegram(Kor): https://t.me/bpf_korea
Telegram(Eng): https://t.me/bpf_eng
BOSAGORA Official Announcement: https://t.me/boa_announcement
Medium: medium.com/bosagora
Twitter: https://twitter.com/BOSAGORA1
Reddit: https://www.reddit.com/r/BOSAGORA_BOA/
Facebook: https://www.facebook.com/BOSAGORA/
Linkedin: https://www.linkedin.com/company/bpf-korea/
Youtube: http://bit.ly/2YFpd5r
Github: https://github.com/bpfkorea

BOSAGORA TEAM


0 Comments

Leave a Reply

Related Stories

Arrow-up