15 February 2021
J
22:44
Josh
veo is still pretty cheap
B
23:52
Ben
i would say veo price is pretty much reflecting where we are currently
23:52
if the dex thing gets streamlined and get an nice interface price might surge
23:53
but looks like veo is loosing the adoption race again
s
23:54
sanket
In reply to this message
Are you twitter?
You surely have really good grip of veo and other things. You should share it to a larger audience
16 February 2021
J
02:09
Josh
Guys, stop telling other people what they should do. Anybody can put a bet on Amoveo, build a nicely styled light node, write blog posts about how awesome Amoveo is.
AK
02:29
A K
If one of either Alice or Bob has more need to access their bitcoin sooner, they can end up needing to pay a 50% or bigger premium to the other to withdraw their Bitcoin sooner.
02:30
Bisq in fact has mediators, who can not release funds from multisig, but who can compensate Alice / Bob from the insurance fund
JS
03:57
Jon Snow
In reply to this message
I wonder if anyone in the community is actually currently working on it.
Gavin Confait invited Gavin Confait
EA
06:06
Eric Arsenault
In reply to this message
I’m not sure what you mean. There are no cross chain DExs yet really
Festina Lente invited Festina Lente
JS
07:24
Jon Snow
In reply to this message
It is a quite exciting product market fit for Amoveo actually
B
14:10
Ben
In reply to this message
that might be true but there are a lot of concepts that provide a close to that technology to the user.
x
14:12
x
i like prediction market more as usecase
J
17:23
Josh
We need futarchy more than ever
17:23
All of politics is doing something stupid then making up a back story of why it worked.
mx
20:23
mr x
And with hash rate we can get rid of the problem of measuring success
J
21:11
Josh
The one unforgeable thing.
21:12
Salvation from Goodhart's law?
mx
21:19
mr x
Yes!
21:20
Finally
21:20
And money printing as the form of taking action
21:27
Futarchy asking whats the hashrate gonna be in future if we print money to this address compared to not printing. Everything onchain automated.
21:30
That's sufficient for blockchain to become person in it's own right.
Coyle invited Coyle
J
21:57
Josh
Frankencopter
mx
22:53
mr x
It's truly alive in strong sense.
J
23:02
Josh
It's strange that we need to find pure forms of entropy creation as our purest source of value. Everything we care about is fighting to reduce local entropy and here were are expanding local entropy as much as possible. Since reducing entropy has the most value to us, we can only prove value in a true way by collapsing to entropy.
Z
23:41
Zack
In reply to this message
Reducing local entropy as efficiently as possible seems to be the same thing as increasing global entropy as efficiently as possible.
I don't know about you, but I am in a room that does not contain any active PoW mining hardware.
J
23:50
Josh
Hehe true.
23:51
This is pretty interesting on a philosophical level
17 February 2021
MF
03:21
Mr Flintstone
while zack works on some updates to the dex that will make it easier to use, there is now a telegram channel for dex quotes only which should make it easier to buy veo

https://t.me/joinchat/Hf0n-acs4mcSVHdw
03:22
it also has instructions for using the dex
EA
03:38
Eric Arsenault
🔥
03:38
where are instructions?
J
04:04
Josh
Hmm, you might have to pin that @mr_flintstone
EA
04:07
Eric Arsenault
maybe also change to supergroup so we can see history
MF
04:12
Mr Flintstone
not sure why it wont let me pin
04:18
ok should work now
EA
04:20
Eric Arsenault
nice
04:21
we should probably just make a /dex page on http://159.89.87.58:8080/
04:21
with less info
04:23
Nice work putting this together Mr.F
MF
04:51
Mr Flintstone
In reply to this message
better prices than qtrade
EA
05:14
Eric Arsenault
05:14
feel free to leave comments in there
paypol invited paypol
EA
11:20
Eric Arsenault
In reply to this message
I was thinking about this. I’m not sure it is correct to say that “These fees and costs caused by insecure voting mechanisms mean that Thorchain will either be so much more expensive than the alternatives, that it wont be used. “ because fees are paid out in their native token, so the cost to users remains low.
11:20
(Might be wrong here)
11:22
One of the challenges we will need to face is getting a lot of liquidity. How can we bootstrap this?
B
12:50
Ben
In on these platforms like uniswap providing liquidity gives you benefits
s
13:18
sanket
In reply to this message
This is great. You can even add Overline (block collider) to competitors
13:22
I love the example you gave of BTC-xmr. Because that's one of the biggest cross-chain swaps in terms of people wlling to try it.
13:22
Bootstrapping liquidity can be possible by providing some incentives to LPs?
EA
14:08
Eric Arsenault
In reply to this message
Definitely. I think that if we can have a smooth experience for this pair, we will see adoption
Deleted invited Deleted Account
反对霸权 invited 反对霸权
Z
19:56
Zack
In reply to this message
things can be expensive or cheap in any token.
You can have $100 of thorchain, or $100 of BTC, or $100 of VEO, and they are all worth $100.
Alice Brunner invited Alice Brunner
Bruce Chen invited Bruce Chen
18 February 2021
mx
00:04
mr x
"they offered to give 1.00000000 VEO in exchange for 1 BTC to address 1qQkr4s3L6iRYwCfbzTBbV6Gns6E95SrB ; The money must arrive before 18 Feb 2021 20:27 GMT ; Offer expires in 24 blocks"
00:05
Dex showing stuff weirdly?
MF
00:51
Mr Flintstone
i think someone may have just made a trade offer with that price?
EA
00:59
Eric Arsenault
yup
J
01:06
Josh
Maybe they're hoping somebody will click on it by accident.
mx
01:22
mr x
I think if you end address field with number it fucks it up
mx
01:37
mr x
regex not correct in description maker i think
Z
01:52
Zack
In reply to this message
this bitcoin address is valid though
01:52
In reply to this message
which step exactly does it mess up on?
mx
01:53
mr x
Yea maybe that order actually works lol
01:55
If there is number at the end of address
01:58
maybe at function description_maker2
Z
01:59
Zack
/w matches any letter or digit.
it is more helpful if you explain which part of the UI is behaving unexpectedly
mx
01:59
mr x
Put number at the end of address
01:59
make offer
01:59
refresh available actions
Z
02:00
Zack
does it fail to publish the offer?
mx
02:00
mr x
no
MF
02:01
Mr Flintstone
i only see 1 trade offer
mx
02:02
mr x
Now?
Z
02:02
Zack
the offers on contracts.html all have valid bitcoin addresses in them
mx
02:02
mr x
i made new one
02:02
you offered to trade 1.00000000 VEO in exchange for 6 has to address DCsXQW4HarTfDJ6PvP7e4Wbjd42Yhig5Tu6
02:03
it puts the 6 from the end of address as the value
Z
02:04
Zack
yeah, I see it now
02:10
I pushed a fix. thank you for pointing out this bug.
mx
02:10
mr x
Alright
Deleted invited Deleted Account
EA
03:42
Eric Arsenault
maybe it would be good to compare this DEX concept to atomic swaps?
03:43
I'm not that familiar with what the limitations of atomic swaps are
03:43
Deleted Account
مرحبا اصحاب
03:45
In reply to this message
أهلا ومرحبا. استمتع بتكنولوجيا amoveo. يمكنك طرح الأسئلة هنا.
EA
03:45
Eric Arsenault
oh beauty
03:45
I'll include in the doc I wrote
03:48
Deleted Account
In reply to this message
شكرا. أريد حقًا التعرف على المزيد عنكم يا رفاق.
EA
03:51
Eric Arsenault
Zack maybe this is another one to review https://blockdx.com/
Z
03:54
Zack
In reply to this message
https://github.com/zack-bitcoin/amoveo-docs/blob/master/white_paper.md للأسف ، المحتوى الخاص بنا كله باللغة الإنجليزية في الوقت الحالي. نأمل أن تساعدك جوجل في الترجمة. يُعد هذا المستند التعريفي التمهيدي مكانًا جيدًا للحصول على نظرة عامة حول موضوع amoveo.
03:54
In reply to this message
there are several atomic swap projects. I think my one review of atomic swap tech is enough for them all, right?
EA
03:56
Eric Arsenault
Yeah, that's probably true.
03:56
I see they lack many assets, ETH, XMR
03:56
etc
Rolf Hoefer invited Rolf Hoefer
RH
04:03
Rolf Hoefer
What's up guys
04:03
Eric rang me up about this wonder project:)
EA
04:06
Eric Arsenault
Hey Rolf :)
JS
07:36
Jon Snow
In reply to this message
Welcome!
Z
08:48
Zack
I added an explorer for contract offers.
you can see a link to it from the wallet.html page, in the crosschain DEX tab when you view available offers.
here is an example: http://159.89.87.58:8080/offer_explorer.html?tid=nhldOcOx5H57jYmdtmywwHIBOK8D10nt7x07JZ3XB0c=
B
14:31
Ben
what is that page supposed to show?
14:31
shows for me only current height and tid:nhldOcOx5H57jYmdtmywwHIBOK8D10nt7x07JZ3XB0c=
EA
14:43
Eric Arsenault
I guess there are no offers probably
14:43
I guess we will be able to filter by offers on this page? Like: BTC offers, sort by expiry, etc
14:43
?
Z
17:29
Zack
In reply to this message
That offer expired and so was deleted. It shows the same info as contracts.html, and it has a link to the contract explorer for that contract.
17:29
In reply to this message
No. It shows one offer for that url.
LES invited LES
EA
23:15
Eric Arsenault
whats the difference between offer_explorer and contract_explorer? Can they just be combined?
Markus °∆• invited Markus °∆•
19 February 2021
Z
00:00
Zack
In reply to this message
you could have multiple offers for 1 contract
L
00:41
LES
I have my Private Key of Amoveo
00:41
How can i get my wallet address
Z
00:42
Zack
In reply to this message
J
07:14
Josh
Will this work for amoveo mining?
MF
07:15
Mr Flintstone
these are just for ethash i think
07:15
dont think they are making bitcoin asics
J
07:22
Josh
but we don't have asics for amoveo
MF
07:22
Mr Flintstone
i think you can but i think FPGA is more profitable
07:23
probably the big miner is FPGA and the smaller ones are gpus
07:23
right now
Z
07:27
Zack
Yeah, it probably still cant compete with fpga
Lazaro Bueno invited Lazaro Bueno
B
14:51
Ben
In reply to this message
FPGA are at a factor of roughly 50X more powerful then a high end GPU (same Price)
14:52
if you compare the amoveo hashrate
J
16:47
Josh
Good to know
mx
19:18
mr x
In reply to this message
Hmm. Very boring post where vitalik brags about risking 300k to win 50k? Point about overusing modest epistemology is important though imo.
Z
20:01
Zack
In reply to this message
He mentions combining txs the way out swap tab works
I
20:05
Instinct
In reply to this message
Vitalik lurking amoveo
Deleted invited Deleted Account
Deleted invited Deleted Account
20 February 2021
A
16:16
Advanced
Where is a good place to trade VEO?
EA
16:29
Eric Arsenault
Qtrade
16:30
Or you can use a bot
16:30
@ExchangeAmoveo_bot
Z
17:44
Zack
How about i offer a 5 bitcoin prize to whoever can create a lying oracle?
It would need to ask an obious question, like "1+1=3?"
And they would need to create the oracle within 1000 blocks of the announcement.
I
17:45
Instinct
In reply to this message
Good idea
s
17:45
sanket
In reply to this message
this is a good idea
Z
18:20
Zack
we need to make the terms solid.
Like, what if there were 2 lying oracles? Do I pay out to the one that was created first, or the one that finalizes first? or what?
maybe I divide the prize between them.
Mr, J invited Mr, J
IS
19:28
Ilmu Somebody
In reply to this message
Maybe divide if they don't exploit the same flaw and otherwise first one wins (or knockoffs will dilute the winnings for the actual winner)
Z
20:07
Zack
20:07
maybe there is a bug in the oracle code?
We should probably figure this out before doing a bounty.
20:08
how can the current type be different from the result?
Maria invited Maria
Z
20:42
Zack
I added a block explorer to the light node.
Every tx has a link to the block it is in.
T
20:58
Topab
In reply to this message
+1
J
21:29
JOHNwick3's dog
https://www.youtube.com/watch?v=GdGseBuuq_I end of this Mark Cuban says Defi will save us. Which means Amoveo will save us!
21:30
good listen and maybe good to share to market/introduce amoveo to others.
21:30
(says it at end of video)
21:33
Everyone always wants to capture the next great thing in crypto... well .. what more a clue do you need to go viral. ;)
JS
22:26
Jon Snow
In reply to this message
Maybe offer 5BTC for people to create an awesome UI haha
x
22:53
x
5btc can get you listed on many top exchanges.
Z
22:55
Zack
When they fail to break the oracle i get to keep my bitcoin, and amoveos oracle gets more credibility.
If someone decided to make lying oracle reports, i can make honest reports and profit off of this interaction.
T
23:08
Topab
It would be also interesting to, once it's prove nobody can lie to the oracle , request other protocols with oracles susceptible to be tricked to do the same. Rejecting to do it would be quite telling
Z
23:09
Zack
In reply to this message
good idea
Z
23:26
Zack
In reply to this message
I think I found the problem.
https://github.com/zack-bitcoin/amoveo/blob/master/apps/amoveo_core/src/consensus/trees/unmatched.erl#L37
This should have been >1 or >= 2.
not >2

The bug happens if there are exactly 2 orders in the order book, and the first one is partially matched, but the second one is unmatched.
Which is what happened in the oracle that resolved incorrectly.
Z
23:43
Zack
I was able to make a test case that triggers the bug.
23:43
now ill make the hard update to fix it.
J
23:54
Josh
Nice
21 February 2021
JS
00:09
Jon Snow
In reply to this message
Unless Amoveo is known to more people, Other protocol will just ignore us
I
00:12
Instinct
In reply to this message
Won’t know unless u try. Thorchain responded to zack’s review the other week
Z
02:06
Zack
In reply to this message
I think the trick is to start with an obviously wrong review that they can quickly show is wrong, so they link to it.
Then as soon as they do link to it, swap it out for the actual review.
EA
04:02
Eric Arsenault
Lol
04:02
In reply to this message
Where did they respond?
EA
04:40
Eric Arsenault
Thanks for that
05:42
ᴅɪꜱᴛʙɪᴛ ⛓️💵
In reply to this message
Lol nice.
Z
08:33
Zack
In reply to this message
I made the hard update. im doing a resync now as a last check that everything is working correctly.
08:41
A pretty cool idea was suggested to me the other day.
You know how we are able to process amoveo blocks in parallel, because we store merkle roots of all the data you need, and because we have the merkle state root recorded with each block?

What if we do that same process, but on a tx basis.
So for every tx we would store the state root before that tx is executed, and we would have a record of the consensus state needed for processing that tx.

So then, we could process all the txs in parallel.

So if we wanted to process 10x more txs per second, you would have your full node on a network of 10 computers, and each of the computers is processing some of the txs.

I suspect that with this kind of design there would be no upper limit to how many txs per second we could process.

The limitation with current full node tech is that the txs need to be processed in order, so increasing the block size eventually hits a limit where miners are incentivized to not use all the space in the block. Because if they make too many txs, it takes too long to build and verify the block, so other miners who make smaller blocks will win the reward instead.
But if we go with this new design where the txs can be processed in parallel, maybe we can overcome this limitation, and allow for any amount of txs per second.
David Perry invited David Perry
T
10:31
Topab
Sounds good. Perhaps worth investigating after the protocol gets used enough
D
11:07
Devender
In reply to this message
How will the order of tx be guaranteed? Won't there be too many conflicting chains (forks) with different order?
EA
11:08
Eric Arsenault
In reply to this message
Yeah, let’s get traction first
Z
11:09
Zack
this is a kind of sharding solution, and it is compatible with the memoryless full node design.
Full nodes don't need to maintain any consensus state, so they are still very light to run, they just need more processing power.
We can move signature verification and hashes into the GPU to make it very fast.

mining pools can also operate on the memoryless design. and the consensus state can be split up into shards that keep track of different parts.
So if you make a tx that touches multiple shards, you grab the state from the different consensus state nodes before publishing the tx to a mining pool.
11:10
In reply to this message
the txs still have an order.
It is the same strategy as we are currently using to be able to process blocks in any order, but on the level of txs instead of blocks.
each tx will have a merkle root for what the consensus state looked like before that tx gets processed. and the result of processing one tx should match the merkle root that starts the next tx.
D
11:12
Devender
In reply to this message
👍👍
Z
11:12
Zack
In reply to this message
it isn't at the top of the todo list yet, but I think getting the telegram chat aware of where we could be headed is useful. So we can start making a plan.
MF
11:14
Mr Flintstone
seems like this might be quite the scaling advantage
Z
11:15
Zack
more scalability means lower fees.
Fees have to be high to prevent spam, but if we had this kind of scalability, we could tolerate more spam, and so fees could be lower.
MF
11:16
Mr Flintstone
how far do you think we could reasonably push it before storage or bandwidth become the bottleneck
11:17
like for the worst case node that downloads stores and verifies everything
EA
11:19
Eric Arsenault
In reply to this message
👍 makes sense!
Z
11:24
Zack
sharding seems very doable for this design, so I think storage wont ever be a bottleneck.
Full nodes do need to download all the txs, and merkle proofs with them, so eventually bandwidth will matter.

fiber optic cables today offer 1 gigabit per second.
So that is like 120 megaytes per second.

And I guess miners want to use 90% of the time for mining, and 10% for verifying.
So it seems like 12 megabytes per second could be a limit for now.

But it looks like the physics of fiber optic cables could allow for them to get up to multiple petabytes per second.
11:28
Visa does 1700 txs per second.
An amoveo tx is like 2 kilobytes, with the merkle proof.
So that would be 4 megabytes per second.
Very doable with current fiber optic tech.
11:32
This is the announcement for hard update 46.
This update activates at block 154000, which is around March 1st.
Here is the standard documentation related to updating: https://github.com/zack-bitcoin/amoveo-docs/blob/master//getting-started/updating.md
This update is to fix a bug in the oracle mechanism which can cause the oracle to incorrectly result in "bad question", when the result should have been "true" or "false".
This bug gets triggered if there are exactly 2 unmatched orders in the oracle's order book, and the first one is smaller than the oracle initial liquidity.
Andrey | Zerion invited Andrey | Zerion
MZ
13:31
Mathiu Zatch 4 años en cripto 🇦🇷
Hello
13:32
Wallet for amoveo?
13:32
Android note fund
MZ
13:36
Mathiu Zatch 4 años en cripto 🇦🇷
Sell amoveo por buy amoveo ?
13:36
What Is dex amoveo
EA
13:58
Eric Arsenault
In reply to this message
If you want to buy VEO you can use qtrade
13:59
In reply to this message
Here’s an overview of the dex
s
16:26
sanket
this is a nicely written document
16:26
it sounds like hodlhodl but without the platform.

I am still unsure of how the Oracle will work?
16:27
like how exactly would it look like? oracle will refer a proof of payment?

Can it be use for fiat on-ramps?
Z
17:48
Zack
In reply to this message
J
18:29
Josh
In reply to this message
I think this is really important. You don't even need 10 computers. CPUs are being manufactured with more and more cores and you can do a lot of the heavy lifting on massively powerful GPUs and FPGAs.
18:34
In reply to this message
If the merkle root at the end of one tx matches the merkle root at the beginning of another tx, doesn't that mean you're doing them serially?
Z
19:09
Zack
In reply to this message
When syncing you don't do them serially.
When you download the block there is already merkle roots on every single tx.
In parallel you can process each tx. and in parallel you can check that the merkle root result of each tx matches the merkle root in the block recorded with the next tx.

The miner can also produce these merkle roots in parallel.
For each tx there is some consensus state at that point in time, and we can calculate the merkle root for every consensus state in parallel.

Calculating the consensus state is serial if you are using the same state over and over.
If every tx in a block involved using the same account over and over, then that block would be serial.
Each individual account is serial, but all the accounts are parallelizable against each other.
19:11
If you tried to make a million payments from the same account, the miner could reject any portion of these payments, or put them in a mempool for future blocks. That way the miner doesn't need to process too many non-parallelizable txs in any individual block.
J
19:15
Josh
Ah right, makes sense.
19:15
This scaling won't matter for a while, only btc and eth really have a problem with fees now but it's really important tech.
19:16
And it could help us make block times shorter which would affect current usability.
19:17
Actually since blocks can already be verified in parallel that might help use reduce the block time.
Z
19:18
Zack
In reply to this message
it matters on some level.
Tx fees are a spam prevention, so they need to be big enough to make spam attacks too expensive.
If we were more scalable, then we could tolerate more spam, and we could have lower fees.
J
19:18
Josh
Yeah, it seems like fees are already too high.
19:19
Just nothing compared to Bitcoin.
19:19
How are fees set now?
Z
19:25
Zack
In reply to this message
the fees can be broken into a few parts.
* The miners can set a minimum fee to include your tx. I think currently it is like 0.00002 veo per tx. This is the miner's fee.
* There is a fee set by the governance mechanism. The governance mechanism works similarly to the oracle mechanism. This is the governance fee. The governance fee is burned. You can look at governance values here http://159.89.87.58:8080/lookup.html We use futarchy to decide how to update these governance values.
* The light node automatically pays about a 0.5% fee to the light node developer every time you make a multi-tx. But this can be bypassed by commenting out a line of code in the light node https://github.com/zack-bitcoin/light-node-amoveo/blob/master/src/js/multi_tx.js#L111
19:26
currently the light node doesn't use multi-tx for spending veo or other subcurrencies.
multi-tx are used when you accept limit orders or use the AMM or the DEX.
19:30
Looks like most governance fees are around 0.0015 veo.
spending is like 0.0007 veo.
19:33
I came up with 0.0015 because originally the block reward was 1 veo, and I could fit around 600 txs in a block.
So I figured that if a block was totally full, we would want all the tx fees to cost as much as 1 block reward.
That way if a miner had say, 40% of the hash power and used all their block rewards to spam the network, they would only be able to use 40% of the space in each block.
J
19:43
Josh
They can't spam more than the block size anyway. At this point we rarely even have one tx per block.
19:43
The fee goes up with the veo price which could be a problem.
Z
19:44
Zack
the governance mechanism can adjust pretty quickly. It is the same as settling any other oracle.
J
19:45
Josh
We could have it a function of the hashrate, then it would adjust automatically by price
Z
19:45
Zack
and the ideal fee isn't so much about the price of veo. Rather it is about how scalable Amoveo is.
Scalability only really increases, and we have a good idea of when the scalability increases will happen, so we can prepare the governance oracles ahead.
J
19:47
Josh
If the tx fee is $10 that's a lot more spam protection than $0.001
19:47
Even if it's the same amount in veo
Z
19:48
Zack
If we model it based on the idea that an attacker would use the same amount of money to attack, regardless of the actual cost of an effective attack or how much value could get destroyed in that attack, then it makes sense to have a fee that is constant in USD terms.
J
19:49
Josh
I'm a bit confused on why we need both block size and tx fee. Isn't just tx fee enough?
Z
19:49
Zack
A contract evidence tx could be gigabytes big, if we allowed it
19:49
but the governance fee would still be 0.002 veo
J
19:50
Josh
So tx fee per byte?
Z
19:50
Zack
the mining pool could do a fee per byte, but they don't currently
19:51
probably making the fee for contract evidence tx be based on the length of the tx would be a good idea
19:53
In reply to this message
maybe we don't need a block size limit.
If that is the case, then we could use the governance mechanism to make the block size limit really big. In that case futarchy would tell us that a bigger limit is a good idea.
J
19:53
Josh
Yeah but i think we need a per byte tx fee first.
Z
19:53
Zack
I tried to make few assumptions when designing Amoveo, and let the governance mechanism and futarchy make the decisions when possible.
19:54
I think fee per byte on evidence tx is important for security reasons, so ill do a hard update for that very soon.
J
19:54
Josh
I think that's a good way of approaching it, just trying to understand the reasoning.
19:54
If it's for evidence tx why not just generalize it to all txs?
19:56
Do miners currently use efficient ways to publish blocks so that if you already have the txs you just get a small diff?
Z
19:57
Zack
In reply to this message
all the other txs have a set fixed size.
19:57
oh right. oracle new tx also have variable size, depending on the length of the oracle text.
J
19:58
Josh
Yeah but you still don't lose from generalizing
Z
19:58
Zack
we would lose fine-grain control over how much we charge for each tx.
maybe we will want to charge more for a kind of tx for some other reason.
19:59
A byte of turing complete contract evidence code is different from a byte of human language oracle text. so we probably don't want to charge the same for them both.
J
20:00
Josh
Ok but we could still always charge by the byte and not by the tx
20:00
I think it's easier to understand
20:00
And compare
Z
20:01
Zack
spend_tx only update 2 account balances.
create_account_tx is creating a new entry in the consensus state
20:01
we could have 2 governance fees for each tx. one fee per byte, and a second fee for that tx type.
20:03
that could make it more complicated to do updates, because every time we add a new tx type we also need to add code to calculate how many bytes that tx type is.
20:03
I don't really want to base the number of bytes off of the current way of encoding txs in JSON. because it is a very inefficient encoding and I think we are likely to change it later.
20:03
when we update to a faster encoding it would be nice if historical blocks also were able to be processed faster and didn't depend on that old slow encoding
J
20:07
Josh
We'll have these problems for the evidence tx anyway, right?
Z
20:07
Zack
the bytecode of the smart contract is already in bytes
20:08
the merkle proofs are in json though.
contract evidence tx are the only tx that don't have a fixed number of merkle proofs.
J
20:08
Josh
Ok so it's worth waiting until we migrate all the json to byte based encoding
Z
20:09
Zack
because the smart contract could reference lots of different consensus state
20:10
decoding the JSON is currently around 80% of the CPU cost of syncing, if I remember right.
20:10
and I think it is more than doubling the length of the data sent over the wire
20:11
It sure has been convenient for development though. Everything is available to the javascript light node without any converting.
20:13
In reply to this message
i think we need to charge new_oracle_tx and evidence_tx by bytes right away, for security reasons
J
20:13
Josh
Right, I meant wait on making other txs length based
Z
20:14
Zack
oh right.
I think mining pools already have upper limits on tx sizes that they accept. so it isn't a security issue
J
20:14
Josh
In reply to this message
Yeah but a few converter functions should fix that
Z
20:15
Zack
In reply to this message
we would want to be able to sign txs without converting to JSON. so the light node would need to be able to convert everything to bytes to be able to sign.
J
20:15
Josh
In reply to this message
Sounds like a huge optimization
Z
20:15
Zack
Maybe we can copy some Ethereum encoding stuff to make this easy
J
20:16
Josh
The most efficient encoding is always a custom packet
20:16
It's also the hardest to upgrade
20:17
@IlmuKalm has been thinking about this a lot
s
20:24
sanket
In reply to this message
https://github.com/zack-bitcoin/amoveo-docs/blob/master/blog_posts/DEX_feb_2021.md

thanks, this is very detailed.

I have a question : Does it always mean, I have to have 10% extra of the share to be locked? Like here you sold 0.182 but have 0.2 shares.

Also, the way you described it is only when the trade fails you can use an oracle to challenge outcome else the trade happens smoothly. correct?
Z
20:30
Zack
In reply to this message
it doesn't need to be 10%.
It depends on your preference.
If the other party locks you into the trade, and doesn't send the bitcoin, how much do you want to charge them for causing this inconvenience to you?
You may need to wait around a week for the oracle to settle to be able to get your money out.
It is something you can customize in the DEX interface in the light node.

Correct, we only use the oracle if someone refuses to participate in the trade normally. You are both incentivized to do the trade normally and not use the oracle.
20:39
looks like there is a governance value for the maximum oracle question size.
999 bytes.
s
20:45
sanket
Ah thanks. It's like a punishment fee.
20:49
How do you think we can get more people to try this?
I am sure there is a genuine need for this in the market.

Have you used redeeem.com? They sell gift cards and crypto P2P.
Their dispute mechanism works basis video proof of buying or selling and use a council of judges to announce the outcome (they are finding ways to reduce trust in dispute)

I can imagine this would be useful to them.
Z
21:02
Zack
In reply to this message
currently the UX is limited because it only allows limit orders of selling veo.
I am working on a hard update that will allow limit orders to buy veo as well.
After that we have a plan to make a UX to go from one cryptocurrency to another, like BTC to ETH for example, and at that point hopefully it will be easier for more people to get involved.

i haven't looked into that website yet.

A council of judges is not a good security mechanism, you need to pay them fees bigger than how much profit they could get from stealing.
Z
21:18
Zack
In reply to this message
so this update will be nice because we can overcome the 999 byte limit of oracle text.
I wrote a first draft of the hard update.
I set it up so if you use less than 1000 bytes, it costs the same default fee.
And each additional byte costs 0.1% of the fee. so if you use 2000 bytes, it is 2x the normal fee.

I am setting up the contract evidence tx similarly. 1000 bytes of contract or evidence is a normal fee.
but for including merkle proofs of evidence, I am charging 2500 bytes per merkle proof.
That is about how big the proofs will be once there are 1 000 000 entries in the consensus state.
21:20
maybe I should also get rid of the maximum oracle question limit size entirely?
21:20
or update that governance value to like 100k bytes?
J
21:24
Josh
In reply to this message
Yeah, no harm in doing that
21:25
In reply to this message
what's special about the first 1000 bytes?
Z
21:27
Zack
In reply to this message
I want to charge the standard fee for any normal tx.
then the first 1000 bytes of oracle question are free, and we charge per byte after that.
21:27
maybe the first 1000 bytes shouldn't be free?
21:28
maybe im over-charging. I think normal tx are like 10k bytes
s
21:33
sanket
In reply to this message
>A council of judges is not a suitable security mechanism; you need to pay them fees bigger than how much profit they could get from stealing.

Yeah, that is why I suggested that they would probably love this amoveo dex solution.
IS
22:25
Ilmu Somebody
I don't see why evidence would ever be anything other than a hash or zkp
22:25
In case it is a hash you'd use IPFS or some other future backends to see what'sup
Z
22:34
Zack
That is the atomic swap solution.
I reviewed that in my document. It has a lot of shortcomings in comparison to amoveos oracle
https://github.com/zack-bitcoin/amoveo-docs/tree/master/crosschain_dex
J
23:14
Josh
In reply to this message
It's a data availability issue which is really tricky.
IS
23:21
Ilmu Somebody
I mean as evidence to the oracle you can just put in a hash and then seed the data on ipfs while the oracle is being resolved
23:22
So there doesn't need to be any variance in the size of the oracle proofs
23:23
(Also, what is the 'free option problem'?)
MZ
23:24
Mathiu Zatch 4 años en cripto 🇦🇷
I wanted to know a few questions about the project. how many developers does amoveo have? . Why did nasdak include it in an index? What do they have to do with exante plarform trading? Could you improve the marketing and UI DEX amoveo interface? . how many years that exists amoveo. If you can answer me in a text to be able to translate with google. Another thing because the Android application does not work anymore pass amoveo to eth https://exante.eu/es/press/news/1458-cryptoecon-meetup-explains-prediction-markets-and-introduces-amoveo-platform/. https://defix.fund/ because amoveo is better than bitcoin in the long run
Z
23:25
Zack
In reply to this message
the free option problem is like this.
Imagine I make an offer to sell 500 veo for a bitcoin, and Alice accepts my offer.
But alice has a full week to send the bitcoin.
So Alice doesn't immediately send the bitcoin, she waits to see if the BTC/VEO price moves.
If bitcoin gets more valuable, she doesn't send the bitcoin and the trade is canceled.
if bitcoin gets less valuable, she does the trade and profits off of the more valuable veo.

Alice has the option to either do the trade or not, and this option doesn't cost her anything.
IS
23:26
Ilmu Somebody
Ah ok so it's also not related to the oracle evidence tx
Z
23:30
Zack
In reply to this message
>how many developers.
Basically just me. but lots of other people provide ideas.

>why did NASDAQ list an index?
because Exantech paid them to.

>what relation to exante?
exantech is a branch of exante that was more involved in Amoveo previously, and are still slightly involved in Amoveo. I think their strategy is to buy some veo and try to help us succeed so they can profit.

> could you improve the marketing and UX of DEX.
Yes, we are working on that now. First we want to get the UX good, marketing comes later.

> How many years old is Amoveo?
our 3 year anaversary since the genesis block is March 2nd.

>android app isn't working
this is the recommended light node. it works on android https://github.com/zack-bitcoin/light-node-amoveo

>using google translate.
Hablo castellano, y tenemos canales en castellano https://t.me/joinchat/SNk79ImVewjwBKRD
MZ
23:33
Mathiu Zatch 4 años en cripto 🇦🇷
Ah buenísimo
Z
23:33
Zack
In reply to this message
yeah. and the DEX is immune to the free option problem because of the safety deposit you need to pay to be able to buy veo.
MZ
23:34
Mathiu Zatch 4 años en cripto 🇦🇷
Porque crees que exhante te dio bola a tu proyecto habiéndo tantos otros proyectos
22 February 2021
J
00:26
Josh
In reply to this message
IPFS has no storage guarantees, what if the data disappears? OTOH, the side that wants the oracle to decide in its favor has a big incentive to keep the data highly available.
IS
00:29
Ilmu Somebody
In reply to this message
Yeah, so they may submit a DNS based link, an ipfs hash, whatever kind of hyperlink and then find a way to make the data available. IPFS is similar to torrents, which is nice since anyone can seed and you'd need a nation state adversary (or similar) to stop you from making the proof available.
J
01:31
Josh
Another thing is content -> hash is not a concensus issue, it's just a data availability issue so it shouldn't really be an issue for block size
01:31
although i guess you can't validate the block unless you first have the content
01:32
hmm, if we keep the meaning of the content out of the concensus entirely, miners don't have to worry about that at all, it's just about people betting on the oracle
J
03:27
Jeans
In reply to this message
is there the same in french ?
03:27
telegram channel
Z
03:30
Zack
Apparently something like 4% of us are french speakers, so maybe we should make a channel. But i dont speak french, so i wont be involved much there.
J
03:35
Jeans
I can get involved on a French channel, but I don't know if it is better for you or me to create this channel? maybe it doesn't matter.
Z
03:39
Zack
Oh, i spelled the link wrong
J
04:32
Jeans
In reply to this message
Super, merci !
IS
05:44
Ilmu Somebody
In reply to this message
btw @zack_amoveo all the links I clicked from here: https://github.com/zack-bitcoin/amoveo-docs/blob/master/getting-started/quick_start_developer_guide.md are broken

Also; can you expand on this? https://github.com/zack-bitcoin/amoveo-docs/blob/master/use-cases-and-ideas/mimble_wimble.md

what are the "well understood parts" of mw?



So okay about the oracle, the way I understand it, there is a state channel on the node that allows people to make a deal of some sorts. This creates a market on chain and gives the people some subcurrencies, then at a certain time the oracle is created to resolve a dispute (if one happens, which is the default - if the participants don't resolve things themselves).

The oracle can have three possible outcomes, yes/no/bad question. I don't know exactly how bad question is chosen or what happens when it is chosen as the result but I would guess it would try to invalidate the whole thing and refund everyone (after subtracting tx fees). If it isn't a bad question then the result is determined by the oracle game which is explained pretty well so people should know that part.

From what I can tell the contract of the oracle is stored as a hash on the chain?

Where do the responsibilities of the light node vs the actual chain lie? I underestimated just how much is happening in the state channels and now I'm about to go into reading the code to understand better but I'd appreciate a guided tour if there are some relevant files to read first or good entry points.
IS
06:34
Ilmu Somebody
I'm also interested to know more about the perpetual stablecoins, afaict you keep all the stablecoin stuff off-chain so that it remains fluid and then checkpoint it occasionally onto the chain to keep it trustworthy.

Is there a design you could do that "points outwards" what I mean by that is can you somehow guarantee a veo stablecoin that exists on some other platform (like ethereum?)
06:35
so rather than have a synthetic eth that you trade 1 to 1 you'd have a synthetic veo on ethereum that you trade 1 to 1 (not precluding the former option, just wondering if there is a way to do the second thing).
06:39
https://github.com/zack-bitcoin/amoveo-docs/blob/master/use-cases-and-ideas/trustless_markets.md

I guess no; all the arrows must be pointing at amoveo when you make some kind of integration. That is, if you want to guarantee a wrapped veo somewhere else, then you wouldn't be able to use amoveo to do it.
MF
06:44
Mr Flintstone
In reply to this message
i think there are ways you can make an arbitrary erc20 act like VEO using some kind of the same type of betting that is used for the dex
06:44
like it is redeemable to VEO because you can make a trade on the amoveo dex that converts it to VEO
IS
06:45
Ilmu Somebody
the problem with that though is that the DEX lives in the state channels not on the chain
MF
06:46
Mr Flintstone
you would perhaps need a special type of account on chain that cannot retract an offer
IS
06:46
Ilmu Somebody
but if you had a 1-to-1 wrapped VEO then you'd need a custodian on amoveo that you could programmatically redeem veo from by unwrapping the ethereum veo
MF
06:46
Mr Flintstone
id use betting for that
IS
06:47
Ilmu Somebody
but the bets have expirations
06:47
if I want to keep my wrapped veo on ethereum for 250 years and then redeem it how would that go?
MF
06:50
Mr Flintstone
In reply to this message
i am not totally sure of the details, i just think there is some solution down this path. perhaps not 250 years, but you could have the special account forever lock the veo until the person with ethereum veo redeems or accepts some kind of payment for redeeming early
06:51
but even if you cant lock veo for an infinite amount of time, having it on another chain temporarily might be useful
06:51
like for some guaranteed amount of time
IS
06:56
Ilmu Somebody
I guess this is a usecase for the most complicated smart contract.. Something like:
- Smart contract holds the real veo that back the wrapped veo's on other chains (whatever chain)
- If you formulate a bet correctly then the smart contract will take the other side (automatically) with an amount equal to what the bet specifies will be burned in wrapped veo
- The dispute will always happen since the contract has no way to know if the wrapped veo was burned but using the resolution bots we've talked about this wouldn't be an issue (since there'd be conclusive proof that the wrapped veo was burned on the other chain the owner of the bot can collect 0.1% or sth for instant payout).
06:58
But I don't know if you can make a smart contract automatically take bets?
06:58
As soon as you are using a miner then the scheme falls apart since the custodian of the veo backing up the wrapped veo can always run away with the money in that case.
06:59
I guess the contract would also have to automatically take deposit bets so that you can mint wrapped veo.
06:59
Or no, that one could happen with a miner type strategy.
Z
07:30
Zack
In reply to this message
07:36
In reply to this message
We don't do the channel state stuff so much any more. There were some serious limitations in the pure state channel design. https://github.com/zack-bitcoin/amoveo-docs/blob/master/design/smart_contracts.md
IS
07:37
Ilmu Somebody
In reply to this message
I read this one but I am having problems thinking how to make an autonomous actor (similar to a "nondominium" in open value networks)
07:37
like a custodian for funds that will accept bets of certain form.
07:37
(could literally be a regex)
Z
07:38
Zack
In reply to this message
the oracle is explained here https://github.com/zack-bitcoin/amoveo-docs/blob/master/design/oracle.md
The oracle needs the ability to return "bad question" for questions that can't have good true or false outcomes. That way if a question is likely to be ambiguous, people can signal that by betting on "bad question".
IS
07:40
Ilmu Somebody
In reply to this message
yep also read this, the bad question part wasn't made fully clear which is why I brought it up.

The idea with the order book where each bet must be double what the other side did and the winner is whoever makes bets that the opposition won't be willing to take the other side of isn't obviously extensible to three options so I wasn't sure if that was how it worked or not.
Z
07:40
Zack
amoveo contracts are just a hash until they get settled.
That way, if the holders of the losing shares give or sell their shares to the holders of the winning shares, everyone can cash out without needing to run any smart contract.
Also, this enables us to keep unexecuted smart contract code off-chain.
The smart contract itself could be very big, as long as only a small portion of could ever get executed.
It is the merkelized abstract syntax tree optimization. MAST
07:42
The light node can verify merkle proofs of consensus state data from the full node.
The light node can verify merkle proofs to know what is the currently consensus state.

The full node verifies txs in the blocks and calculates what is that consensus state.
MF
07:42
Mr Flintstone
You could could create a contract with oracle language “token X on ethereum is sent to the burn address 0x0” and split it into yes and no subcurrencies

you could take the “yes” subcurrency and sell it on the amoveo dex, exchanging it for its full value in VEO with the caveat that you send the ethereum token to the address of the person who is accepting the trade

so anyone holding the token on ethereum can always sell it for VEO on the dex because holders of the “yes” subcurrency will buy it
07:43
i think amoveo would support this type of scheme when buy orders become possible. and it doesnt need an on chain special account type
Z
07:44
Zack
In reply to this message
a good entry point.
I linked to the apis from the new version of the quick start guide.

https://github.com/zack-bitcoin/amoveo/blob/master/apps/amoveo_core/src/consensus/txs/test_txs.erl
Here is the code for testing all the tx types.
EA
07:45
Eric Arsenault
In reply to this message
I guess anyone could do this, so there could be many tokens on Ethereum that represent VEO
IS
07:45
Ilmu Somebody
perfect, I've been working my way through the documents waiting to hit the enumeration of the tx types..
Z
07:46
Zack
In reply to this message
the perpetual stablecoin isn't implemented yet. There are a lot of notes about how it is being built in the TODO list. also there is the perpetual stablecoin branch on github where part has been implemented.

Ethereum could make a synthetic VEO with one of their smart contracts.
07:47
In reply to this message
Amoveo's light node is very simple. Maybe they can have a light node inside another blockchain to get better access to info on Amoveo.
07:48
In reply to this message
seems impossible. derivatives need expirations.
IS
07:49
Ilmu Somebody
In reply to this message
Yeah, but the idea is to ensure that the wrapped veo corresponds to a veo using amoveo. This is just an example of a "outwards facing" type of usecase and I think these usecases need a custodian that auto-accepts bets of certain formulation (so that value elsewhere can be backed up by amoveo)
07:50
In reply to this message
yep exactly, but this isn't a derivative, only at the points where the risk involved in exchange is going on is it a derivative. In the meantime it's just a veo that is being stored elsewhere.
07:51
or the capability to spend this veo has been moved into a different system for the time being
Z
07:51
Zack
In reply to this message
I think that is a bad way to do smart contracts.
Finance is about trading risk. There are better ways of trading risk.
IS
07:53
Ilmu Somebody
The point is that if you can use amoveo to back up trade taking place elsewhere then your sphere of influence grows and therefore also adoption.
MF
07:54
Mr Flintstone
In reply to this message
i think this already works actually
Z
07:54
Zack
In reply to this message
the bet needs to be double the previous bet's limit in the order book.
So like, for a question type oracle, the initial bet is around 0.002 veo.
So if there is already a bet for type "true" in the order book, and you also wanted to bet for "true", then your minimum bet is 0.004 veo.
if there is already 2 bets of type "true", and you want to bet on "true", then your minimum bet is 0.008 veo.
MF
07:54
Mr Flintstone
In reply to this message
for creating a trust free ethereum veo
Z
07:55
Zack
everyone is betting at 50-50. but if 1 person bets on true, another bets on false, and the outcome is "bad question", then they have both lost their bets.
So the oracle can destroy veo, if people are split 3 ways on the outcome.
IS
07:55
Ilmu Somebody
In reply to this message
How do you ensure that the wrapped token is worth anything?
07:55
In reply to this message
wait, so "bad question" destroys the veo?
MF
07:56
Mr Flintstone
In reply to this message
because there is veo locked into a smart contract backing the behavior of sending the wrapped token to the address 0x00
07:56
so whoever is holding the token on ethereum is the only one who can unlock that value on amoveo
Z
07:57
Zack
In reply to this message
if you report to the oracle "bad question", and the result is "bad question", then you double all the money you had reported with, as long as someone else reported in one of the other ways to match your bet.
IS
07:58
Ilmu Somebody
okay, but if the result is "bad question" what happens to the funds "on the other side" i.e. whose fate is determined by the oracle
07:58
ah the smart contract handles each outcome
07:58
ok I get it.
Z
07:59
Zack
In reply to this message
if the result is "bad question", and you had reported to the oracle either "true", or "false", then you lose the money you had used to make that report.
08:00
In reply to this message
right. the smart contract can look up the result of any oracle and use that data however it wants.
IS
08:00
Ilmu Somebody
In reply to this message
afaict this assumes that there is liquidity in the market? would you continuously "refresh" the wrapped tokens then? similar to the perpetual stablecoin?
EA
08:20
Eric Arsenault
In reply to this message
How would the token on Ethereum get minted?
MF
09:13
Mr Flintstone
In reply to this message
yeah they would have a maturity date
09:16
In reply to this message
one person would create the subcurrencies on amoveo and do a one time mint of the same amount of coins on ethereum and then put them in a uniswap pool or something
09:17
im not sure there is any practical use to this yet since eth fees are so high
EA
09:17
Eric Arsenault
In reply to this message
But who would mint on Ethereum?
09:18
Would it be some 3rd party who has minting rights?
MF
09:18
Mr Flintstone
same person who creates the subcurrency
09:18
you can only mint once thats the total supply
09:18
You could then sell it in the dex or in uniswap
mx
09:48
mr x
Account explorer is supposed to also show tx history?
IS
14:09
Ilmu Somebody
In reply to this message
So the oracle has a bet of the form “token <id> on <chain> is burned before <date>” and the yes subcurrency is 1-1 with the token.

The person who makes the market also mints that many token in target system (ethereum). Then they go on uniswap and sell the tokens.

Now some people buy the token and some of them burn it, others not. What happens?
14:11
How do the ones who burn get their veo? How does the oracle resolve to pay out to them if some tokens weren't burned? How do we know the person doesn't mint more tokens? Etc.
MF
14:16
Mr Flintstone
we can know they dont mint more tokens by the erc20 smart contract rules
14:19
burning the tokens to get your veo back could be a dex swap for either the “yes” token or some VEO in exchange for sending it to the burn address
IS
14:35
Ilmu Somebody
But the yes token is worthless if some of the wveo isn't burned
J
18:55
Josh
In reply to this message
So there's no channel stuff in Amoveo anymore? Is this intended to be built as a second layer?
Z
19:04
Zack
In reply to this message
we still have channels.
The old design had all smart contracts inside of channels.
Tests 43 and 45 are examples of how to do state channels with the new system.
https://github.com/zack-bitcoin/amoveo/blob/master/apps/amoveo_core/src/consensus/txs/test_txs.erl

The light node is currently not using channels for anything.
We want to eventually have a single price batch market using channels, to prevent miners from front running the market.
mx
22:11
mr x
@zack_amoveo The explorers are not working properly?
Z
22:56
Zack
In reply to this message
thanks. I had turned them off while testing resyncing after that hard update. im turning them on now.
mx
22:57
mr x
ok
23 February 2021
Z
01:00
Zack
This is the announcement for hard update 47.
This update makes it so that txs which are more bytes long cost a larger fee.
Looking at our plans for scalability, it seems like downloading bytes of history will become the bottleneck, so it is important that the fee is related to how many bytes the tx is using.
This update will activate around March 1st, on block 154100.
Here is the same documentation as always for updating https://github.com/zack-bitcoin/amoveo-docs/blob/master//getting-started/updating.md
EA
03:21
Eric Arsenault
I was thinking that further out, Amoveo could enable cross-chain loans too
Z
03:52
Zack
In reply to this message
Loans dont make sense on the blockchain
MF
04:02
Mr Flintstone
i think he means overcollateralized loans like how money market apps on ethereum work
EA
04:16
Eric Arsenault
yeah, overcollateralized loans
04:17
we could pretty easily expand into that once we have the DEX going smoothly
04:18
"easily" lol. What Zack does is easy right?
il invited il
IS
07:03
Ilmu Somebody
In reply to this message
I know you are joking but to drive the point home: no it is not. 😔
x
07:30
x
In reply to this message
blockchain lending plartofms have a lot of users? lending is a big market in traditional finance. it seems the oracle can also be used for veo based lending?
Rust Fantasy invited Rust Fantasy
EA
09:04
Eric Arsenault
It’s possible but probably makes sense to wait after dex
09:16
You lock up collateral on Amoveo, and then have a contract that releases your collateral once some other crypto which is lent out is returned to some address
MF
09:17
Mr Flintstone
yeah, it seems possible
09:18
and this way you arent commingled with everyone elses money
Z
20:42
Zack
I wonder if it would make sense to add regex to chalang. Out vm for smart contracts.

Because it seems like manipulating text to produce oracles is going to be important.
20:42
Regex is single pass, so it is easy to calculate gas for it.
Not even turing complete.
J
20:45
Josh
What would an example use case be?
IS
21:38
Ilmu Somebody
In reply to this message
yes please!
21:40
In reply to this message
you could basically match a very specific oracle text; ^this is the oracle text I want to match, and here is the amount: ([0-9]+) and this is where to send it: ([0-9]+). Goodbye$
J
21:42
Josh
i don't understand how people would bet on that statement
IS
21:43
Ilmu Somebody
haha yeah that statement was more about showing the structure of regex in an oracle
21:43
you can capture the number fields but fix everything else in place.
Z
22:19
Zack
In reply to this message
we could have some oracle text with a blank spot for your bitcoin pubkey, and regex search and replace could insert the bitcoin pubkey.
22:19
chalang is already turing complete, so it wouldn't add any capability to the language.
but it would give us another format to communicate more clearly.
MF
22:20
Mr Flintstone
would you still need the swap receipts for using the DEX to buy VEO with this method?
Z
22:20
Zack
there is really fast code for regex already, so it would be easy to add to chalang, and it would probably be faster than the existing ways of doing things.
Because chalang is a VM inside of the erlang VM currently, the double layers makes it kind of slow.
22:20
In reply to this message
yes
22:21
I already have the swap receit hard update set up, but I want to write the smart contract and make sure it works right before merging.
22:21
in case there are any last changes to make.
22:21
im doing it in the perpetual subcurrency branch, because the perpetual subcurrency stuff needed a lot of similar code written.
MF
22:22
Mr Flintstone
oh got it
J
22:59
Josh
In reply to this message
I still don't understand when the concrete btc address gets added. How do people getting on the oracle text know which btc address to look at?
Z
23:05
Zack
In reply to this message
the oracle isn't created until we are ready to settle the contract.
The contract can have rules about what kinds of oracles would be valid for settling that contract.

If I am trying to buy veo, and you accept my swap offer, you get recorded in the consensus state as the account who accepted my swap offer. The contract can see that your account accepted it. so the contract can give you exclusive permission to decide which bitcoin address should receive the btc.
J
23:05
Josh
Oh, so the oracle just has plain text, no regex?
Z
23:08
Zack
In reply to this message
right.
J
23:10
Josh
Ok that clears things up for me.
24 February 2021
XBX invited XBX
x
02:42
x
anyone speak chinese? join amoveo 中文 channel
EA
03:05
Eric Arsenault
In reply to this message
🔥 great initiative
Z
09:08
Zack
https://github.com/zack-bitcoin/amoveo/blob/perpetual_subcurrencies/apps/amoveo_core/priv/buy_veo.fs
Here is my first draft of the smart contract for making offers to buy VEO.
09:08
Now the chalang compiler knows how to interpret embedded strings.
EA
09:23
Eric Arsenault
🔥 nice work!
09:23
What's eta to test it out?
Z
09:24
Zack
ive still got to get the test of this smart contract to pass. Then we do a hard update to make the swap-receipt features available, which are necessary for this contract.
Then I need to add support to the light node for this.
OK
09:33
O K
Two Weeks ™
EA
09:34
Eric Arsenault
Lol
Z
20:47
Zack
Im thinking of making something like the explorer, but it scans for instances of people burning veo, randomizes with a later block hash, and assigns pokemon or cryptokitties or whatever to accounts probabalistically based on how much they burned.
And if you make a swap-tx using a particular zero-value subcurrency from that account, the amount of subcurrency you send can encode that you are selling one of your NFT.

So this doesnt change amoveo at all. But it does create non-fungible tokens, and the ability to trustlessly sell them for veo.
Deleted invited Deleted Account
L
23:00
LES
Zack
23:01
I just put my pk on the light wallet to generate a new account
23:01
I can’t find my wallet
Z
23:02
Zack
In reply to this message
23:03
In reply to this message
what is a "pk"?
what do you mean by "find my wallet"?

The light node is here https://github.com/zack-bitcoin/light-node-amoveo
I set it up so you need to save your private key before it will display your public key.
L
23:09
LES
I have my private ley
23:09
Thats all i have
Z
23:10
Zack
http://159.89.87.58:8080/txs.html here is the light node that I am serving.
It is more secure to download the light node from github, but you can use the one I am serving.
L
23:16
LES
Yes i am already in the light wallet
23:16
What i should
23:16
Because i put my private key and then click in amoveo private key
Z
23:16
Zack
the button that says "get key from file"
23:17
after loading your private key it should say your balance
L
23:22
LES
Yes but i don’t have any file
Z
23:23
Zack
the file is where your private key is stored.
L
23:31
LES
I can create a file of word and put the private key there
23:31
I the light wallet will validated?
EA
23:31
Eric Arsenault
Where did you create your pk?
23:32
If you created in the light node, you just need to upload that same file
L
23:33
LES
I really don’t remember
23:33
I just keep written my private key
Z
23:33
Zack
In reply to this message
that will not work.
When you first created the private key, it was saved in the correct format.
23:34
In reply to this message
I haven't used Windows in over a decade.
There used to be a program called "notepad" which would let you save files as ".txt" format.
That might work.
23:35
I think you can install Emacs in windows. that would definitely work, but it would be more effort.
23:37
https://en.wikipedia.org/wiki/Microsoft_Notepad looks like notepad still exists
EA
23:37
Eric Arsenault
Yeah, use notepad
23:37
Or just search “text” and the program should come up
23:37
Put you pk there, save file, upload
L
23:41
LES
Its says my balance is NaN
Z
23:42
Zack
In reply to this message
what is your public address?
L
23:43
LES
BMi/TiN18WcTDpD8p5OEpzp43KWlY10YNvFPxs16090F2MvvIk/v2JVOqB+gSLm5DU5r/L6tg7zbd6WblkVIpTA=
23:44
Is this the public address where you stored your VEO?
L
23:45
LES
Yes
23:45
How come?
Z
23:46
Zack
Can you point to a transaction on the blockchain where you received value?
Do you know the date when you received veo?
23:47
I am guessing that this is not your actual address.
L
23:47
LES
Wow i bought and mined veo back in 2018
23:48
I had around 80 veos on my wallet
Z
23:49
Zack
I can scan the list of accounts to see which pubkeys have around 80 veo
23:54
<<"[-6,[-7,89.16634946,\"BPf/tTLCrgMh1zjkRQhR+XZ9c72hWGYjp0Roxrt6OmpvG6MyB9bfuFrjVpDXNpvMQz+U1SuuM9qyArvXS3J0Y9I=\"],[-7,88.14423763,\"BLd2a8vvckvg0wPm8C99X1cSJl6s1m/zkpvzbzVOEkLXNr1eXrcVs61hMbgUgxH1Kjgox5MITDG144r0mdCH0Mo=\"],[-7,87.8984795,\"BCTXvpgQ6TH7WBnAMRKRLYM1L+u9zTbDZmTqj+A/g0Yp8eoOXz0LVwtKEVtLCX3w3vlpWPahkQ+AK9SC2FeHz/U=\"],[-7,87.21110637,\"BGmF0pyyEOeDbgKEcTO/aGW+z5azXFcSFi6BEnYP3VyLxpc+ZKoCvRc3MG2gXG0w3Tfc43yawWUa3nK01agVnqs=\"],[-7,86.9884795,\"BDmy1p/boWrkhGW9T1mKYBXuXzMMwtKskUa6Dt5zd3zolXkO/aKvWfSUip7p8lBSCLXQNRtVeMpxrMgK7p73PJI=\"],[-7,86.312,\"BAZd5U9b1UAY5FUWi0W1jkFVoLIfXHIn6mFQdCE07q/wGscrEtaYTHy6Tv3z9tUX1UIdN6gWCjTFN+DxSxkjvAs=\"],[-7,84.54593169,\"BKLR0ENaMRsYwapYhuA+hzgOCY9l1peC7MxXoleiXmYXR23OecjQOxOCT2NNvGMP+1akTZ4UjTy2lS6rpzOT194=\"],[-7,83.63610916,\"BCfTr/soH+3Madbschp3fVTTxfhtgz+VXpd7XdhLYfhjWobhUet3HEI0iAZeIxTrApMfL0XAhj9iaJOrW9n39BM=\"],[-7,83.47759963,\"BAdL6/6AS2OFUMFoE6LE6X+82GbwfjXlgZW03BZ8a1h15P3+gfEBCuXfhNKWaEY3jkwigx2ohsHSbO+t7/mjiV4=\"],[-7,82.26029952,\"BAHFjXzo3p6D5NuvjpMT+A1CNdqu7MKT5QIIcRcyAlOGKARM++vAIqDbu37TBM4s//TEg3zrfkCihLxUUmSE8nA=\"],[-7,81.489,\"BNAO8dJubomjBQDjpRd7RR5N+k0dzy2fl+Qd9h2U1YOu70naM9/SumWw389en4gRUkoL6n1NnZxzVYi63A4JQyY=\"],[-7,81.0,\"BJdnBP8KsiUD6R2pzF0ViU0bzTKH2TOMvuZRRg3yHmxaXaPzZ6IHubmFvsQosMEyJtcp0EUJ6rp+LO8Foqbzi5k=\"],[-7,80.13433,\"BLAUd+2ySxLv8Wd8Io4H1lqAHnCOH9pHfDS3cQw1YjXYFBarCHV0oRKITM1MveCsOx/GllbxoUC0qqh9+lNRUZ8=\"],[-7,80.05588123,\"BHyIZY5yghAkHdZkMUbFOT1TQ+ObX0CZxbRft/N9l9GGAjcZMT3HOcbU3AhOU2mWcgVLzD1nCxEtWH9vGu1/A/g=\"],[-7,78.35917999,\"BCb4XANhxw8VPWbDfznZmO8t3OZF+rw76PmPcaouhaMjrUkhF47BbW3ku7j2R4G8IcT3Z6v3wfczru8q9fDNfjQ=\"],[-7,74.35089438,\"BA0awM2/+FlLfMyIfTE7yXHqrAnIKKsdqmL37jbSaZ1dRU+cB4dkyoE22x1DTwH6EENZdV3Q0Q3/zPcv60+02IE=\"],[-7,72.71939285,\"BA+4Yxs0lPrdzqm9pWNf3sfLBhZTyxM3s78IeKS3TbdmK4f9hDk84H7oEJY612Jq23WFao/hKsDE3xYsu4+V/m0=\"],[-7,70.12118,\"BArHOw652l6mDx9ScZ4nbHlZFhGABmIIlLlvEf5Z8sul2MXwYAHak4rW3FrN0HvCIhE5UUE+ap8CPO2cDjbPESg=\"]]">>
OK
23:54
O K
Did you use Word, or did you take their advice and use Notepad? You definitely cannot use any text editor that will leave headers.
Z
23:56
Zack
there are only 22 addresses with around 80 veo.
s
23:58
sanket
In reply to this message
what about losing some money, and not being able to recover.
Z
23:59
Zack
In reply to this message
I don't understand the question.
25 February 2021
s
00:00
sanket
dm'd you. this goes back to '19
Z
00:07
Zack
oh yeah, the money still trapped in channels. I will try to get that out when I get a chance.
OK
00:08
O K
lol
L
00:08
LES
I did ir in note pas
00:08
Notepad
OK
00:08
O K
In reply to this message
The size of the file should be 64 or 65 bytes -- is it?
L
00:08
LES
Yes
Z
00:10
Zack
you can PM me your private key, and I can try to get it out
L
00:18
LES
Ok
OK
00:22
O K
In reply to this message
Which did it end up being?
EA
00:31
Eric Arsenault
In reply to this message
non-fungible tokens are cool, but feels like it's not really something that will drive adoption in the short term, although one day it could be important if we start doing cross-chain NFT lending, swapping, etc
Deleted invited Deleted Account
J
07:46
Josh
Fantastic!
EA
07:46
Eric Arsenault
🔥 yeah, amazing
07:47
getting close
Z
08:39
Zack
about 48 hard updates in 3 years.
So we average about 1 hard update for every 3 weeks.
Z
09:30
Zack
This is the announcement for hard update 48, which will happen on block 154400, around March 3rd.
The purpose of this hard update is to store receipts in the consensus state about which account addresses accepted which swap offers, and make these receipts available to the smart contracts.
This way the smart contracts can enforce permissions based on who is participating in that smart contract.
In particular, we are planning to use this feature for the crosschain DEX, so you can make an offer to buy VEO.
Here are the same instructions as always for updating: https://github.com/zack-bitcoin/amoveo-docs/blob/master//getting-started/updating.md
MF
09:37
Mr Flintstone
nice
EA
09:41
Eric Arsenault
Now we just need to convince all sellers to start using the DEX :)
09:42
Feels like we will need pricing information or something? People will have a hard time selling at a price without some sort of chart I think
09:42
Unless people will look up on qtrade, then set their price? Maybe that’s fine
JS
10:54
Jon Snow
In reply to this message
Not convince but attract 🖖
s
11:19
sanket
In reply to this message
I guess a demo on how things work can be a good start
EA
11:24
Eric Arsenault
I assume a lot of miners are sellers as well. I think there is a case to be made that if they use the DEX, Amoveo gets more traction, then higher VEO price, so it’s more profitable for them? Do we know who the miners are? I assume some are in this group listening?
J
15:37
Josh
I'm assuming a lot of the offered coins each day come from the miners
15:38
Since we will have both buy and sell offers we will have an order book
15:38
There isn't automatic clearing but an arbitrage bot should take care of that
15:39
So anybody can create a trading graph based on that
Z invited Z
J
16:34
Jeans
Hi Zack, do you have an opinion about razor network. They claim to solve various kinds of decentralized oracle attacks and use POS.
Z
18:49
Zack
In reply to this message
It is basically a clone of Augur.

If there is a team of voters who can steal from you, you need to pay them enough fees so that the long-term expected profit from these fees exceeds the short-term expected profit of stealing from you.

They claim that there is a dispute mechanism to prevent the voters from stealing from you.
But the dispute mechanism is another insecure voting mechanism, which is broken for the same reason.

In Augur they get some amount of security from this kind of mechanism by requiring that the voters have a security bond which is much larger than the amount of money that they could possibly steal.
The problem with this design is that you need to pay the voters to have that much money locked up. This is expensive by the interest rate on that money. So this kind of mechanism requires oracle fees to pay the voters. These oracle fees make the system too expensive, and worse, they create a vulnerability to parasite attacks.
A parasite attack is when someone copies your oracle outcome to enforce their contracts, but they do not pay the fees to your oracle voters. So your oracle voters aren't incentivized to lock up value in the bonds that secure the network, and it breaks.

But really, it is much worse than that. Because voting mechanisms are vulnerable to tragedy of the commons. The amount of money you would need to pay to bribe the voters to break the network, it is only a small fraction of the size of the security bond.

Tragedy of the commons happens whenever the benefits of participating in an attack are centralized to the person making the decision, and the costs of that person participating in the attack are distributed to a larger group.

Additionally, proof of stake does not work. I wrote about it here: https://github.com/zack-bitcoin/amoveo-docs/blob/master//other_blockchains/proof_of_stake.md
J
19:05
Jeans
thank's, all these projects still revolve around the same issues that only Amoveo seems to be able to solve.
Z
20:41
Zack
My new plan to do the refund for the money locked in channels is simpler.
I am going to make a single multi-tx to spend from the developer key in cold storage to give everyone a refund of their money stuck in channels, and I am going to do a hard update to make a single developer reward bigger to cover these funds.
20:43
here is the refund tx.
["multi_tx","BL0SzhkFGFW1kTTdnO8sGnwPEzUvx2U2nyECwWmUJPRhLxbPPK+ep8eYMxlTxVO/wnQS5WmsGIKcrPP7/Fw1WVc=",1,3032851,[-6,["spend",0,0,0,"BKY9ceTTuMuJSHPPBwIE2QOyT6pSSPs6iYaBhVbXa30eyO5Kaq+H24YEVeyXvfSwFNXZFwtDzZt3z7hWFZC0FRw=",1000000000,0],["spend",0,0,0,"BLd2a8vvckvg0wPm8C99X1cSJl6s1m/zkpvzbzVOEkLXNr1eXrcVs61hMbgUgxH1Kjgox5MITDG144r0mdCH0Mo=",450000000,0],["spend",0,0,0,"BPDeeo6Ku4ACi3JuhyCHjyx84HeT61aBo47ebzD+olh70BFejwCvQGXw+/QzU9BzbjUCyBrl1d6cvwIsG63bCxM=",400000000,0],["spend",0,0,0,"BKqvlDkdnQBOHGbPFOanf88Le//PPzVRlsq5znP2WEhFy37RKMgyKN+q8R8sRMJMkB6NmPXyx5EWRvqjQkqjsLY=",350000000,0],["spend",0,0,0,"BF3rw/kC3c5UJ6Lfr/uKxGgDT4mbIHZmf+xffJldnqL0Hf8ilrI6OGdG+TAjJKL3rZPvDuqFUd6tg02CKnRGrr8=",319399996,0],["spend",0,0,0,"BJbr9SpEWwpX4BvJAkp9lXOTsFLrcnVS8/diW1foI8U9llVQ/foDpBiGLIIf2dctVsn/4Gy6Gh7+8iKvprYlLz4=",300000000,0],["spend",0,0,0,"BI9g2BIgPsooWa+ThsTbh93Oc3YtvI9p+RWbX9duUWFqKVqLqzqtp851N0ukM5ZscpEpTxV3zJVNmBv9was+nWM=",300000000,0],["spend",0,0,0,"BKSYQw/88NOUfwBhyXwVuKymkQxZNxJ0NjqAqJQgXKvflmRJ1K1Q70WAIsUtmxa6C30FdcQKPzeEarNIT4mCUKU=",247615890,0],["spend",0,0,0,"BJuFSK/rvU1hFktvgKMMmLTYZPJ0C2jQdEWv4FjeymsY0FiCVqw/rzdDydqA1yGqcOBVBYObxFFy1B5J68H+9L8=",178199999,0],["spend",0,0,0,"BFRoafiD9OwVwLBSe6JLBQmEhK2h28Ns+dO/tWE9krq6rQa+YHYAc7D7Yv+8dXCDnEyP0IkQUxEERY/oiAQpAk0=",150000000,0],["spend",0,0,0,"BE/xUgDuGzJMqZl6xZpP74v+z5ACl6I5Radeh3Jyn0BJeWUWGtgtEuODCE1/iojRUvgGxho3kqkMFjLZimM10lM=",142499988,0],["spend",0,0,0,"BFvgK8kwC8yh+ljQV/Nvpx+95h2STjXKpkusykux5jjgTM83+4exLL3VMj8NRyQeZJduT59Xu65lcHnhahEMPcQ=",100000000,0],["spend",0,0,0,"BJFwMtu8j5VfR6qwuXvZoLaiD+8U0jVvBsDb124RayO3FIrRp+SdwvIhL5+T1IPFaw5TLANGDwqj5whpZ4hWXUI=",99400000,0],["spend",0,0,0,"BHVfQWRx7I1xmlWw5KJ7l9ijq4tcobFCub68jsmCGaEQXSr/hi0Vpz8+wa0v8ytcTEUu4wJwTfC+7q6r+CPYS20=",63999997,0],["spend",0,0,0,"BB3G8DfYtkZurxIxAGw2Y8ELhVx8WyjjqAdoVptOB+tW5cQsj93XGflHJBrFKpgEFWTUKKYKDM8GYPu4eUM+DCg=",54000000,0],["spend",0,0,0,"BKVhyh1az48obacC7XvawtdiOwW/ZC9yPDYMq2n+cALCiKgCR7J5oTmDPyEZ9yQl4KQJKQocK+Jx8DhnCsxsFvQ=",50000000,0],["spend",0,0,0,"BFD1dYbhVe8vEzCmtu/70m+lPKXzDoKIHlNjGiJCXYeGapadChVENendo8G1XskHKfMD8G18kWdrJ2r9ok/iFV8=",50000000,0],["spend",0,0,0,"BLzKYKmvZm3FI7mMaB8Bg3o3k02s3yrfNEEQz6943SwTV2o3aobfKn+NEuT+5fjArx6UsMFbpWDM/7NwesCkc88=",50000000,0],["spend",0,0,0,"BDcgVEOFpHfqm65Q7UBP1BJPDSgRc6NxqisvVfKGkewRxaovzXXNk19lEL0NLV/W4flFG9St49/HqC8M88XJ7ts=",50000000,0],["spend",0,0,0,"BEbgY8a/4EhfUBdSExKnKnsMMF2bceyDMSEOZgRVEBaqBFE8QKG2jiIeMSXDVXgNHhhkD0xktvIn/eJVWnew6LM=",50000000,0],["spend",0,0,0,"BIBQYMWAm3gpss87Sb61Ry3S3RVbfaRQ1dGPs5wtkXNUW0hcgSGgG5iUmYD9ooEqCaK856S/6gYACxGcqEbpUt0=",50000000,0],["spend",0,0,0,"BBaeWhtO7xE0VWQsxca9lRM1Rfogh+BxpAWBepBfbruTSuDMXZhRKYWHTS4vJSLhqXHX3ruL1N8L7ExFo0PNUus=",40000000,0],["spend",0,0,0,"BKmZe39t6VBLi3ilYFQ1KFCMlFTVEDC/s8MMUhvVP9iC4RWJOISlfgJ5VHkYKQeYq86XglMta7CG3Fk1Smw3zac=",39999999,0],["spend",0,0,0,"BMa7Jqz6r85dLZ+qYvLl+q9mknsxVkYy4itjPYLvomyKzeCIMR1k3+RPx9o4iQsAsGI4zO5OFZMPHdd7emOkPEs=",38000000,0],["spend",0,0,0,"BI6HnXdyxaxh4mwcCE43pyzLPd3O8VnVvE4YVZPzdwWc779ovO0kF/R05ucTQDkh1g+ZmYJUwRySyN0EuLCM2Yg=",31446521,0],["spend",0,0,0,"BAbsvrUS7FI6kWcNcFseMz/GiilS/JPcQlV77zfTEqegq6hiNfGeWjkGoZa8VT7wGLk5/bs+DKajNAIR4HWoGTw=",26420000,0],["spend",0,0,0,"BPRgLwiNMtwztZ0lFf+GMCmt8dhSFYU2xj2HHmJqmh9SW8mtZtoq7cyiL1RYcLJkv9xPN/FE7RBy6ZjJzAItqbI=",25000000,0],["spend",0,0,0,"BLnLaIdqxYztoiJuhA08tTy0/evFBRPHvMp+5dyU9+1mFXidCwjVnkKfqqGW7EeQuLKOmh7w6g1UeL16Q7N3Dfs=",25000000,0],["spend",0,0,0,"BDARENYyw+k9ZIpiktBe2puc8k53phU5yeHcurXBREJBD0ceRJWqrEBRvMGg72haKedUk13yzok7BVtOO+5oTRs=",25000000,0],["spend",0,0,0,"BHYEs9hU9HCDSbqkQBIPSX85LeKe9cSbPhx8mw5G0Pc6sS+CG0ouLMF0vxVNNqJQGPn35nVuWxhmpEpfeEkamFg=",25000000,0],["spend",0,0,0,"BCjdlkTKyFh7BBx4grLUGFJCedmzo4e0XT1KJtbSwq5vCJHrPltHATB+maZ+Pncjnfvt9CsCcI9Rn1vO+fPLIV4=",23500000,0],["spend",0,0,0,"BHaYgEEIG2+Wh5rzl/PXBGtB4yNFyOuMn/+8wksPjV0Zb9vMw4SCg7ZTYvOhMfQ2h+eQ3c1Iyly/yTtpj2sYTjY=",20000000,0],["spend",0,0,0,"BLAlA4AeIlFdqaVOfguqBSVPcfxe3EMsY3femUE7ysF2m2Wjs4V7h+QgDubMjsYiXPLxpglsj4JAeqVOKE2fDO8=",20000000,0],["spend",0,0,0,"BNIxPJx1wB/qN
20:43
dzupIMfvE2I3tKiF+AJZaonYn67MEHcd7nSZNbIL2b9RxF1cYy7WGVEGcY=",20000000,0],["spend",0,0,0,"BCu9JlOdFuQOnPtRUbjkFNFDGuMutaMoyaB4UocqOcRVLN3NGMHPvf491Z2cEE95Q/Mv0f5QWrzG4kI0EDGuxlc=",20000000,0],["spend",0,0,0,"BDvn2ZzWhZVHFtSlimlXHlaQrm4U0JUOGuqxlGGYVcxIQG1j+789Gc6siKlb5Uwfn74Vzg3FNAvwUQUwgKOiajM=",19000000,0],["spend",0,0,0,"BMxlBV2E9v1Ae2JzefpQ50WnQLPCKNKOPrskQGqJevb/9vinC68FDzUxGIwH28gYvwT52yRw0Q2dH4zqITwIMB0=",18385115,0],["spend",0,0,0,"BGnOMIxvRYmnaty45eFwSRx9RYg2JWD0KSW6OfhYKzlvYKEfx2uy9n1qW9enjtHt8esUh3IjVd/ELcm9vElFYjg=",15000000,0],["spend",0,0,0,"BPsFCYnjgcT8stusvlFXy4P/+r52W5Gx2uadN0G0UeeiGA1IRZNA/oGlft1B+hXYel23qEuumuB/9o/c1MlIQmI=",12000000,0],["spend",0,0,0,"BH39jH+8z1sfEYS6AwTcGV0Z5qZSDMZLMTPsI8kO0c3uAeAU+ZAWHpjYerBrF3WnPibUJs/LGLzzMtJjl5+mgZ0=",11029916,0],["spend",0,0,0,"BHn2NGCBQIoLtzVBetGUV8bWtYWmIzJYFJu7rxEzmtfYh3E3deJusjNoabROWXmI5RS73WZvQUlOiG38VVkc9Qg=",10000000,0],["spend",0,0,0,"BBjW44FliUMgaA1TG2ZwwsH+syWG9L+pKArgIcefRL4TQFevw75dGl9jj9AXWsCQy+W/hIsbHUrbY9udavfaNyU=",10000000,0],["spend",0,0,0,"BHTrPpHSLQiJH03E6v4jXVfCX9ZqV5RSPJQYTvTMSy8m/6mH+18YYRLzolyvJY0eX/oyuK8GfIavUDGbc+mykGU=",10000000,0],["spend",0,0,0,"BGPrvm8XP5DC556dx/1pWOPlwUlX17a8nzmorl5ZQlLCDJ8LU3Ntq30p0b6b8e0zb/S6J24hV7zMsf2UtC/7FlA=",6091488,0],["spend",0,0,0,"BGXa3R/j1CoAgHhdWJTuVuZ7V7H93lcqFxh5R3LB5qmwiwpKh3yw4ZXnpRmRw/eB1uL+q4ezwm2DQvAad0BO3Ps=",5000000,0],["spend",0,0,0,"BAqarsT50uMZCuxyg4G3CDxmJsUbS5E2Xp0pbOGD+h/+nZ9veJhxHuEPrmBV4fTko7jijjQzQ6T499TJ2zpsl2c=",5000000,0],["spend",0,0,0,"BEG+I/FuvFLCIrJFzY4l8H/mkM9qKnolj55twLsRzg3ZV0pn58LuAHbnHrVD5R80wjMImGexoDAgU5yA8ZyseIA=",1000000,0],["spend",0,0,0,"BCjNW64/Tn2FvKo/iVYmoXXN6yQNjyRrgPsherPWr+JPgVZmUkYBD3LR090XYdC+ovv6tdsyxkSn8qzUUJ4rx/0=",899999,0],["spend",0,0,0,"BLeYcbgjJZdtCpVAVoY6gxepK9iJlBph6koUnhdNWFz8eJyZlXcqbBBuWpCMfzERfnp5Ie8awvtRkosOgiYVxT0=",347950,0],["spend",0,0,0,"BGy8XCrFwPcr0Sna9sRg36gUSzFxHA6f1faWO8WwSscgusuMSst2/VQzHe423jhx80NP1rVoQIVTH60AVotuemk=",100000,0]]]
Z
22:13
Zack
This is the announcement for hard update 49, which will be at block 154500, around March 4.
The purpose of this hard update is to give a refund for people who had money in the old channel system. We turned off those channel txs, so the money is trapped inside, and this is the only way to get it out.
Here are the same instructions as always for updating: https://github.com/zack-bitcoin/amoveo-docs/blob/master//getting-started/updating.md
26 February 2021
Richard Charles invited Richard Charles
IS
04:51
Ilmu Somebody
Hey @zack_amoveo, what do you think of this https://reflexer.finance/ ?
05:01
Or to be a little less lazy about the phrasing of my question: do you do stable assets in a similar way (using a PID controller), I still haven't read up on what 'leveraged veo' means precisely.

Edit: read up, the leveraged veo is literally just that (so my intuition was correct), you put up a veo as collateral and get two subcurrencies.. one stable and another floating, if the capacity created by leveraging the collateral is not enough to cover the stable side then the stability is lost otherwise it holds. I'm reminded of the pictures you made, they fit this to a T. However liquidity is once again an issue fwict because who'd take the other side? I guess if veo goes up you'd earn more than by holding normal veo so in that sense it's good. This is btw the most archetypical derivative so I am a bit ashamed that I asked this question to begin with.
Deleted invited Deleted Account
09:20
Deleted Account
Hi! I studied the Amoveo project. It looks extremely promising. Success in development.
JS
10:34
Jon Snow
In reply to this message
You are not wrong
EA
11:01
Eric Arsenault
💪 *soon*
Deleted invited Deleted Account
27 February 2021
Deleted Account invited Deleted Account
D
00:09
Deleted Account
Wow I just saw how bad the crosschain Dex UI is
00:09
00:10
Perhaps reach out to Clinton Bembry? He basically designed all the UIs for yield farms etc, most notably YAM
00:10
He's a busy guy and doesn't need the money but he might know someone who can help
00:13
Seems like a matter of urgency tbh. 🤷‍♂️ Only way you're going to get people to use the dex
00:14
And you're going to need an easy to use bridge
00:14
Also what are the incentives to use this over something else?
J
00:48
Josh
UI is hard but still easy compared to figuring out incentives
x
00:53
x
if it's designed for big traders, they don't care about UI, or incentives, they just think DeX is safer
Z
00:54
Zack
In reply to this message
bridges, as I have seen them, are bad design. They involve trusting custodians to hold your money for you.

Amoveo uses trust free mechanisms. So you aren't paying someone to not rob you, so Amoveo can be a lot cheaper.
OK
06:14
O K
I don't think you two are using the same sense of the word 'design'
suqin chen invited suqin chen
Yasmin Silva invited Yasmin Silva
Z
08:08
Zack
All the orders on qtrade between 0.0012 and 0.002 are getting matched.
Seems like a profit opportunity for a market maker.
Z
10:39
Zack
I sent out the refund for money trapped in channels.
Z
11:06
Zack
This was the first time i used the developer reward private key. I got to test out cold storage.
Matt Sommers invited Matt Sommers
28 February 2021
Z
01:32
Zack
I tested out Amoveo in ubuntu 20.04.
There was a bug preventing multi-nodes tests, so I fixed that.
I also redid the linux dependencies for ubuntu, so it can install a little quicker.
IS
01:33
Ilmu Somebody
have you considered packaging it with guix? then the build is reproducible and guix also offers a way to bundle a static binary with all dependencies that will work on any linux.
Z
01:35
Zack
this is the first I have heard of guix, it looks interesting
IS
01:37
Ilmu Somebody
glad you think so. It's something I'm investing a lot of my time into.
01:37
(although none of that has touched upstream yet sadly, I'm just trying to make it compatible with HEADS)
Norberr invited Norberr
1 March 2021
Bilel S invited Bilel S
Z
08:28
Zack
I updated the chalang compiler to take advantage of shorter encoding of integers when possible.
1 byte instead of 5 bytes for integers less than 37.

and I updated the new smart contract, the one for making orders to buy veo.
It is taking advantage of the merklized abstract syntax tree to record less info on-chain. Now it only writes the code that actually gets executed.
the smart contract went from 1800 bytes to 610 bytes.
Kelly W. invited Kelly W.
Z
19:50
Zack
im working on moving the new smart contract into javascript.
We have a chalang compiler in javascript, so I think this time I am going to have chalang code embedded in the javascript file, instead of copy/pasting bytecode.
This way you can write smart contracts totally from the javascript side without needing to install the full node or understand erlang.
19:53
the javascript chalang compiler is nice. it has better error messages.
you need to declare variables before you use them, so if you misspell something, it gives an error message. the compiler in erlang would just assume you are making a new variable.
20:01
I might make a contract experimentation page, where you can put chalang code, and it compiles it to bytecode for you, and gives helpful error messages if something is wrong.
That way people can try out chalang without downloading anything.
20:04
in a lot of ways the chalang VM is more similar to Bitcoin script VM than it is to EVM.
Chalang contracts are immutable, and you are trying to provide evidence that unlocks them.
The evidence is more chalang bytecode that gets appended in front of the immutable contract.

but with bitcoin, the output of a contract is true or false. for whether the evidence is valid.
for chalang, the output is a number for how to divide up the value from the contract between the subcurrencies, and a delay for how much time other people have to provide counter-evidence.
2 March 2021
IS
01:58
Ilmu Somebody
In reply to this message
ah this clarifies my mental model, thanks you. I have been a bit confused about this aspect of the contracts (delay + payouts)
Bo Yan invited Bo Yan
Z
09:37
Zack
https://github.com/zack-bitcoin/light-node-amoveo/blob/master/src/js/buy_veo_contract.js
I am moving stuff into javascript. the smart contract for making offers to buy veo.
This time I have the chalang code hard-coded into the file, and it gets compiled to bytecode inside the light node.
Z
10:04
Zack
for now im just making a library to build the contracts, tx types, and swap offers that we need for this new tool.
That way when I am working on the UX, or communicated with the API for the p2p derivatives server, I wont have this code mixed with that code.
EA
10:13
Eric Arsenault
Seems like a good investment
mx
10:24
mr x
+1
Stas_p2pb2b invited Stas_p2pb2b
3 March 2021
Z
09:53
Zack
https://twitter.com/zack_bitcoin/status/1366929494456606720?s=20
I made a tweet celebrating the anniversary of amoveo's genesis block
EA
10:30
Eric Arsenault
🥳 congrats on 3 years running everyone, let’s hope for a killer 2021
OK
10:41
O K
Awesome guys! This project has come a long way, and it's still a hidden gem. Great work Zack and everyone
Deleted invited Deleted Account
T
12:27
Topab
Congratulations Amoveo!
BY
12:36
Bo Yan
When lamb
12:36
I have 20veo
TG
13:09
Toby Ganger
Very exciting. This is the year my VEO bags almost break even! I can taste it.
4 March 2021
Deleted invited Deleted Account
00:43
Andre has been doing some cool cross chain stuff
D
02:14
Deleted Account
In reply to this message
We going to reach out to him then? (•‿•)
AK
03:38
A K
2021 - year of crosschain!
03:39
I'm a bit surprised he didn't cover what Ren or Keep have working already for BTC to ETH bridges
EA
03:39
Eric Arsenault
yeah, he's not using REN / Keep
03:39
probably why
Deleted invited Deleted Account
Deleted invited Deleted Account
EA
13:06
Eric Arsenault
Yes, please make one
M
14:58
Minieep21
😂😂😂
D
15:47
Devender
In reply to this message
Well I see NFT everywhere.
15:47
NFT is replacing DeFi trend now
Z
15:48
Zack
If nft is popular, where did cryptokitties go?
M
15:51
Minieep21
It's all hyped now for sure but some usecases will stay around and be widely used
Z
15:56
Zack
Fashion is basically random. Things become temporarily popular for no reason.

Finance, as in, trading risk, has been a core part of the economy for longer than written history.
The primary motivation that caused humans to invent writing in the first place was so we could record our derivatives.

The ability to trade risk is essential to the success and survival of humanity because it enables economic specialization. Financial derivatives will always be important, and as the economy grows they will only become more important.
b
16:29
bitcoinsfacil - pedro
Art is important for many people. nfts are finding their place on those people
16:29
Next bubble probably, but useful nonetheless
16:30
Don't forget gaming industry is huge @zack_amoveo
Z
16:36
Zack
Donating art is a popular tax avoidance strategy.
16:38
i don't see what blockchain tech has to do with video games.
Z
17:26
Zack
I added a new section at the top of my explanation of why PoS doesn't work. "The Attack"
Previously I had focused on trying to show that PoS fails to meet the standards of cryptoeconomic security. That it is impossible to prevent all kinds of attacks. This kind of impossibility proof can be difficult to understand.

My new section is a lot clearer because it gives one specific attack which should always work against PoS blockchains.

https://github.com/zack-bitcoin/amoveo-docs/blob/master/other_blockchains/proof_of_stake.md
B
17:32
Ben
all only theory
17:32
while POW Blockchains getting ripped on a weekly base.
17:32
prove your theory by attacking one POS Blockchain, according to your theory it is almost free money right?
Z
17:33
Zack
GPU POW blockchains are obviously not secure
17:33
In reply to this message
im getting to it. The amoveo smart contract system is improving every day.
B
17:34
Ben
In reply to this message
that means amoveo is not secure.
17:34
it is even worse, in amoveo 1 pool has 100% of the hashrate and therefore full control over all TX
Z
17:34
Zack
amoveo is using FPGA. better than GPU, but still not very secure.
We are optimized for ASIC production to be as easy as possible, so if we get popular, we should achieve security soon.
B
17:34
Ben
how much more centralized can a blockchain be?
17:36
i would say it is currently way easier to bribe SY (only one party) then attacking any other POS blockchain, where you have to deal with 100 unkown staker
Z
17:37
Zack
In reply to this message
https://twitter.com/zack_bitcoin/status/1364886231285383169?s=20
decentralization is not the same thing as security.
B
17:37
Ben
thats a bullshit phrase.
Z
17:37
Zack
In reply to this message
Bribes are actually cheaper when there are a larger number of stake holders. Because of tragedy of the commons.
Bribing just Sy is more expensive than bribing 100 validators who divide up Sy's control.
B
17:38
Ben
i would say there a a huge gap between your theory and real world.
Z
17:38
Zack
which stage of the attack wouldn't work?
B
17:39
Ben
dealing with 100 individuals
Z
17:40
Zack
How does a PoS blockchain deal with 100 individuals to get them signed up as validators, if dealing with 100 individuals is impossible?
I
17:40
Instinct
“We need to get >2/3rds of the validators to lock up a second security bond, the attacker bond, on a different blockchain, that is greater than or equal to their security bond on the PoS blockchain.”
17:40
This will be difficult
D
17:41
Devender
There can be non monetary aspect as well. It's easier to kidnap 1 miner than 100 validators lol
Z
17:41
Zack
In reply to this message
it was possible to get them to bond onto the first blockchain. if the second blockchain is paying even more, why wouldn't they?
I
17:42
Instinct
In reply to this message
Because they’ll think it’s an attack or likely a scam. They won’t trust it.
17:42
& will not consider participating
Z
17:42
Zack
In reply to this message
The 1/3rd who don't sign up will lose their entire bond.
17:43
the 2/3rds who do sign up can cash out before the attack occurs.
B
17:43
Ben
okay, lets make an Oracle " if Zack that proves his theory of POS weakness by first of June 2021, Ben will wear a shirt which states: Zack was right about POS Insecurity for one Week and twitter about it"
Z
17:45
Zack
In reply to this message
If the attack is guaranteed to fail to achieve 2/3rds participation of the stakers, then that means signing up for the attack is free money.
You get paid more than normal bonding rewards, and since the attack never occurs, there is no risk.
I
17:46
Instinct
In reply to this message
I can definitely see the attack happening in the future due to this flaw. But you will need to convince them to willingly attack their own blockchain. It is easier said than done regardless of the small potential financial gain from participating vs not
17:46
In reply to this message
Interesting
Z
17:47
Zack
In reply to this message
PoS blockchains let anyone sign up as a validator, right? People who understand the attack could sign up as validators ahead of time.
I
17:47
Instinct
In reply to this message
It depends on which one. I think a lot are dpos varients
Z
17:51
Zack
in dpos, validators who are participating in the attack, they are earning more rewards. they could pass some of the extra rewards to their electorate.

They could use the extra rewards to fund propaganda to get more votes.
17:53
delegating to someone who isn't participating in the attack is dangerous, because if the attack occurs, then the stake you delegated will get burned.
If you delegate to someone participating in the attack, they could even pass some of the profit of the attack to you.
Z
18:15
Zack
Amoveo's smart contract language seems ideal for doing these kinds of attacks.
We keep the smart contract off-chain until enforcement, so the attackers can maintain privacy.
Our oracle can easily reference events that occur on other blockchains, like how we do for the crosschain DEX.

Maybe after we get the crosschain DEX working in both directions, and we get the perpetual stablecoins working well, then we can start making the smart contract for attacking PoS.

The smart contract advances in the crosschain DEX are going to be important for attacking PoS, because they make it possible to update a live contract, and have permissions in who can update it.

The perpetual stablecoins are going to be important for doing the attack, because we need the attacker bond to stay more valuable than the bonds on the PoS blockchain we are attacking.
18:17
If we successfully take out some PoS blockchains using Amoveo smart contracts, I think this would bring a lot of attention and investment.
s
18:18
sanket
In reply to this message
what do you mean?
Z
18:22
Zack
If you can use Amoveo to profitably attack PoS blockchains, and the attack involves locking up large amounts of VEO, then people will want to buy up enough VEO to do these profitable attacks.
People who had been investing in PoS will go through some sort of crisis management, and want to move their investments elsewhere, and Amoveo will be in their attention at that moment, since Amoveo showed that these attacks are possible.
18:30
A lot of the cryptocurrency game is in trying to show that your blockchain is more secure, or more indirectly, that it was developed by a team who really understands security.
If we can exploit the flaws in PoS, that shows we have a deeper understanding of cryptoeconomic security than all the teams who had built PoS blockchains. So whatever reputation they had built up, a lot of it goes to Amoveo.
J
19:41
Josh
There are some big targets out there but the biggest target will be ethereum.
19:42
Maybe if some other chains get attacked first, they'll change their mind and keep PoW
Z
19:43
Zack
There isn't enough VEO available to build contracts to go after the big PoS blockchains immediately, but I think if we start with small PoS blockchains and work our way up, we could get to the big ones eventually.
J
19:43
Josh
Yeah
IS
19:46
Ilmu Somebody
Finish the perp stablecoin and the dex and lets do this. If we can kill one PoS chain then that will bring momentum and we can attack the rest. If you think bitcoin is worth a lot then wait until this succeeds lol
J
19:47
Josh
Good for btc and veo, bad for cardano, good for the space in general because people can focus on safe designs.
IS
19:49
Ilmu Somebody
In reply to this message
Yes. Exploiting flaws is good, people should be corrected when delusional. Better for everyone.
s
19:56
sanket
In reply to this message
Binance smartchain is a good start
Z
19:57
Zack
i thought binance was 21 servers all controlled by one guy.
This attack only works against PoS, not against centralized exchanges.
s
20:02
sanket
Ok.
I
20:02
Instinct
In reply to this message
😂 yep
20:02
In reply to this message
+1
R
20:54
Ri
https://eprint.iacr.org/2021/232 "This destroys the RSA cryptosystem." Is this real? if so what are the immediate implications for world?
DV
20:57
Denis Voskvitsov
mostly hype than real menace
https://sweis.medium.com/did-schnorr-destroy-rsa-show-me-the-factors-dcb1bb980ab0

anyway, while you're using RSA keys of 4096 bits and longer you're fine for now
R
21:00
Ri
In reply to this message
ty. phew.
5 March 2021
I
00:57
Iridescence
In reply to this message
I like this. I look forward to putting VEO behind such an effort.
Zack changed group title to «Amoveo ♥🧿»
EA
01:19
Eric Arsenault
whoa, upgrade! :P
JT
01:38
Jehan Tremback
"Someone is publicly giving out bribes to vote for the blockchain's destruction. I don't know how many other people have signed up for the bribe. If I sign up, and the attack fails, I can keep the bribe and am not punished."
01:39
if I sign up and the attack succeeds then i lose the money locked up in my PoS coins, right?
01:39
seems like a big risk for a small bribe
Z
02:01
Zack
In reply to this message
No.
If you sign up and the attack succeeds, then you unbonded the vast majority and cashed out of that blockchain before the destructive part of the attack occurs.
JT
02:20
Jehan Tremback
would this involve selling the coins?
Z
02:20
Zack
Yes, probably. But not necessarily.
02:21
Cosmos unbonding period is 3 weeks i think
02:21
As long as the attackers have 100% control, and block any new validators from joining, they can unbond 99% without losing 100% control.
JT
02:40
Jehan Tremback
how the hell are they going to sell the coins?
02:40
the price will be crashing hard
Z
02:43
Zack
They dont have to sell if they dont want to
02:44
They are still incentivized to participate in the attack, since non-participants lose their entire bond, and dont get compensated with a bribe.
b
21:48
bitcoinsfacil - pedro
I don't think marketing works like that Zack, if you attack a pos blockchain people won't move towards you because of that.
21:49
Amoveo shouldn't be about destroying but about positive human interactions
21:49
I bet you can find a better way to apply your intelligence
I
21:50
Instinct
In reply to this message
If POS is insecure, attacking it asap is the best thing you can do before even more money is Locked in doomed protocols
b
21:50
bitcoinsfacil - pedro
From my latest #defi research the only thing Amoveo needs now is to put in practice a single good product that is working now in defi.
21:51
In reply to this message
But this is not Amoveos job
21:51
I don't see why attacking others will bring people here
21:51
Doesn't work like that. Never
Z
21:55
Zack
Lots of benefits from a successful strategy to attack pos protocols.
We can profit from the double spend.
We can show that amoveos team has a deeper understanding of security than all these pos projects.
It shows a usecase of amoveos smart contracts.
It would bring attention to amoveo.
It would prevent more money from being destroyed in protocols that cant work.
It would redirect the effort of developers from protocols that cant work to protocols that can work.
b
21:56
bitcoinsfacil - pedro
Is this for real?
21:57
What is Amove the USA of the cryptosphere? The police of the world?
Z
21:57
Zack
It is a race.
Which smart contract platform will develop the capability to attack pos first.
21:58
In reply to this message
Police get paid to stop crimes.
What we are doing is more like treasure hunting.
b
21:58
bitcoinsfacil - pedro
Am I the only one that thinks this is crazy?
Z
21:59
Zack
Billions of dollars of free money on the table. You would be crazy to not try and get your cut.
b
21:59
bitcoinsfacil - pedro
Well then do it. Get those millions and put them into amoveo holdres
21:59
but don't call that publicity
21:59
sorry, don't call that marketing, call it publicity
21:59
the really bad one.
x
22:01
x
In reply to this message
it's harder to attack if the pos blockchain is centralized? i mean 1 person controling more than 50% of the stake..

if that is the case, now they know how to protect themselves , become completely centralized..
Z
22:01
Zack
In reply to this message
Right. This attack is less effective if it more centralized, and completely stops working if one person has more than 33% or 50%, depending on the version of pos.
x
22:03
x
Then, they seems safe then? because centralized companies can survive for a long time.
b
22:04
bitcoinsfacil - pedro
When is the cool frontend for amoveo coming?
Z
22:04
Zack
Bobchain used to be a joke, but people are taking it more seriously all the time.

What happened to egold then?
b
22:05
bitcoinsfacil - pedro
Product market fit was the excuse
I
22:05
Instinct
In reply to this message
🤔 this does seem like a barrier to participating in the attack
b
22:05
bitcoinsfacil - pedro
Millions are locked into ethereum contracts, seems there is already some market to fit in
Z
22:05
Zack
From a cryptoeconomic perspective, trusting bob to be the blockchain doesnt work, because we need to pay him enough so the long term profit of fees exceeds the short term profit of stealing.
22:06
In reply to this message
Did you look at wallet.html recently? Do you have suggestions on what you would like to see changed?
b
22:06
bitcoinsfacil - pedro
Are you talking about this?
22:07
Can't send media here
22:07
But the wallet.html that has not even a single color in it?
Z
22:08
Zack
In reply to this message
Your options are to continue being a staker, and lose your entire bond.
Or you can participate in the attack, which lets you sell your bond before the attack starts, and you profit from the double spend.
Or you can just sell everything before the attack starts and be uninvolved.
22:08
In reply to this message
The tab that is currently active should turn red
22:09
In reply to this message
Do you have suggestions involving colors?
b
22:09
bitcoinsfacil - pedro
Zack hace you tested similar products on other blockchains?
Z
22:10
Zack
Wallet.html has a lot of tools in it. Many dont exist on other blockchains.
b
22:11
bitcoinsfacil - pedro
Well but we need one that acts as a showcase
Z
22:11
Zack
Ive looked at some uniswap frontends.
Our version seems better, because it is combining lots of markets to give the best possible price.
b
22:11
bitcoinsfacil - pedro
Ok cool
Z
22:11
Zack
Thats the "swap" tab for us
b
22:11
bitcoinsfacil - pedro
Don't you wanna copy the frontend of uniswap and place it on yours?
Z
22:13
Zack
In reply to this message
Copy which part?
A nice feature of wallet.html is that your keys stay loaded even when you change tabs.
It is giving you access to a lot more than a single uniswap interface.
22:13
Uniswap has lots of frontends. Idk which one you are referring to
22:14
The swap tab is pretty similar to a uniswap interface already. Is there something in particular that you would want to see changed?
b
22:16
bitcoinsfacil - pedro
Maybe I'm checking something different
22:16
We are talking about this ? > http://159.89.87.58:8080/contracts_list.html
Z
22:17
Zack
Our uniswap clone is combining lots of markets, and it automatically deposits money into contracts to create subcurrencies, and combines the subcurrencies back to their source.
It is doing things that ethereum is incapable of doing.
22:17
In reply to this message
No.
b
22:17
bitcoinsfacil - pedro
Z
22:17
Zack
In reply to this message
Yes
b
22:18
bitcoinsfacil - pedro
how can you compare that to this >https://app.uniswap.org/
Z
22:19
Zack
In reply to this message
Whats the difference?
You choose an input token, and an amount to spend, and an output token. It tells you how much you can buy. Then you click confirm to publish the tx.
22:20
Should the buttons be pink?
It needs a unicorn?
J
22:20
Josh
@bitcoinsfacilcom is talking about the css styling
22:20
@bitcoinsfacilcom styling is very easy, you can do it yourself in a few hours
22:21
If your style is better you can keep the ui fee
Z
22:22
Zack
I can add a unicorn if that is what it takes
b
22:22
bitcoinsfacil - pedro
yeah that would be cool
Z
22:22
Zack
Haha
b
22:22
bitcoinsfacil - pedro
or the Amoveo logo for a change
Z
22:23
Zack
I could draw the interface on paper, take a photo, and use html canvas to make it clickable.
R
22:23
Rom
Paperswap
x
22:26
x
should there be more tabs? tabs for prediction, currency trading,futures, options trading, gamling , each tab make it easy to do different task
IS
22:27
Ilmu Somebody
In reply to this message
You are thinking about this upside down. The attack on others is convincing them of a lie. Delusion is not a healthy state of mind. If amoveo can demonstrate that these systems aren't secure then that is good. The sooner the better.
Z
22:28
Zack
In reply to this message
Scalar/binary are the 2 kinds of prediction.
Dex is for crosschain currency trading.
Swap is for synthetic currency trading.
I think it doesn't make sense to have options in a blockchain. Other kinds of derivatives are better here.
22:28
In reply to this message
Gambling, again, you probably just want the swap tab.
Or you can use the binary/scalar tabs to make new topics to gamble on.
x
22:29
x
I guess it's hard to demonstrate tho, because it's possible for PoS blockchain to be controled by a few people that know each other. if a PoS blockchain is competely centralized , you can't demonstrate,
22:30
probably a lot of PoS blockchian indeed are centralized completely
IS
22:30
Ilmu Somebody
In reply to this message
Ultimately what we care about is security, not of some platform, but of our species. Politics and economics are incredibly corrupt and full of delusional people making imaginary money destroying our habitat.. if we can build cryptosystems that are not as vulnerable to delusion then that would go a long way towards our security.
x
22:30
x
Ripple is still alive
Z
22:33
Zack
In reply to this message
Yeah, thats a good point.
A centralized product that looks like it could be decentralized is different from a centralized product that we know is centralized.
b
22:33
bitcoinsfacil - pedro
that is coming from a project that holds everything on github
22:33
wake up Zack
22:33
stop listening stupidity and focus on amoveo
x
22:33
x
In reply to this message
OK...most users don't know that yet. Probably it's a good idea for someone to develop different frontend for different purposes then,
22:35
by adding a ' currency trading' tab for example, you can add a lot of custom made UI/botton for that type of trading,
I
22:35
Instinct
In reply to this message
Agreed
Z
22:36
Zack
In reply to this message
Its nice jumping between tabs without reloading your keys.
Also, the tabs can share data, so we dont have to re-download certain things.
Block headers for example, and the subcurrencies associated to your account.
22:36
In reply to this message
Isnt that what the crosschain dex tab already is?
x
22:38
x
crosschain dex is one example , yes.
22:38
another type of trading is CFDs
22:39
i think , there should also be a tab named "prediction markets"
Z
22:41
Zack
In reply to this message
How would that be different from the swap tab?
x
22:42
x
new users don't know what a 'swap' is
IS
22:43
Ilmu Somebody
In reply to this message
It would be labelled differently, not everyone has all the isomorphisms in their head. I think maybe just listing the isos would be a cleaner solution
x
22:43
x
they know what is prediction market,
Z
22:43
Zack
Since im making all these tools, i think we have the opportunity to make a UX a lot better than what ethereum offers.
The tabs can all share data and smoothly link to each other.
While ethereum has a bunch of independent web pages developed by separate teams for different goals.
22:44
In reply to this message
Ok, we should rename it then
22:44
Or maybe each tab should have a text description when you click on it, so you can read what that tab is for?
x
22:52
x
text description under it definitely helps, tab name just need to be what is already on our minds,

CFDs , futures trading, options, prediction markets, those are the terms that are on most people's minds already...

That's why i wonder should a tab be created , and UI tweaked for each purpose,
22:54
it's even better if the UI can look similar to the CEX's or traditional brokers' UI for trading
Z
22:55
Zack
Prediction markets are either scalar derivatives or binary derivatives.
Cfds are a kind of scalar derivative.
I think options and futures dont make sense in a blockchain context. You can trade your risk more efficiently with scalar and binary derivatives.
B
22:55
Ben
the interface should be more eye friendly and easy to use, the uniswap is and good example. Average joe understand the logic and how to use it instant. with amove wallet.html it is very diffrent
Z
22:56
Zack
In reply to this message
What exactly would you change though?
Our swap tab is asking for exactly the same info as a uniswap interface, and providing the same feedback.
x
22:56
x
In reply to this message
Problem is no one know what scala and binary derivatives is ...

They only know the terms i mentioned, which is used by tradional brokers also.
Z
22:57
Zack
In reply to this message
Binary means you either win it all or lose it all. Like betting on a sporting event.
Scalar means you win part of the money. Like betting on the price of something.
22:58
We could have more tab buttons that all load the same interface?
22:58
With names like "cfd" or "futures"?
x
22:58
x
I bet the 2 terms might scare users away, they will find the 2 terms unfamiliar
B
22:58
Ben
In reply to this message
looks like you never really used uniswap
22:59
uniswap does all the logic automatic and the user has an instant results
x
22:59
x
In reply to this message
Yes, I think that's not a bad idea....
Z
22:59
Zack
Most users arent creating new contracts anyway.
They just want the swap tab, which lets them trade any contract.
22:59
In reply to this message
You dont like the lookup price button? Would rathwr have that button clicked automaticaly?
B
23:00
Ben
for example, if want to sell 10 ETH vs $Token on uniswap i put in the 10 in the eth field select the token and it shows me the price and total i get.
23:00
then i hit swap and i'm done
Z
23:00
Zack
I can make the lookup price button get clicked automatically when you type something, sure
B
23:01
Ben
not only that
IS
23:01
Ilmu Somebody
In reply to this message
Hahaha
x
23:01
x
In reply to this message
not exactly same, it's a matter of definition, you can add a 'futures' tab, and explain what 'futures' means in this context, and explain the difference /advantage compared to traditional futures.
B
23:01
Ben
also the price impact to the liquidity pool is importent
23:01
etc.
23:02
spend some time with uniswap and you will find out why people love it so much
Z
23:02
Zack
In reply to this message
Is that info not provided?
I thought it was. It says "slippage"
B
23:02
Ben
if i for example want to exchange 10 ETH to a very illiquid token on uniswap it warns me that my swap would drive the price xx% up
Z
23:03
Zack
In reply to this message
Yeah, it says the slippage in our interface too
x
23:03
x
In reply to this message
and this
Z
23:03
Zack
In reply to this message
I need you to be more specific in what you want to see changed
B
23:04
Ben
In reply to this message
i don't see that
Z
23:04
Zack
Did you click "lookup price"?
23:04
It doesnt let you trade until you lookup the price
23:04
You dont need to load a key to test this out
B
23:05
Ben
ah saw that now
23:05
but honestly that is all very confusing
23:05
and i guess the fees are wrong calculated btw.
23:06
selling 10 veo would lead to 5.99 fees in veo
23:06
the direction of the interface is good, but it is still miles away from beening a competitor
Z
23:12
Zack
In reply to this message
Ok, ill look into that
x
23:15
x
In reply to this message
another example would be, probably adding a tab for ' crypto or currency derivatives trading', with some pairs added, veo/btc, eth/btc, btc/USD etc( people don't need to enter that manually). (will that work well when market cap of veo is small?)

And the UI should be similar to traditional broker..
Z
23:17
Zack
In reply to this message
It does list the most popular 10 or so assets in the swap tab.
Or are you talking about the dex tab?
23:17
We could add a button to type in "bitcoin" and "BTC" for you. But you need to put in your address yourself.
IS
23:25
Ilmu Somebody
I think amoveo is just missing a 'media personality' that does videos walking through the UI and putting into context
x
23:29
x
In reply to this message
after: which currency to buy: the list in the dropdown menu is confusing.


Most people usually don't think of those long lines as 'currency' ( so that need to be explained)
23:35
In reply to this message
it just need better explanation,
6 March 2021
x
00:05
x
Also, futures, options , lending, insurrance etc are the terms used in traditional finance, also used in ethereum based defi.

Amoveo didn't mention those terms, the market don't know how to categorize amoveo and compare it to traditional markets, so they probably won't see clearly the value of amoveo based derivatives..

The prediction market use case is clear tho.
EA
00:11
Eric Arsenault
I think we just need to focus our UI efforts on the DEX once Zack finishes his updates tbh, not really much benefit in doing that now
J
00:25
Josh
In reply to this message
+1
JT
00:50
Jehan Tremback
I think that using amoveo to attack a PoS blockchain would be a great marketing move. but the attack won't work
Z
00:51
Zack
In reply to this message
are you willing to bet that it wont work?
JT
00:51
Jehan Tremback
hell yea
00:51
what are the parameters for the bet?
Z
00:51
Zack
if people are willing to bet that the attack will fail, that is an additional source of funding to help execute the attack
JT
00:52
Jehan Tremback
ok how do we get started on this bet?
x
00:52
x
is that a waste of time? unless you make a lot of profit for attacking, maybe big miners are interested in attacking proof of stake blockchains?
Z
00:53
Zack
In reply to this message
Im not ready to bet yet, I want to add some more capabilities to Amoveo first so we will be ready to do the attack.
JT
00:53
Jehan Tremback
it proves that zack is right and everyone else is wrong. right now everyone thinks that zack is wrong and everyone else is right. that would be great for amoveo
00:53
what would the odds be?
Z
00:54
Zack
we would probably make a constant product market, and let anyone participate in the bet.
B
01:00
Ben
In reply to this message
i'am willing to bet.
x
01:01
x
In reply to this message
no , a lot of people believe proof of stake doesn't work they also believe erc20 and nft don't work
01:01
But I think the bet is pointless
01:04
In reply to this message
no need for that type of market, Proof of stake will die itself when them time comes. it's better to just spend more time on improving amoveo
Z
01:06
Zack
if we make a bunch of money from this attack, we could use that money to improve amoveo.
Maybe developers from destroyed pos blockchains would switch to building on amoveo.
M⛏
01:07
Moe ⛏
Which pos chain are we attacking
Z
01:08
Zack
lets get Amoveo ready first, then we can survey our options
M⛏
01:08
Moe ⛏
insert headNodYes.gif
x
01:25
x
I don't think it will be ready any time soon. amoveo has small marketcap.
01:26
Why would developers want to switch to amoveo? Their time is free?
Z
01:26
Zack
we don't need much market cap to attack smaller pos chain.
The limitation is more in the capabilities of Amoveo's smart contract system.
It is complicated to build the smart contract to enforce the attack.
01:27
In reply to this message
a combination of their time being free, and Amoveo being in their immediate attention because of the recent attack
x
01:30
x
In reply to this message
if they know that there will be an attack, they will prepare for it (for example centralize it if they are not yet already) , and you will fail.



No, most developers don't work for nothing. Indeed lauchning tokens on ethereum is more more profitable than developing for amoveo so far
01:33
Also I should open to the possiblility that someone might eventually invent a PoS design or PoS+PoW design that's secure against this kind of attack.
Even if that design doesn't exist yet.
Z
01:35
Zack
The cost of failure is as much as all the PoS rewards for the duration of time that we attempt the attack.
01:35
So it should be fairly cheap. We can try it out a few times.
01:37
The hybrid approaches I have looked at don't seem much better.
We might need to rent a little PoW to get the attack to work, but overall they aren't any harder to attack than PoS.
x
01:39
x
I mean someone might invent a hybrid design, that's secure against this type of attack, it's not impossible? I don't mean the extant hybrid design
Z
01:39
Zack
or they could switch to being a PoW blockchain.
01:40
One option after taking control of a PoS blockchain, we could start pushing through soft forks and make arbitrary changes to that blockchain.
We could force it to become a PoW blockchain, as a way of rescuing it from it's vulnerability.
x
01:41
x
the new PoW blockchain can be 51% attacked
Z
01:42
Zack
yes
x
01:43
x
most PoW chains are not safe against that right
01:48
ETC was attacked several times in the past probably, they survived tho
Nathan' invited Nathan'
Z
07:00
Zack
in order to build the perpetual stablecoin, we need to first write a quine in chalang https://en.wikipedia.org/wiki/Quine_(computing)

Part of how the perpetual stablecoin works is that it needs to keep producing a new version of itself with slightly different settings. That is how it re-balances the margins when the price moves.

In order to create a new version of itself, it needs to produce the hash of the code that makes up the new version of itself.
To take the hash of it's own code, it needs to have a binary representation of it's own bytecode, inside the program.

Maybe we should have a quine opcode, that directly gives you access to a copy of the bytecode of the current program being run. Then quines would be very simple.
EA
07:02
Eric Arsenault
simple.
07:03
did you ever deploy the latest changes for the dex? so we can place buy orders?
Z
07:03
Zack
yeah, it would be really bad if you had to understand a quine just to read the smart contract. quines look pretty complicated.
EA
07:04
Eric Arsenault
In reply to this message
to be clear, I was just joking, I followed like 1% of your comment
Z
07:04
Zack
the hard update should have activated.
I wrote the first draft of the javascript library to make all the txs we need for the new contract.
im currently working on adding support for the new contracts in the p2p derivatives server.
EA
07:05
Eric Arsenault
oh ok nice. so a bit more time before it shows up on light node I guess
Z
07:08
Zack
maybe it isn't so bad as making a quine though.
Because of how the merklized abstract syntax tree works, we could call an undefined function, and then you need to define that function as part of the evidence to settle the contract. like pay2scripthash in bitcoin.
so to generate the new version of the smart contract, we would just load the new settings, and then tell it to execute the same root function again.
EA
07:10
Eric Arsenault
Maybe stablecoins should be kicked down the road. getting the cross-chain stuff working well doesn't require any of that, and there is a pretty immediate need for it. So much room for smoothing that experience out.
Deleted invited Deleted Account
Z
10:35
Zack
Ive been thinking of auctions. I think we are getting near to having single price batch markets.

Simplest is everybody pays auctions.
I want to auction off some bitcoin. I make a binary contract where type 1 gets 100% of the value.
I make a bunch of swap offers, and i am buying type 1.
So accepting the swap offer is the same as sending me free veo. But you get a swap receipt.

These receipts can be used to embed your bitcoin address into a contract that gives me the obligation to send the bitcoin to the winner.

Whoever has receipts for having paid the most veo, they win the auction.
x
10:37
x
where is the otc derivative page
Z
10:38
Zack
Next we want a normal auction.
The difference this time is that instead of me making swap offers for a contract where my side is worth 100%,
These contracts are set up so only one of them gives me 100%, and all the other give me 0%.
And my signature lets me choose which one i get to keep.

So whoever accepts the swap offer for the largest amount, they are the only ones who need to pay.
And the contract that gives me an obligation to send the veo, it is controlled by the receipt for the largest amount spent.
x
10:40
x
ok i read the old documentation which mentioned that page. so it changed
Z
10:41
Zack
Next single price batches.
So this time, instead of choosing a single swap offer to activate, i choose a price. And this activates all the swap offers who were willing to pay higher than that price, but they only pay the batch price, not the limit price.
10:42
It isnt much more complicated than the contract we are making now to buy veo in the dex.
10:43
I think this could be a really important application.
Single price batches are the only way to completely prevent front running and mev. And no one else has anything like it yet.
10:50
A market for single price batches could be used to trade in prediction markets too.
EA
11:13
Eric Arsenault
Is this used in traditional markets at all?
MF
11:14
Mr Flintstone
i think at open
EA
11:14
Eric Arsenault
Oh, like opening bell?
MF
11:18
Mr Flintstone
yeah
EA
11:47
Eric Arsenault
Isn’t gnosis protocol doing batch auctions? You thinking the same?
Z
18:47
Zack
A second price auction could be useful for the cross chain exchange too.
18:51
Oh, second price is tough, because the seller could bid in their own auction to make it like a first price auction
18:51
We need hidden bids somehow.
18:52
Maybe people accept the swap offers, and then provide evidence to that contract to lock in their price, and then they can reveal the price at the end of the auction.
19:02
In reply to this message
that might have issues too, if the person auctioning off their bitcoin makes a bunch of bids and only reveals the one that can influence the price.
19:03
Maybe the better strategy is to use single price batches for a market between VEO and synthetic BTC.
Then we can use the normal crosschain DEX for swapping the synthetic BTC for BTC.
19:05
I think the single price batch market will be important for a good stablecoin system too, because people need a way to turn their VEO into stablecoins and back at a good price.
19:05
maybe we need the single price batch system before we try to attack PoS blockchains, so that there will be more confidence in holding the stablecoins that are used to enforce the attack.
Z
19:28
Zack
In reply to this message
https://forum.gnosis.io/t/list-of-protocol-improvements-for-gnosis-protocol/650
Looks like gnosis strategy is still pretty limited.
It looks like they did it all on-chain, so they can only process 25 bids per market.

The plan we are looking at for Amoveo, it is mostly off-chain.
Like, if someone accepts a swap offer to make a bid in the market, the blockchain just has a contract ID, which is the merkle root of that contract. The blockchain doesn't know what that contract is even for.

And when the batch actually occurs, the auctioneer is just publishing a batch price. Publishing the price is completely off-chain.

So each person who bet, they can use that signed price along with the definition of the contract to withdraw their funds from the market at any time, it doesn't need to all occur in the same block like gnosis.

And we only need to put on-chain the part of the contract that actually gets executed.
So for example, if your limit price was outside of the batch and your order was canceled, then getting your money out is as simple as publishing the signed batch price and showing that your limit price was outside of the possibility of being executed.

Another option in Amoveo is that the auctioneer could send worthless losing shares to everyone who's bids did not get matched in the batch. So they could combine the 2 kinds of shares back to veo without having to execute any part of the contract on-chain.

Or if a bid did get matched, the auctioneer can make a swap offer to give them the synthetic bitcoin they bought in exchange for their winning shares. And the auctioneer can combine the winning shares with their losing shares to get their liquidity out of the market without actually putting the smart contract on-chain.
19:30
in Amoveo each bid is asynchronous with the rest. they can all be in different blocks.
And as long as the users cooperate, we don't have to actually execute any contracts on-chain.
and even if we do execute them on-chain, we only need to publish the part that actually gets executed. most of the code stays off-chain.

All together this means we could have any number of bids in a single batch. We wouldn't have the 25 bid limit like gnosis.

Making a bid or settling your bid afterwards, these are about the same as a normal spend tx in Amoveo. Whereas in gnosis it is a specialized tx that costs a lot of extra gas.
19:32
We could optimize further if we use state channels.
Because then a user could keep making bids in consecutive markets, and they only need to make an on-chain tx once a bid finally gets matched, or if they change their mind and don't want to bid any more.
19:34
The reason ethereum is so un-scalable is because their contracts are all about shared mutable state.
So you end up having to do lots of computation in a single block, and then gas fees are excessive.

In Amoveo our contract state is all either immutible-shareable (contracts), or mutable-unshareable (state channels), so everything is scalable for us.
Z
19:57
Zack
In reply to this message
looks like they are using cosmos type PoS, but they modified it to be more scalable using a random subset of validators for each round.
Using a random subset this way is more scalable, but it is less secure.
First off, using a random subset increases the probability that the attackers will eventually have >2/3rds control for a round.
Secondly, their randomness is produced by the block proposer signing over the previous round of randomness.
This means the block producer gets at least one reroll by failing to sign.

If the signature scheme is not deterministic, then that means it is nearly free for the block producer to do re-rolls of the randomness.
If the block producer doesn't like the randomness, it just signs again and again until it comes up with a signature that produces the randomness it wants.
Doing 2^n signatures gives control over n bits of the randomness being produced.

If the signature scheme is deterministic (I had thought deterministic signatures were impossible, that you needed to fold some salt into the signature to prevent attackers from being able to probabilistically derive your private key), but if it is deterministic, then that means the attackers, once they gain control, they can predict the randomness far into the future. So they can do bonding and unbonding txs to change the set of pubkeys owned by validators to always be in the winning position.
Z
20:24
Zack
I think if I was making an attack against elrond right now, I probably wouldn't bother exploiting the RNG vulnerabilities.
PoS is already cheap enough to attack, and exploiting RNG to make it a little cheaper would be a lot of extra programming work.
If Elrond was big enough, eventually it could be worth it to exploit the RNG as well during an attack.
IS
22:19
Ilmu Somebody
Hey zack, it'd be really nice if you had an index of different contracts you've written explaining what they are for (in a paragraph or so) and linking to the chalang code
22:20
Bonus points for adding some reasoning like why some limitations or the workings of the system mean that it is best to do things this way
22:20
I think this would be very good lens to better understand amoveo
Z
22:40
Zack
In reply to this message
The only one we are using currently is the scalar bet contract.
22:40
It can be configured to work like a binary contract too.
IS
22:41
Ilmu Somebody
Okay, even so, an index of uses for that one contract
22:41
Idk maybe there is a better presentation format
22:42
But when I'm in the web interface if I could click on a link and get long form text
22:42
Just to understand what I have in front of me
22:42
I don't think the uniswap “I'm in a huge hurry” crowd is the right one to pander to
22:43
Better to make it more wiki style, and let people take their time doing things well
22:45
The efficiency can be improved as increased use sands down the rough edges
7 March 2021
IS
01:05
Ilmu Somebody
Is there any reason why we wouldn't be able to make a binance/generic CEX UI on amoveo? Afaict the only problem is liquidity.. but the types of games you just shared above could all be played with a big stupid graph picture and an orderbook as the UI
01:06
I think there's a decent amount of people who want to trade without putting their funds in a cex
01:06
(I'm definitely one of them)
Z
01:06
Zack
the user interface is a different part of the system from how the contracts are enforced.
We can make the interface look like anything.
IS
01:06
Ilmu Somebody
Yep exactly
01:07
Ok, how do I use the futarchy to pay me to do a CEXy UI?
Z
01:09
Zack
In reply to this message
you could do a dominant assurance contract https://github.com/zack-bitcoin/amoveo-docs/blob/master/use-cases-and-ideas/dominant_assurance_contract.md
or you could release an alternative light node with this line changed to have your address instead https://github.com/zack-bitcoin/light-node-amoveo/blob/master/src/js/multi_tx.js#L96

or both.
neither of these is futarchy.
IS
01:10
Ilmu Somebody
Yeah I knew about those methods, thanks I'll discuss this with some programmer friends
Z
05:19
Zack
im starting to make the form in the wallet.html page for buying veo in the crosschain dex.
It seems like we need a dropdown of the popular contracts inside amoveo, for choices on which contract you want to be paid in.
That way you can make an offer to sell your BTC for synthetic BTC, and not worry about the free option problem.

Or maybe for the first version we should just support VEO, since the counterparty loses a safety deposit if they don't deliver anyway.
05:19
we already have a dropdown like this in the swap tab.
So I was thinking we could extract that dropdown to the tabs.js page, and make it available to both the swap tab and the crosschain DEX tab.
05:20
I guess ill start with just veo, so we can have the first version ready sooner. we can always do this upgrade later.
IS
05:24
Ilmu Somebody
In reply to this message
Yes, sounds sensible.
MF
05:29
Mr Flintstone
agreed
EA
05:41
Eric Arsenault
Yup, let’s get it out and get people using it!
Z
07:38
Zack
I really want to compile the smart contract from inside of javascript.
One of the basic principles of good programming is that you don't want to repeat yourself.
Repeating yourself is bad, because later on when you need to change that code, you need to find it in both places and change both of them.
If you can make it work by only writing it in one place, then you code is easier to maintain, shorter, and easier to understand.

There are a couple places where I want to run a function from inside the smart contract, and have it's output.
Once when I need to know the hash of a sub-branch of the merklized abstract syntax tree of the program, so that I can reference that branch.
Another time when I need to know the text of the oracle question in order to build the oracle.

Instead of rewriting these parts of the smart contract in javascript, and maintaining them separately, I want javascript to be able to run that function of the smart contract, inside of the light node.
David Zarise invited David Zarise
Z
08:49
Zack
I made the interface to type in the details for your contract to buy veo. it is in the tab crosschain DEX to buy veo
http://159.89.87.58:8080/wallet.html

So far all it does is print a couple things to the console when you click a button.
08:50
The compiler is working correctly.
08:52
it still needs an interface for the person selling veo to have a address on the other blockchain to receive.
It needs a way to display that address once it is available.
it needs those buttons saying that the trade has completed, or they failed to deliver, or they failed to reveal their address.
We also need a way to look up the oracle text for this contract.
Z
10:04
Zack
Would it be useful to write a chalang vm as a chalang program?
IS
10:07
Ilmu Somebody
probably not, probably better to have support for threads or forking of some sort
10:07
but another probability is that no one here has enough expertise / familiarity to really chime in on this particular question
10:08
btw I was taking a look at packaging amoveo in guix
10:08
and I'm not really sure how to build it, I'm guessing just make, I see guix is missing support for rebar3, there is a patch to add it that had some movement last year.. I am looking at what is missing from it atm
10:09
maybe you could make a short addition to the developer guide with the build commands
10:09
also for the testing, just a short list of the commands you run to work on the code
IS
10:12
Ilmu Somebody
thx
10:13
ah that folder has lots of good stuff
10:13
every time I think I've read all the markdown there's more of it
Z
10:14
Zack
you need the dependencies first probably. there is a better doc for installing
10:16
IS
10:17
Ilmu Somebody
cool
IS
11:59
Ilmu Somebody
Ok so one thing I'm thinking about, how long lived does a node need to be? A bunch of state is off-chain until necessary right? So you won't really be doing ad-hoc nodes?
12:00
There are some VPS services you can buy with cryptocurrencies and if amoveo is packaged with guix you should be able to press a button, pay 20$ and have a full node created for a day..
12:01
But that'd be pointless if they're missing out on some ephemeral state?
12:02
Unless that state is also somehow distributed without being in the chain consensus
12:04
Idk maybe these ideas are not useful, I'm just thinking about the long tail of censorship resistance
Marley invited Marley
Z
17:34
Zack
In reply to this message
Any length if time.
17:35
In reply to this message
You should be able to get a vps that can run an amoveo full node for $5 per month.
D
17:40
Devender
Yeah DigitalOcean
IS
18:26
Ilmu Somebody
Yeah that's what I have just set up (except hetzner).
18:26
I'm just a bit obsessed with unrealistic threat models, don't mind me
Z
18:39
Zack
If you are worried that all the vps could get shut off at once, you could run a full node on your pc and keep a copy of the history of blocks as a backup there.
IS
19:02
Ilmu Somebody
My threat model was:
- Plausible deniability
- Hostile government
Z
21:35
Zack
in the last month the price swung from 0.0014 BTC to 0.002 BTC 6 times.

2/1.4 = 1.42
1.42 ^ 6 is 8.2

So just by setting sell orders at 0.002 and buy orders at 0.0014 you could have increased your money 720% in a month.
21:38
I guess we really need an AMM for VEO <> BTC stablecoins.
21:38
so people can profit off of this volatility without needing to pay attention
21:41
we really need a way to integrate the off-chain swap offers with the AMM.
I think the perpetual stablecoin isn't going to work right without it.
So I am thinking I will do that first, before the perpetual update.
J
21:48
Josh
In reply to this message
You have to figure in liquidity though, these could be tiny trades.
Z
23:03
Zack
Earning 720% on $100 could mean a lot to someone from a part of the world where $100 is a typical monthly income.
J
23:22
Josh
yep
8 March 2021
B
00:42
Ben
the overall volume on the VEO Pair is still tiny, but picking up a bit
JT
01:29
Jehan Tremback
In reply to this message
Why the Quine? Seems kind of silly. Can’t the code just update some settings ?
Z
02:05
Zack
In reply to this message
yes I think we can just update some settings by taking advantage of how it is a merklized abstract syntax tree, and moving the definition of the function into the evidence part instead of the contract definition.
02:05
like pay2scripthash in bitcoin
Clinton Davis invited Clinton Davis
Z
11:10
Zack
https://github.com/zack-bitcoin/chalang/blob/master/src/c/chalang.scm I wrote most of the chalang VM into a language that compiles through C.
So now we have a standalone executable for chalang, and it should be pretty near to as fast as chalang can be run.
Nathan' invited Nathan'
N
11:40
Nathan'
Hello guys
11:40
so how much $$$ we need to attack POS ethereum 2.0?
B
14:46
Ben
first we need the technology for it.
14:46
and a proofpoint that it works at all.
14:46
going for the biggest fish out there as a start might be a bad idea.
x
14:47
x
amoveo needs a big enough marketcap first
Deleted invited Deleted Account
AK
17:04
A K
Have we celebrated the death spiral of AE? Or would it be too petty?
17:04
Kinda shows that GPU PoW = rip for anychain smaller than eth, if only someone knew 🙄
OK
22:53
O K
In reply to this message
?
AK
22:54
A K
Aeternity got 51% attacked, delisted from Binance, numba go down
IS
23:02
Ilmu Somebody
haha cool
Z
23:11
Zack
Anyone know how many operations per second the evm does?
Im trying to get an idea of how fast the new chalang is, relatively
B
23:56
Ben
depending on the Client right?
9 March 2021
IS
02:23
Ilmu Somebody
btw https://github.com/zack-bitcoin/amoveo-docs/blob/master/getting-started/linux_dependencies.md

the make prod-build doesn't work unless you rename the config/sys.config.tmpl.default file (or you know, also edit the contents), this is a pretty minor papercut but I am very unfamiliar with the tools you are using so it took me some time to realize
02:26
I'm writing down the exact steps it take to go from a 2.5$ hetzner VPS with stock ubuntu 20.04 to a working amoveo node.. I'm pretty new to cloudshit (and ubuntu) since I usually just use p2p things with always-on-laptops I have scattered in different places so I'll need to do it a couple of more times to get the hang of it though.
02:37
(but it was relatively pain free to build and just worked straight away after minimal configuration so that's really cool :)
Z
03:01
Zack
In reply to this message
that sounds like a really bad error. im testing it out with a fresh build in ubuntu 20.04 now
IS
03:02
Ilmu Somebody
I think it's because I did things a bit stupidly (I started installing deps while I was still in the root account and then made my user)
Z
03:02
Zack
it worked for me first try. all I did was make prod-restart and it turned on
IS
03:03
Ilmu Somebody
I'll start over from fresh and do the user account stuff a bit more sanely
Z
03:03
Zack
In reply to this message
oh, I should add a note about that in the instructions then
IS
03:03
Ilmu Somebody
that would be great!
IS
04:03
Ilmu Somebody
is there something about the web UI as well? is it started separately?
Z
04:04
Zack
http://127.0.0.1:8080/wallet.html you can try this if it is on the same machine
04:04
you need port 8080 open if it is on a different machine
04:04
you can also use the light node by itself without a full node.
IS
04:05
Ilmu Somebody
don't I have a light node right now?
Z
04:06
Zack
the full node serves a light node by default
04:06
you can get the stand-alone light node from here https://github.com/zack-bitcoin/light-node-amoveo
IS
04:06
Ilmu Somebody
thanks
04:07
okay pretty cool, it all just works
04:07
I'll need a couple of more days to play around
Z
04:07
Zack
great
Z
08:57
Zack
I made a test operation for the new vm.
it took the C version 17 seconds.
it took the erlang version 22 seconds.

I guess my c version isn't very good. but from this point there are lots of ways to make it faster.
Z
22:37
Zack
http://159.89.87.58:8080/chalang.html
I made this page where you can test out chalang from inside the light node. without needing to install anything.
22:37
it has a bunch of example programs. you can edit them, and try running them, and see what happens.