Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    Alex Z
    @hedgar2017
    @gjeanmart @MatthiasBabel still this year :)
    More precise dates will be posted here asap.
    Shumo Chu
    @stechu
    @hedgar2017 Thanks! Is the PLONK backend going to be security audited? Also, is this still the plonk branch at bellman_ce repo?
    Alex Z
    @hedgar2017
    @stechu please, direct all ZK and crypto questions to @shamatar
    Jay Welsh
    @JayWelsh
    Hi guys, I asked this question in the zkSync chat but thought maybe I should ask it here too. For L2 smart contract data on zkSync, if for example one is using Zinc's "Structure" data type, where would that sort of information end up getting stored? Would it be decentralised and/or censorship-resistant or would it be more prone to being lost than L1 data? It seems like the "State Merkle Tree" in zkSync keeps accounts and their balances with the same security guarantees as L1 but I am wondering about other types of data (e.g. Structures). Sorry if I am misunderstanding something. Thanks a lot! :)
    shipunyc
    @shipunyc
    If I use zink to build a DApp, do I still need to run GPU servers to do ZK-Snarks? Or will your platform take care of it?
    shipunyc
    @shipunyc

    Another question:

    How can smart contracts in zink work with L1 smart contracts? For example, if I need to use ChainLink as an oracle, is it possible?

    Alex Z
    @hedgar2017
    @shipunyc answers to all these questions will appear in the zkSync and Zinc docs asap.
    @shipunyc integration with L1 will be available, but not at once.
    Concerning the GPU servers, better ask in the zkSync chat.
    jackiszhp
    @jackzhp

    for the zinc smart contract, we have 2 examples in the documents.
    I would like to see a smart contract which is able to make a zksync transfer when a condition is met.

    The condition, for example, to be provide a piece of data whose sha256 is the target value. When this condition is met, then a zksync transfer is executed.

    Can someone please help to put such an example in the document?

    Jack

    2 replies
    Alex Z
    @hedgar2017
    @jackzhp we'll, there is a transfer example and a sha256 example, so you may put them together.
    The book is not the right place for a lot of examples.
    If you encounter any issues during development of such a contract, I'll help you.
    @jackzhp this one is an official channel :) I announce all updates and new features here. There is also Twitter and zkSync docs, where the useful information appears asap.
    reasv
    @reasv
    https://zks.org/en Is this project related in any way?
    From reading their material it seems they are basically using exactly the same technologies that are planned for zkSync
    zkRollup with PLONK
    and they implemented a smart contract with it to create an AMM
    Alex Z
    @hedgar2017
    @reasv please, ask zkSync-related questions in the zkSync chat.
    R P
    @dv8S6660_twitter

    https://zks.org/en Is this project related in any way?

    @reasv That project is concerning. It claims to be a rollup but looking at the white paper and description of ZKSpeed (the architecture it uses) it does not provide all information needed to rebuild the state using L1 information alone. Not only that but it also does not provide worst-case scenarios or how the data needed to create a merkel proof / rebuild the state is kept best-available since it is not 100% on Layer 1. I can't find this information easy accessible which I find to be quite an oversight. They do claim there is a "summary" of data for the L2 transactions (e.g., swaps)-- whatever that means (?update the merkel root?). Regardless, there is over $150 million USD locked into this thing and it worries me. Sorry to extend that conversation here @hedgar2017 , I just wanted to sneak that in.

    Alex Z
    @hedgar2017
    @reasv , @dv8S6660_twitter actually, it is a zkSync fork :)
    R P
    @dv8S6660_twitter
    ohhh TY for that information
    Sunny Gonnabathula
    @sunny-g
    Is there a reason why zksync doesn’t use zinc? Is zinc alone not capable of implementing a zk rollup?
    Alex Z
    @hedgar2017
    @sunny-g the reason is that Zinc is not integrated yet, as we are working hard on that integration.
    Sunny Gonnabathula
    @sunny-g
    Awesome, it’ll be the ultimate example of how to build something zinc, looking forward to it 🙂
    Sunny Gonnabathula
    @sunny-g
    *with zinc
    Sunny Gonnabathula
    @sunny-g
    @hedgar2017 are the circuits that would be written in zinc the ones found in zksync/core/lib/circuit?
    Alex Z
    @hedgar2017
    @sunny-g it could've been theoretically rewritten in Zinc 0.1.5, but now we are focused on Turing-completeness and smart contracts. Turing-incomplete stuff is discontinued.
    Sunny Gonnabathula
    @sunny-g
    That’s understandable, makes sense to build that out first. Sorry if I’m being a bother - I’m trying to look at zk rollups more broadly like state channels, as a tool for building off-chain apps, by understanding the whole architecture and the main data structures used by first focusing solely on zinc and solidity code, since it’s easy to get lost in the rust plonk impl details
    Zinc is really a great abstraction and language, which is my I’m trying to map it to what exists in zksync already.
    Alex Z
    @hedgar2017
    @sunny-g no problem :) Anyway, guys here may always tell you more about zkSync.
    Sunny Gonnabathula
    @sunny-g
    Gotcha, thanks
    Last inane question: I think plonk supports some form recursion for IVC/PCD - are there plans to expose that construct in zinc (or hacks to accomplish the equivalent) so we could write incrementally recursive circuits?
    Dennis Gearon
    @kwince
    @hedgar2017 so how soon will we be able to iterate through an array using variables like a for/while loop?
    I would like to create an open order book and post my own batch transactions.
    z330789559
    @z330789559
    @hedgar2017 Can zinc provide limited methods to obtain the current number of blocks in the L1 layer?
    Alex Z
    @hedgar2017
    @kwince if you mean unbounded loops, then after the Turing-complete framework release.
    @sunny-g please, direct crypto and ZK questions to @shamatar . My expertise is solely the language and compiler.
    @z330789559 it will, soon after the Turing-complere version release.
    nxtanx
    @nxtanx
    I want to ask two basic questions:
    does zksync have mainnet environment now?
    In addition, is it still able to use zinc for contract development? Does solidity support it? Because I only know solidity in contract development?
    Alex Z
    @hedgar2017
    @nxtanx what do you mean by zkSync mainnet environment? Anyway, it is better to ask in the zkSync chat. As for Zinc, its Turing-incomplete version can be used for contract development on the Rinkeby testnet. Solidity does not support Zinc, but you’ll be able to compile Solidity into our VM bytecode after the Turing-complete version is released.
    nxtanx
    @nxtanx
    @hedgar2017 I see. Thank you very much
    Jay Welsh
    @JayWelsh

    Hi @hedgar2017 , I hope you are well, please let me know if maybe you could point me in the right direction with this message?

    "Hi guys, I asked this question in the zkSync chat but thought maybe I should ask it here too. For L2 smart contract data on zkSync, if for example one is using Zinc's "Structure" data type, where would that sort of information end up getting stored? Would it be decentralised and/or censorship-resistant or would it be more prone to being lost than L1 data? It seems like the "State Merkle Tree" in zkSync keeps accounts and their balances with the same security guarantees as L1 but I am wondering about other types of data (e.g. Structures). Sorry if I am misunderstanding something. Thanks a lot! :)"

    Koh Wei Jie
    @weijiekoh

    Hi! I'm trying to learn more about the zkSync VM. It's just a little hard to find in-depth info. There are 2 resources but they seem to conflict.

    https://zinc.zksync.io/09-virtual-machine/00-overview.html says "The current VM is not supported anymore, as we move to another concept. Follow our official channels in order to get the latest information."

    https://zksync.io/dev/contracts/#sync-vm says "The Sync VM is a high-efficient, Turing-complete, SNARK-friendly virtual machine for executing zkSync smart contracts."

    Alex Z
    @hedgar2017
    @weijiekoh ah, it is ok. The former says about the old Turing-incomplete VM (up to v0.2.3), whereas the latter says about the upcoming Turing-complete one.
    I think we’ll slightly update the book soon.
    Koh Wei Jie
    @weijiekoh
    Thanks @hedgar2017 !
    Ye Zhang
    @ZhangYe46023266_twitter
    I have some questions about Zinc. Is this a language for compiling high-level language program into arithmetic circuit (e.g. circuit form for plonk)? If so, the compiled circuit is still isolated, how can different DApps on layer2 interact?
    Another understanding is that, the only arithetic circuit is Zinc VM, Zinc only provides input to this circuit. It's a CPU architecture instead of isolated circuits. Verifier only needs to verify proofs for this unified circuit.
    Dennis Gearon
    @kwince
    Is there a zinc channel on discord? Can someone invite me please gearond
    So it looks like the online description for 'arrays' has changed. If I remember correctly, the description said that only constants could be used as positional values for retrieving from an array. Bit unless I missed it before, NOW it says constants and 'witness-independent variables' what are those? A search of google turned up nothing directly related.
    Also, where does contract arrays get stored, and how much has is it to store?