code: func GetCryptoBackend(ctx context.Context, cb backend.CryptoBackend, cfgdir string, agent *client.Client) (backend.Crypto, error) {
  	ctx = client.WithClient(ctx, agent)
  	ctx = ctxutil.WithConfigDir(ctx, cfgdir)
  	crypto, err := backend.NewCrypto(ctx, cb)
  	if err != nil {
  		return nil, errors.Wrapf(err, "unknown crypto backend")
  	}
  	return crypto, nil
  }
docs: // GetCryptoBackend initialized the correct crypto backend