Jurisdictional Agility in BEOS

in #beos5 years ago (edited)

As some of our readers may remember, BlockTrades was contracted by Terradacs to develop the BitShares EOS (BEOS) blockchain. BEOS is a fork of EOS that is focused on business applications and is closely aligned with the BitShares distributed trading blockchain (for those not familiar with BitShares, it could be called the parent of both Steem and EOS, since they both evolved from the BitShares code base). Today I wanted to share some info about one of the upcoming features we’re adding to BEOS that is near to completion: jurisdictional agility.

What is jurisdictional agility?

Jurisdictional agility is the ability to specify “where” you want your blockchain transactions to take place. In existing blockchains, your transaction is usually processed by a random block producer with a server in an unknown location. This adds uncertainty to the basic questions of “where did my transaction take place?” and more importantly, “what legal code applies to my transaction?”.

How is jurisdictional agility being implemented in BEOS?

In BEOS, block producers can publish the regions in which they are located, and users can specify one or more optional jurisdictional regions in which their transaction is to be processed. When a user specifies a jurisdiction for a transaction, that transaction will be delayed until it can be processed by a block producer in one of the regions specified.

To account for the increased potential delay this causes, the expiration time for a transaction with a jurisdiction requirement is automatically increased from the standard 30s expiration time to 200s. If there is currently no block producer producing in one of the requested regions, the transaction will expire and fail after 200s.

How does jurisdictional agility benefit business transactions?

By allowing users to specify where their transactions are processed, BEOS users can gain more legal certainty as to the laws that govern their transactions. This is very similar to the way businesses specify the governing legal jurisdiction in a typical written contract. This can be very important when disputes arise over a payment, for example. Arguments about what region has jurisdiction over a transaction can also be expensive, so the additional clarity provided by a jurisdictionally-aware blockchain can benefit all parties concerned, as it avoids wasteful legal wrangling.

Example using the Greymass wallet to pick a jurisdiction for a transaction

We contributed several changes to the open source Greymass wallet to support selecting jurisdictions for BEOS transactions. Below are screenshots of these changes.

Block producer view showing Block Producer in Portugal

Buy RAM dialog with option to specify jurisdiction where purchase takes place

Clipboard - 13 sierpnia 2019 16_40.png

Dialog for selecting allowable jurisdictions for a transaction

Transaction history showing where transaction was processed (Denmark in this case)

Clipboard - 13 sierpnia 2019 16_38.png
Note that in this case, the UI displays both the requested jurisdictions and the actual jurisdiction where the transaction occurs. This can be important in the case where a user has specified multiple allowable jurisdictions and it later becomes a question of which jurisdiction was ultimately selected.

When Jurisdictional Agility?

We plan to rollout jurisdictional agility for BEOS in the next week or two. The blockchain updates and the associated UI changes are currently undergoing final testing. I'll make another post for those interested in the technical details (i.e. blockchain API calls) at that time.

Sort:  

Just wondering: is it possible to choose between Hong Kong and mainland China? That could make a difference for some users, I think.

Yes, the system allows for users to define any jurisdiction desired. For example, a user could add a jurisdiction for a particular state in a country, as well as the country itself.

Does anything guarantee that the block producer is within (or otherwise subject to) that jurisdiction―or is it merely a declaration? If the latter, can the declaration change at any time?

There's no guarantee, a block producer could publish a false declaration, but this is the kind of behavior that will likely get them voted out as a block producer.

They can also optionally publish GPS coordinates, which is particularly useful for block producers on mobile platforms that are moving between multiple jurisdictions.

This looks like a potentially major design flaw.

Not really, it's no different from any similar situation in the real world. When you lease a server in the cloud, you "trust" that the server company is telling you the truth about where the server is located. And if they lie about it and you suffer harm as a result, there are legal remedies available.

It's unfortunate that this is even needed. Such is the world we live in though I guess. With your guy's coding abilities and general stake in Steem, do you have any plans to build some cool stuff on/for steem? Without being contracted I mean?

We've been developing code for Steem off-and-on for years now, and I'm sure we'll do more in the future.

Wonder if can be used for tax implications?

It impacts commercial law and a lot of commercial law impacts tax law, so I think that it's very likely that there could be differing tax implications under some conditions, but tax laws vary so widely across the world it's hard to make too many generalizable conclusions.

wow thats huge news and updates

You guys did that? Man, even more respect. You guys have been amazing in the crypto world that I hover around(mainly the Dan Larimer stuff).

Will be interested to read the impact this has on a future transaction that may find its way into a US courtroom. I would guess the protection will stop many transactions from ever going to trial. Well Done

Great work @blocktrades for developing jurisdictional agility for EOSIO ecosystem and in particular BEOS. Question: Since Greymass lastly announce they are rebranding their product as "Anchor Wallet" with new features, Do you think BEOS wallet will be a stand alone product or can it be integrated into Anchor or other EOSIO Wallet? Thks

AFAIK, the plan is to continue working with greymass guys and I don't think the rebranding will have any impact on our working relationship.

I don't anticipate it impacting anything either, we'll happy try to merge this stuff upstream into the rebrand as we keep getting closer and closer to release :)

Great development @blocktrades. I really appreciate this.

Are there block producers in the West African region?😟

This technology isn't yet released, this is a preview. After it's released in a week or so, I expect there will be people campaigning in various regions to be elected as block producers (a lot of people have expressed interest).

Thanks for the update Dan.

It is great to see things progressing so quickly. I am glad I got in on this one early. I am amazed you have the jurisdictional agility ready to go so soon.

That means the service can be marketed out. The problem, in the short term, as I see it is not having enough locations verifying transactions to be able to service those requests.

A bunch of people have expressed strong interest in being a block producer in various regions, so I don't think it will take long to get nodes up in plenty of regions after the upgrade.

Great development!

You are truly amazing.

What a great idea !

Highly rEsteemed!

200.gif

Absolutely fantastic Dan.

It’s absolutely grateful to read an update about BEOS, great job.

nice one blocktrades, I think this will be more secure in doing transaction.

Posted using Partiko Android

Good explain @blocktrades

Posted using Partiko iOS

Congratulations @blocktrades!
Your post was mentioned in the Steem Hit Parade in the following category:

  • Pending payout - Ranked 8 with $ 64,57

This is so fantastic! Choose who you want to be your ruler(s)... LOL!

My choice is, NOTA... (None Of The Above)...

Is there someplace where I can see the exhaustive drop-down list? If I load the latest wallet will I be able to see that?

😄😇😄

@creatr

NOTA = International waters or international space

Understood!

But thank you, @stan, for making it explicit here for everyone else reading... :D

Postscript:

Please note, @stan, @onceuponatime, and @michaelx ...

May I very respectfully suggest an alternate term? A term other than "international," which unfortunately may suffer from some degree of ambiguity?

How about "extra-national," or perhaps "extra-territorial?"

I would like it to be explicitly clear, and well defined semantically and legally, that these extra-territorial jurisdictions (e.g. outer space and "international" waters) are unequivocally NOT under the purview of ANY self-styled nation OR ANY self-styled "united" nations or group(s) of nations, which the word "international" might by some arguments be coerced to describe.

@blocktrades ............Any discord server where I can ask questions?

I'm not very active on any discord server.

If it's a question about our service, it's best to ask on our support email (support at blocktrades.us). If it's a question about BEOS, there's a telegram group: https://web.telegram.org/#/im?p=@officialbeos

Congratulations @blocktrades! You have completed the following achievement on the Steem blockchain and have been rewarded with new badge(s) :

You received more than 80000 as payout for your posts. Your next target is to reach a total payout of 90000

You can view your badges on your Steem Board and compare to others on the Steem Ranking
If you no longer want to receive notifications, reply to this comment with the word STOP

Vote for @Steemitboard as a witness to get one more award and increased upvotes!

1,2,3, gute Laune
hab ich jetzt was gewonnen

I've sent 35.1 steems to you to purchase delegated steem power. And it is yet to reflect on my wallet. How much time will it take for you to delegate that? One more query is that couple months back you were giving more delegated SPs per steem than now. Why have you brought that level down to current bottom(now 9.27 SPs for 1 steem)?