algorithm/deal_share.hpp File Reference
+ Include dependency graph for algorithm/deal_share.hpp:

Go to the source code of this file.

Namespaces

 nil
 
 nil::crypto3
 
 nil::crypto3::pubkey
 

Typedefs

template<typename Scheme >
using nil::crypto3::pubkey::share_dealing_policy = typename pubkey::modes::isomorphic< Scheme >::share_dealing_policy
 
template<typename Scheme >
using nil::crypto3::pubkey::share_dealing_processing_mode_default = typename modes::isomorphic< Scheme >::template bind< share_dealing_policy< Scheme > >::type
 

Functions

template<typename Scheme , typename SinglePassRange , typename ProcessingMode = pubkey::share_dealing_processing_mode_default<Scheme>, typename OutputAccumulator = typename pubkey::share_dealing_accumulator_set<ProcessingMode>>
std::enable_if< boost::accumulators::detail::is_accumulator_set< OutputAccumulator >::value, OutputAccumulator >::type & nil::crypto3::deal_share (const SinglePassRange &range, OutputAccumulator &acc)
 Updating of share dealing accumulator set using shares, dealt by other participant for the current. More...
 
template<typename Scheme , typename InputIterator , typename ProcessingMode = pubkey::share_dealing_processing_mode_default<Scheme>, typename OutputAccumulator = typename pubkey::share_dealing_accumulator_set<ProcessingMode>>
std::enable_if< boost::accumulators::detail::is_accumulator_set< OutputAccumulator >::value, OutputAccumulator >::type & nil::crypto3::deal_share (InputIterator first, InputIterator last, OutputAccumulator &acc)
 Updating of share dealing accumulator set using shares, dealt by other participant for the current. More...
 
template<typename Scheme , typename SinglePassRange , typename ProcessingMode = pubkey::share_dealing_processing_mode_default<Scheme>, typename DealingAccumulator = typename pubkey::share_dealing_accumulator_set<ProcessingMode>, typename StreamSchemeImpl = pubkey::detail::value_pubkey_impl<DealingAccumulator>, typename SchemeImpl = pubkey::detail::range_pubkey_impl<StreamSchemeImpl>>
SchemeImpl nil::crypto3::deal_share (std::size_t i, const SinglePassRange &range)
 Deal share of specified participant using passed shares, dealt by other participant for the current. More...
 
template<typename Scheme , typename SinglePassRange , typename OutputIterator , typename ProcessingMode = pubkey::share_dealing_processing_mode_default<Scheme>>
OutputIterator nil::crypto3::deal_share (std::size_t i, const SinglePassRange &range, OutputIterator out)
 Deal share of specified participant using passed shares, dealt by other participant for the current. More...
 
template<typename Scheme , typename InputIterator , typename ProcessingMode = pubkey::share_dealing_processing_mode_default<Scheme>, typename DealingAccumulator = typename pubkey::share_dealing_accumulator_set<ProcessingMode>, typename StreamSchemeImpl = pubkey::detail::value_pubkey_impl<DealingAccumulator>, typename SchemeImpl = pubkey::detail::range_pubkey_impl<StreamSchemeImpl>>
SchemeImpl nil::crypto3::deal_share (std::size_t i, InputIterator first, InputIterator last)
 Deal share of specified participant using passed shares, dealt by other participant for the current. More...
 
template<typename Scheme , typename InputIterator , typename OutputIterator , typename ProcessingMode = pubkey::share_dealing_processing_mode_default<Scheme>>
OutputIterator nil::crypto3::deal_share (std::size_t i, InputIterator first, InputIterator last, OutputIterator out)
 Deal share of specified participant using passed shares, dealt by other participant for the current. More...