code: func NewSignerEntity(ID string, bccsp bccsp.BCCSP, sKey bccsp.Key, sOpts bccsp.SignerOpts, hOpts bccsp.HashOpts) (*BCCSPSignerEntity, error) {
  	if ID == "" {
  		return nil, errors.New("NewSignerEntity error: empty ID")
  	}
  
  	if bccsp == nil {
  		return nil, errors.New("NewSignerEntity error: nil bccsp")
  	}
  
  	if sKey == nil {
  		return nil, errors.New("NewSignerEntity error: nil key")
  	}
  
  	return &BCCSPSignerEntity{
  		BCCSPEntity: BCCSPEntity{
  			IDstr: ID,
  			BCCSP: bccsp,
  		},
  		SKey:  sKey,
  		SOpts: sOpts,
  		HOpts: hOpts,
  	}, nil
  }
docs: // NewSignerEntity returns a SignerEntity