Skip to content
  • YACOVM's avatar
    [FAB-2061] Gossip inter-org confidentiality - P3 · 9d042696
    YACOVM authored
    
    
    In the previous commit, I extended the pull mechanism to support
    filtering based on the remote peer.
    
    The goal was to ensure that peers only gossip identities of either
    their own organization, or of organizations they are gossiping with.
    (Meaning- if A gossips with B identities, the identities that are sent
    are either identities of A or of B).
    
    In this commit I hook a filter to the constructor of the identity puller
    that extracts the organization of the remote peer, and based on the
    organization of the digest (which is the PKI-ID of the identity),
    the filter ensures the confidentiality explained above.
    
    I also extended the test of the first commit in the series, to inspect
    identities that travel between organizations, to make sure
    that the confidentiality rules are preserved.
    
    I also did the following test, to make sure that state transfer between
    peers still works:
    
    network_setup.sh: Overided the docker-compose file with docker-compose-no-tls
    peer-base/peer-base-no-tls.yaml: I made both options:
          - CORE_PEER_GOSSIP_ORGLEADER=false
          - CORE_PEER_GOSSIP_USELEADERELECTION=false
    And in docker-compose-no-tls.yaml I made ONLY peer0 to be ORGLEADER-true
    
    Then I ran network_setup.sh up and it passed, so this proves that
    peer2 and peer3 got their blocks from peer0 (or peer1).
    
    Change-Id: Ied4979dd5cfc24ef7b0d1bc092653e9f037a64f2
    Signed-off-by: default avatarYacov Manevich <yacovm@il.ibm.com>
    9d042696