当前位置: 首页>>代码示例>>C++>>正文


C++ PRNG::SetSeed方法代码示例

本文整理汇总了C++中PRNG::SetSeed方法的典型用法代码示例。如果您正苦于以下问题:C++ PRNG::SetSeed方法的具体用法?C++ PRNG::SetSeed怎么用?C++ PRNG::SetSeed使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在PRNG的用法示例。


在下文中一共展示了PRNG::SetSeed方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: tau

void MAC_Check<T>::Check(const Player& P)
{
  if (WaitingForCheck() == 0)
    return;

  //cerr << "In MAC Check : " << popen_cnt << endl;
  octet seed[SEED_SIZE];
  this->timers[SEED].start();
  Create_Random_Seed(seed,P,SEED_SIZE);
  this->timers[SEED].stop();
  PRNG G;
  G.SetSeed(seed);

  Share<T>  sj;
  T a,gami,h,temp;
  a.assign_zero();
  gami.assign_zero();
  vector<T> tau(P.num_players());
  for (int i=0; i<popen_cnt; i++)
    { h.almost_randomize(G);
      temp.mul(h,vals[i]);
      a.add(a,temp);
      
      temp.mul(h,macs[i]);
      gami.add(gami,temp);
    }
  vals.erase(vals.begin(), vals.begin() + popen_cnt);
  macs.erase(macs.begin(), macs.begin() + popen_cnt);
  temp.mul(this->alphai,a);
  tau[P.my_num()].sub(gami,temp);

  //cerr << "\tCommit and Open" << endl;
  this->timers[COMMIT].start();
  Commit_And_Open(tau,P);
  this->timers[COMMIT].stop();

  //cerr << "\tFinal Check" << endl;

  T t;
  t.assign_zero();
  for (int i=0; i<P.num_players(); i++)
    { t.add(t,tau[i]); }
  if (!t.is_zero()) { throw mac_fail(); }

  popen_cnt=0;
}
开发者ID:lance6716,项目名称:SPDZ-2,代码行数:46,代码来源:MAC_Check.cpp


注:本文中的PRNG::SetSeed方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。