HN user

drog

114 karma

Contracts: Twitter drog_v Github dvush Email vitaly@dvush.net

Posts0
Comments19
View on HN
No posts found.

I felt that captcha is over when I struggled to solve microsoft rotating planet captcha when I tried to restore account there. It looked like those IQ test questions.

I've been using my own telegram -> ai bot and its very interesting to see what others do with the similar interface.

I have not thought about adding memory log of all current things and feeding it into the context I'll try it out.

Mine is a simple stateless thing that captures messages, voice memos and creates task entries in my org mode file with actionable items. I only feed current date to the context.

Its pretty amusing to see how it sometimes adds a little bit of its own personality to simple tasks, for example if one of my tasks are phrased as a question it will often try to answer the question in the task description.

I know about that but thanks for your comment - I’ll clarify what I mean.

It’s just the specifics of how this works - slashing is part of the protocol in the sense that I described: when you are chosen to create a new block and you have proof that someone violated the rules then you include this proof in your proposed block and update balance. Any validator can do it including the smallest of home stakers.

More details here. https://github.com/ethereum/annotated-spec/blob/master/phase...

Here we have slashing fields in the block body where you insert your proofs of slashable offense. There are functions with a “slash” in the name that describes precise state transition.

The hard part of slashing is finding these proofs because you have to do more work than necessary to detect slashing and produce proofs - that’s what this software does. It’s more expensive to run a slasher but you need only one and it does not matter who runs it, anyone can run it. The link that you sent says that this slasher broadcasts proofs by default - that way anyone can include it.

There is no designated class of slashers.

Slashing is part of the protocol and to slash somebody you have to prove it to the protocol that they broke rules of slashing. One of the rules is that you can't create two different blocks in the same slot (block number) i.e. you can't deliberately fork.

There is a designated place in the block of the beacon chain where you can put signatures of the different blocks in the same slot as a proof and nodes will slash validator that produced that signatures (update his balance). Anyone can find these signatures, and block proposers of the new blocks will include them into the chain.

No.

Inactivity leak is an emergency measure to restore liveness when the network stops finalizing blocks. It happens when >33% of validators are offline(WW3 scenario), major bug in widespread implementation, etc.

Your link explains that.

ETH2 is friendly to home stackers - you may lose some profit by being offline sometimes, and in the worst case minor penalties are applied.

EDIT: If you are interested in a much better description of what happens if you are offline, see this:

https://eth2book.info/altair/part2/incentives/penalties

Some points from the link:

- penalties =/= slashing

- If you are online > 42.5% of the sime - you are earning profits

That's common misinformation. The issue discussed in the review has no connection to what happened, and the narrative that it is the same issue, but it became exploitable after the update is incorrect too. It affects different part of smart-contract logic. Yes, it's pretty close at a glance—because you have zero-by-default problem somewhere close to Merkle tree.

Smaller programs are easier to understand and often you can be sure that they are correct just by looking at them.

Macros allows you to decompose and simplify problems in a way that is impossible with functions. Macros are especially good at removing boilerplate and writing syntactic glue code.

Since macros are programs making sure that they do what you meant them to do you can use similar techniques as you use for other programs: making them small and obvious, testing.

You are correct, but I think "identity based encryption" protocols can run in MPC mode. Multiple parties will generate distributed secret that will be used to generate private keys. Anyone can easily generate public key for any identity (e.g. email) for the given "key generator" setup using public data of this setup. But for a user to get their private key, they need to assemble secrets by proving their identity to multiple independent parties - you have to hack every one of them to restore the private key of user.

Thanks to other people pointing out, I now see that there is still a fundamental problem — crush can see that you appointed them to be your crush without liking you back, and the solution is that: 1) everobody precommits to your crush set in advance 2) users use mpc protocol that will ensure that your crush reveals if both of you precommitted to each other. (I guess it's similar to "Yao millionaire problem" where two parties calculate "x < y" without revealing x and y. but you calculate "x == y" where x and y is values that you committed to previously and you dont reveal x and y)

Previous variant does not need any blockchain because you can just embed encrypted message to the web page similarly to the original hash variant (really it's the same as sending private message to your crush) but MPC variant probably needs blockhain because that's a perfect way to publicly precommit to something.

Note: there is still the possibility that you can precommit to "x is my crush" without x being your real crash to lure out if you are crush of x.

P.S. I think that's a good illustration of a service that can't be done without crypto and have similar properties.

This protocol has some downsides - if you share the link with large adversarial group (e.g. your school) they can brute force your crush name and it’s basically no different then embarrassingly shouting out your crush name in public and it has problems with canonical names.

Instead we can alter it and fix this problems: Bob will find out his crush’s public key, encrypt "you are my crush" message to it and post it with his own signature to public bulletin (blockchain can be good shelling point). When crush decrypts message they will see proper string, while everyone else will see gibberish.

- to solve problems with key distribution we can use "identity based encryption". it requires trusted third party (e.g. school administrators) but it solves problem for key generation of participants. With identity encryption bob can encrypt message to some canonical identity such as school email. Owner of that email can prove it’s identity to the third party and receive corresponding private key.

i'm sure they will come to be used across lots of areas of the web and not just blockchain

Totally agree with this. After working closely with zk I noticed that it boosts your thinking about decentralized protocols in the same way as knowing about signatures or hashes.

Right now infrastructure for doing zk is in “alpha” stage and different proving systems and optimizations are fairly new and not widely used. I believe it will grow bigger It’s very exciting field.

(I worked on zk rollup called zksync but zk rollups are only one of the use cases for zk proofs)

I think that main web3 innovation is more like mindset innovation rather than more common technology innovation that improves performance, efficiency, etc.

Take bitcoin as an example, of course you can make internet money cheaper using centralized service but it would be bad because you have to put a lot of trust into someone’s hands. That culture and mindset grows into whole finance applications where you get defi and property rights where you get nft. Nft is not only digital art you can use nft to represent domain names and this will cut out authority middle man out of the equation - your keys your domain, it’s impossible to do with web2.

Some people dismiss these as important but that’s what people in crypto are concerned with - replacement of unnecessary middleman, gatekeepers, regulations with transparent cryptography and code. If you subscribe to this values than you add new constraints and previous solutions that can be better and faster no longer work.

Why is this post so downvoted? It seems that antigovernment sentiment is not popular here

It’s not only that but also all that “crypto is not technologically interesting and it’s just Ponzi scheme!”.

There are so many interesting and unique things there. You can mix cryptography, finance, etc. into endless amount of protocols.

Here is some interesting ideas in crypto: decentralized stable coin (dai), automatic market makers (uniswap), zero knowledge rollups, dns that you actually own and not rent, p2p prediction markets, automatic borrowing, algorithmic stable coins without peg and so on and so forth.

And there is always something new.

I think blockchain is essential building block of the future free web.(at least stuff like dns)

I think grandpa of my girlfriend is going through something similar, COVID changed his mental state significantly (he is sick right now and getting additional oxygen).

Before that he was calm and kind to his daughter but now he is really aggressive (verbally attacks everybody who want to help) and depressed (does not eat and drink and says he “just wants to die”)

It looks really strange and not normal.

It looks like you enjoyed it which is great!

Mine are always triggered when life stress and anxiety build up and it makes me even more stressed.