...

Package accesscontrol

import "github.com/hyperledger/fabric/core/chaincode/accesscontrol"
Overview
Index

Overview ▾

type Authenticator

type Authenticator struct {
    // contains filtered or unexported fields
}

func NewAuthenticator

func NewAuthenticator(ca tlsgen.CA) *Authenticator

NewAuthenticator returns a new authenticator that can wrap a chaincode service

func (*Authenticator) Generate

func (ac *Authenticator) Generate(ccName string) (*CertAndPrivKeyPair, error)

Generate returns a pair of certificate and private key, and associates the hash of the certificate with the given chaincode name

func (*Authenticator) Wrap

func (auth *Authenticator) Wrap(srv pb.ChaincodeSupportServer) pb.ChaincodeSupportServer

type CertAndPrivKeyPair

CertAndPrivKeyPair contains a certificate and its corresponding private key in base64 format

type CertAndPrivKeyPair struct {
    // Cert - an x509 certificate encoded in base64
    Cert string
    // Key  - a private key of the corresponding certificate
    Key string
}

type ChaincodeStream

ChaincodeStream defines a gRPC stream for sending and receiving chaincode messages

type ChaincodeStream interface {
    // Send sends a chaincode message
    Send(*pb.ChaincodeMessage) error
    // Recv receives a chaincode message
    Recv() (*pb.ChaincodeMessage, error)
}

type KeyGenFunc

type KeyGenFunc func() (*tlsgen.CertKeyPair, error)