Skip to content
  • Angelo De Caro's avatar
    C2C invocation for confidential contracts. · 5f9b3ea0
    Angelo De Caro authored
    This PR addresses chaincode to chaincode invocation for confidential contracts
    ). In order to achieve the goal
    the chaincode handler has been modified to contruct proper ephemeral
    transactions and security contexts.
    Let us consider the following scenario to describe the modification
    apported by this PR. Let us say that we have two chaincodes: A and B
    where A invokes B at some point of its computation.
    When a user invoke a chaincode A, using transaction tx,
    the certificate that the user has put in tx is passed to B when A
    invokes it. In this way, for example, chaincode B can perfom
    attribute-based access control. In addition,
    each chaincode can access it is own encrypted state and modify
    it in a proper way without affecting other chaincodes' state.
    This PR has been tested by adding a unit test in exectransaction_test.go.
    The unit tests, verify that C2C invocation can be perfomed when
    security is enabled.
    What will come next:
    1. Chaincode to chaincode query.
    2. Additional fields transfered to the invoked chaincode to
    support access control based on signature.
    Change-Id: I649d1953ac76e8af32d917a089a454fc0bba9fc1
    Signed-off-by: default avatarAngelo De Caro <>