Bitcoin Forum
May 08, 2024, 11:55:54 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Crypti vs Ethereum - Architecture Q & A  (Read 634 times)
Technologov (OP)
Full Member
***
Offline Offline

Activity: 203
Merit: 100


View Profile
October 27, 2015, 11:32:36 AM
 #1

I decided to publish a small Crypti Architecture Q & A with Boris Povod (crypti dev) as compared to Ethereum's architecture.
Crypti is a Dapp platform, similar to Ethereum, but using sidechains + javascript node.js.
So what are the differences?

Q: Technologov 12:52
 
Math.random() prolly needs to be disabled for Dapps. A deterministic version needs to exits, based on blockchain hashes.
Same for opening TCP/IP sockets.
That is: Dapps should have reduced API.
Docs say: "If the above rules are not adhered to, the sidechain will most likely fork". This needs to be avoided at the API level.
https://github.com/crypti/crypti-dapps-docs#determinism

A: boris.povod 13:00
> based on blockchain hashes.
What you mean?

Q: Technologov 13:00
Ethereum has special random generator API, which uses previous block hash as random number. This way RNG is 100% deterministic.
Smart idea.

A: boris.povod 13:01
@Technologov: based on previous block hash is not random number
@Technologov: it's can be attacked by miners
@Technologov: there is another good idea of random numbers 😛 Same from Eth guys

Q: Technologov 13:01
But no better way exists anyway.
And all code needs to be deterministic (to prevent chain forks).

A: boris.povod 13:02
@Technologov: there is deterministic code if you look at toolkit, but when you as developer write some logic code for your sidechain, you can make there mistake
Q: Technologov 13:04
Another risky stuff: opening TCP/IP sockets. This is disabled in Ethereum (because it is non-deterministic).
The right way is to push 3rd party data (like prices of BTC/USD, or weather, or president elections) into blockchain by Oracles. Then it can be used by blockchain contracts.

A: boris.povod 13:07
@Technologov: for tcp/ip sockets we will use seccomp to block low level calls, just we didn't added it yet 🙂 Same for 3rd party data

Q: Technologov 13:09
How about endless loops ? Is there a mechanism to prevent them or limit them ? Or it will kill sidechain ?

A: boris.povod 13:11
There is javascript, no new language, because for sure you can write there endless loop. But it's pending on developer who work with toolkit

Q: Technologov 13:12
And what about Dapp updates ? Is it possible ?

A: boris.povod 13:14
Maybe later we will make special lang based on javascript.
We working on it now, there is still testnet, after current release we will releases few new versions to make DApp updates possible and we will make polish work

Technologov: Thanks !

P.S. BTW: Crypti uses sidechain for every Dapp, which potentially makes it more scalable than Ethereum. bonus video: https://www.youtube.com/watch?v=O9o5X4xHJnc
1715169354
Hero Member
*
Offline Offline

Posts: 1715169354

View Profile Personal Message (Offline)

Ignore
1715169354
Reply with quote  #2

1715169354
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1715169354
Hero Member
*
Offline Offline

Posts: 1715169354

View Profile Personal Message (Offline)

Ignore
1715169354
Reply with quote  #2

1715169354
Report to moderator
1715169354
Hero Member
*
Offline Offline

Posts: 1715169354

View Profile Personal Message (Offline)

Ignore
1715169354
Reply with quote  #2

1715169354
Report to moderator
1715169354
Hero Member
*
Offline Offline

Posts: 1715169354

View Profile Personal Message (Offline)

Ignore
1715169354
Reply with quote  #2

1715169354
Report to moderator
HCLivess
Legendary
*
Offline Offline

Activity: 2114
Merit: 1090


=== NODE IS OK! ==


View Profile WWW
October 27, 2015, 01:11:13 PM
 #2

Don't tell them yet!

Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!