Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
    redbull
    @kgkang
    I want to know the private key used to sign private transaction before sending it to besu node through eea_sendRawTransaction.
    because I saw some confusing document and talks here...
    again... you are saying that we can sign private tx with user's private key and send it to besu node using eea_sendRawTransaction. Right?
    Lucas Saldanha
    @lucassaldanha
    Correct
    redbull
    @kgkang
    Thank you for your clarification !!
    Lucas Saldanha
    @lucassaldanha
    You’re welcome!!!
    MadelineMurray
    @MadelineMurray

    📣 We've identified a critical issue for privacy users with private transactions created using Hyperledger Besu v1.3.4 or earlier. If you have a network with private transaction created using v1.3.4 or earlier, please read the following and take the appropriate steps:
    https://wiki.hyperledger.org/display/BESU/Critical+Issue+for+Privacy+Users

    As always, the PegaSys team is happy to answer any questions or help with any issues you have. 📣

    The Watcher
    @juleznakamoto
    Hi folks,
    I ran into this issue when trying to create Key Pairs. Can someone please help?
    >orion -g nodeKey
    [INFO ] [main] 04-09-2020 16:25:43 n.c.o.c.Orion - starting orion
    [WARN ] [main] 04-09-2020 16:25:43 n.c.o.c.Orion - no config file provided, using default
    [INFO ] [main] 04-09-2020 16:25:44 n.c.o.c.Orion - generating Key Pairs
    Enter password for key pair [nodeKey] :
    [ERROR] [main] 04-09-2020 16:25:44 n.c.o.c.Orion - Unexpected exception upon starting Orion
    java.lang.UnsatisfiedLinkError: unknown
            at jnr.ffi.provider.jffi.NativeLibrary.loadNativeLibraries(NativeLibrary.java:87) ~[jnr-ffi-2.1.8.jar:?]
            at jnr.ffi.provider.jffi.NativeLibrary.getNativeLibraries(NativeLibrary.java:70) ~[jnr-ffi-2.1.8.jar:?]
            at jnr.ffi.provider.jffi.NativeLibrary.getSymbolAddress(NativeLibrary.java:49) ~[jnr-ffi-2.1.8.jar:?]
            at jnr.ffi.provider.jffi.NativeLibrary.findSymbolAddress(NativeLibrary.java:59) ~[jnr-ffi-2.1.8.jar:?]
            at jnr.ffi.provider.jffi.AsmLibraryLoader.generateInterfaceImpl(AsmLibraryLoader.java:158) ~[jnr-ffi-2.1.8.jar:?]
            at jnr.ffi.provider.jffi.AsmLibraryLoader.loadLibrary(AsmLibraryLoader.java:89) ~[jnr-ffi-2.1.8.jar:?]
            at jnr.ffi.provider.jffi.NativeLibraryLoader.loadLibrary(NativeLibraryLoader.java:44) ~[jnr-ffi-2.1.8.jar:?]
            at jnr.ffi.LibraryLoader.load(LibraryLoader.java:325) ~[jnr-ffi-2.1.8.jar:?]
            at jnr.ffi.LibraryLoader.load(LibraryLoader.java:304) ~[jnr-ffi-2.1.8.jar:?]
            at org.apache.tuweni.crypto.sodium.Sodium.libSodium(Sodium.java:180) ~[tuweni-crypto-0.10.0.jar:0.10.0]
            at org.apache.tuweni.crypto.sodium.Sodium.crypto_box_publickeybytes(Sodium.java:1044) ~[tuweni-crypto-0.10.0.jar:0.10.0]
            at org.apache.tuweni.crypto.sodium.Box$PublicKey.length(Box.java:147) ~[tuweni-crypto-0.10.0.jar:0.10.0]
            at org.apache.tuweni.crypto.sodium.Box$KeyPair.random(Box.java:458) ~[tuweni-crypto-0.10.0.jar:0.10.0]
            at net.consensys.orion.enclave.sodium.FileKeyStore.keyPair(FileKeyStore.java:159) ~[orion-1.5.0.jar:1.5.0]
            at net.consensys.orion.enclave.sodium.FileKeyStore.generateKeyPair(FileKeyStore.java:147) ~[orion-1.5.0.jar:1.5.0]
            at net.consensys.orion.cmd.Orion.generateKeyPairs(Orion.java:582) ~[orion-1.5.0.jar:1.5.0]
            at net.consensys.orion.cmd.Orion.run(Orion.java:312) ~[orion-1.5.0.jar:1.5.0]
            at net.consensys.orion.cmd.Orion.main(Orion.java:118) [orion-1.5.0.jar:1.5.0]
    An unexpected exception was reported while starting Orion. Please refer to the logs for more information
    Danno Ferrin
    @shemnon
    orion isn’t finding the libSodium library (https://docs.orion.pegasys.tech/en/stable/HowTo/Dependencies/#libsodium) - it looks in /usr/local/lib, /opt/local/lib, /usr/lib, and /lib
    The Watcher
    @juleznakamoto
    @shemnon thanks a lot!
    MadelineMurray
    @MadelineMurray
    Kevin Ekt
    @deveckt
    Hello, I have followed this tutorial exactly https://docs.orion.pegasys.tech/en/stable/HowTo/Run-Docker-Image/ and get: Failed to read password list '/opt/orion/passwordFile' suggesting that docker is looking for the passwordFile in /opt/orion/passwordFile instead of /data/passwordFile, is the tutorial obsolete ? thanks !
    Joshua Fernandes
    @joshuafernandes
    Hello @deveckt could you post the contents of your config file please?
    If you could also post the stacktrace when you start Orion like the pic above that would be really helpful
    Kevin Ekt
    @deveckt
    thank you, I think that the issue was simply that the docker command does not work when there is a dash in the Orion directory path.
    Lucas Saldanha
    @lucassaldanha
    We are making the change in terminology in Orion from whitelist to allowlist. Since this involves CLI options, we will first be adding additional CLI options as alternate names, and then will follow the process in Orion for breaking changes to remove the whitelist CLI options. Work has started on this issue PegaSysEng/orion#381
    trnhgquan
    @trnhgquan
    Hello there, I am learning Besu + Orion, move from Quorum + tessera to here. Does anyone here has docs that explain step by step how private transaction in Besu work? (Create, submit, validate, execute,....)
    MadelineMurray
    @MadelineMurray
    hi @trnhgquan - this is an overview of how private transactions are processed in Besu https://besu.hyperledger.org/en/stable/Concepts/Privacy/Private-Transaction-Processing/
    Let us know if you've got specific questions.
    trnhgquan
    @trnhgquan
    thanks @MadelineMurray
    Alexandre Bourget
    @abourget
    hey youall :)
    I'm studying Orion, right now.. and have a few questions. Is this a good place to ask?
    I'm wondering if there is a race condition, between 1) the time Orion receives a private transaction, and 2) the moment where the public chain triggers the execution flow (reaching out to Orion for that private trx).
    and also, what happens if the private transaction fails? Is it fair to assume it fails for everyone in the same way? But what if the race occurs, and you "missed" one private transaction, aren't there chances the private world state drifts between peers?
    Lucas Saldanha
    @lucassaldanha
    @abourget there is no race condition because the PMT is only created after all members have received the private tx. And yes, if the private tx fails, it should fail for everyone given they’ll apply it on the same private state for that privacy group.
    Alexandre Bourget
    @abourget
    ok, that's the flow I didn't see.. was looking at the API methods, and I didn't see methods for confirming reception of a private tx
    in https://docs.orion.pegasys.tech/en/stable/Reference/API-Methods/ .. are there other more internal methods for the exchange? I'd like to see those (comfortable with source code refs)
    Lucas Saldanha
    @lucassaldanha
    There isn’t a confirmation API. The ack happens when the remote Orion successfully processes the push request :)
    Alexandre Bourget
    @abourget
    (or just a method name that would bring me in the right spot? :P)
    Lucas Saldanha
    @lucassaldanha
    Nope, the push is between Orion peers (internal api)
    The send is used by a client to ask Orion to distribute the private tx. For each participant, Orion encrypts the tx and calls the /push on the other Orion nodes
    /send is the API used by clients, /push is used by Orion nodes to distribute the payload between themselves.
    Alexandre Bourget
    @abourget
    ok I see.. if there are 5 participants.. which one will issue the PMT ? how will one know everyone has confirmed?
    is it gossip propagation, or you have a single "initiator" responsible for pushing out to all participants, and issuing the PMT?
    Lucas Saldanha
    @lucassaldanha

    I’m away from my computer now. I can find the diagram later to help you.

    The PMT is created by the client (Besu, not Orion) upon a successful /send request

    Single initiator atm
    Basically, Besu calls /send, and upon a success, it knows that Orion has distributed the private tx to all participants and it can create the PMT.
    MadelineMurray
    @MadelineMurray

    @abourget - did you see this diagram for processing of private transactions? https://besu.hyperledger.org/en/stable/Concepts/Privacy/Private-Transaction-Processing/

    If a private transaction fails to process, the status in the transaction receipt obtained using priv_getTransactionReceipt will be 0x0

    https://besu.hyperledger.org/en/stable/Reference/API-Methods/#priv_gettransactionreceipt

    MadelineMurray
    @MadelineMurray
    To improve the experience of users across our product suite, we're moving over to Discord. Here's the invite for the Orion channel - https://discord.gg/n8m22JK - would love to see everyone over there. We'll be monitoring and active in this channel for the next 4 weeks and post a few reminders about the move.
    trnhgquan
    @trnhgquan
    image.png
    Hello @MadelineMurray , as I understand, the Precompiled Contract is a built-in contract in Besu? Each node will run one PC to pass the privateTX to Private Processor ?
    5 replies
    trnhgquan
    @trnhgquan
    Hello there, as the docs wrote: Orion associates the stored transaction with the transaction hash and privacy group ID. So if privateTx send with privateFor (not privacyGroupId), will Orion node related to this tx store the privateFor?
    trnhgquan
    @trnhgquan
    Got this error when running Orion on ubuntu, is there anyway to fix? I am not familiar with java
    Error: A JNI error has occurred, please check your installation and try again Exception in thread "main" java.lang.UnsupportedClassVersionError: net/consensys/orion/cmd/Orion has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0
    2 replies
    trnhgquan
    @trnhgquan
    Another question is if I have 2 besu node run on Ropsten or Rinkeby or others public network, can I do private transaction for this 2 besu nodes?
    3 replies
    Lucas Saldanha
    @lucassaldanha
    To improve the experience of users across our product suite, we're moving over to Discord. Here's the invite for the Orion channel - https://discord.gg/n8m22JK - would love to see everyone over there. We'll be monitoring and active in this channel for the next 3 weeks and post a few reminders about the move.
    trnhgquan
    @trnhgquan
    Hello there
    Does anyone here know how to run besu-sample-network with gasprice = 0 ?
    MadelineMurray
    @MadelineMurray
    hi @trnhgquan - to improve the experience of users across our product suite, we're moved over to Discord. Here's the invite for the Orion channel - https://discord.gg/n8m22JK . If you ask over there, that's where our developers are to answer :-)