Algorithms

Algorithms are meant to provide signing interface similar to STL algorithms' one. More...

Functions

template<typename Signer , typename InputIterator , typename KeyIterator , typename OutputIterator , typename StreamSigner = typename detail::itr_stream_sign_traits<Signer, InputIterator>::type>
OutputIterator nil::crypto3::sign (InputIterator first, InputIterator last, KeyIterator key_first, KeyIterator key_last, OutputIterator out)
 
template<typename Signer , typename InputIterator , typename OutputIterator , typename StreamSigner = typename detail::itr_stream_sign_traits<Signer, InputIterator>::type>
OutputIterator nil::crypto3::sign (InputIterator first, InputIterator last, const private_key< Signer > &pk, OutputIterator out)
 
template<typename Signer , typename InputIterator , typename KeyIterator , typename StreamSigner = typename detail::itr_stream_sign_traits<Signer, InputIterator>::type>
detail::range_sign_impl< Signer, detail::value_sign_impl< StreamSigner > > nil::crypto3::sign (InputIterator first, InputIterator last, KeyIterator key_first, KeyIterator key_last)
 
template<typename Signer , typename InputIterator , typename StreamSigner = typename detail::itr_stream_sign_traits<Signer, InputIterator>::type>
detail::range_sign_impl< Signer, detail::ref_sign_impl< StreamSigner > > nil::crypto3::sign (InputIterator first, InputIterator last, const private_key< Signer > &pk)
 
template<typename Signer , typename SinglePassRange , typename KeyRange , typename OutputIterator , typename StreamSigner = typename detail::range_stream_sign_traits<Signer, SinglePassRange>::type>
OutputIterator nil::crypto3::sign (const SinglePassRange &rng, const KeyRange &key, OutputIterator out)
 
template<typename Signer , typename SinglePassRange , typename OutputIterator , typename StreamSigner = typename detail::range_stream_sign_traits<Signer, SinglePassRange>::type>
OutputIterator nil::crypto3::sign (const SinglePassRange &rng, OutputIterator out, const private_key< Signer > &pk)
 
template<typename Signer , typename SinglePassRange , typename KeyRange , typename StreamSigner = typename detail::range_stream_sign_traits<Signer, SinglePassRange>::type>
detail::range_sign_impl< Signer, detail::value_sign_impl< StreamSigner > > nil::crypto3::sign (const SinglePassRange &r, const KeyRange &key)
 
template<typename Signer , typename SinglePassRange , typename StreamSigner = typename detail::range_stream_sign_traits<Signer, SinglePassRange>::type>
detail::range_sign_impl< Signer, detail::ref_sign_impl< StreamSigner > > nil::crypto3::sign (const SinglePassRange &rng, const private_key< Signer > &pk)
 

Detailed Description

Algorithms are meant to provide signing interface similar to STL algorithms' one.

Function Documentation

◆ sign() [1/8]

template<typename Signer , typename InputIterator , typename KeyIterator , typename OutputIterator , typename StreamSigner = typename detail::itr_stream_sign_traits<Signer, InputIterator>::type>
OutputIterator nil::crypto3::sign ( InputIterator  first,
InputIterator  last,
KeyIterator  key_first,
KeyIterator  key_last,
OutputIterator  out 
)
Template Parameters
Signer
InputIterator
OutputIterator
StreamSigner
Parameters
first
last
out
Returns

◆ sign() [2/8]

template<typename Signer , typename InputIterator , typename OutputIterator , typename StreamSigner = typename detail::itr_stream_sign_traits<Signer, InputIterator>::type>
OutputIterator nil::crypto3::sign ( InputIterator  first,
InputIterator  last,
const private_key< Signer > &  pk,
OutputIterator  out 
)
Template Parameters
Signer
InputIterator
OutputIterator
StreamSigner
Parameters
first
last
out
sh
Returns

◆ sign() [3/8]

template<typename Signer , typename InputIterator , typename KeyIterator , typename StreamSigner = typename detail::itr_stream_sign_traits<Signer, InputIterator>::type>
detail::range_sign_impl<Signer, detail::value_sign_impl<StreamSigner> > nil::crypto3::sign ( InputIterator  first,
InputIterator  last,
KeyIterator  key_first,
KeyIterator  key_last 
)
Template Parameters
Signer
InputIterator
StreamSigner
Parameters
first
last
Returns

◆ sign() [4/8]

template<typename Signer , typename InputIterator , typename StreamSigner = typename detail::itr_stream_sign_traits<Signer, InputIterator>::type>
detail::range_sign_impl<Signer, detail::ref_sign_impl<StreamSigner> > nil::crypto3::sign ( InputIterator  first,
InputIterator  last,
const private_key< Signer > &  pk 
)
Template Parameters
Signer
InputIterator
StreamSigner
Parameters
first
last
sh
Returns

◆ sign() [5/8]

template<typename Signer , typename SinglePassRange , typename KeyRange , typename OutputIterator , typename StreamSigner = typename detail::range_stream_sign_traits<Signer, SinglePassRange>::type>
OutputIterator nil::crypto3::sign ( const SinglePassRange &  rng,
const KeyRange &  key,
OutputIterator  out 
)
Template Parameters
Signer
SinglePassRange
OutputIterator
StreamSigner
Parameters
rng
out
Returns

◆ sign() [6/8]

template<typename Signer , typename SinglePassRange , typename OutputIterator , typename StreamSigner = typename detail::range_stream_sign_traits<Signer, SinglePassRange>::type>
OutputIterator nil::crypto3::sign ( const SinglePassRange &  rng,
OutputIterator  out,
const private_key< Signer > &  pk 
)
Template Parameters
Signer
SinglePassRange
OutputIterator
StreamSigner
Parameters
rng
out
sh
Returns

◆ sign() [7/8]

template<typename Signer , typename SinglePassRange , typename KeyRange , typename StreamSigner = typename detail::range_stream_sign_traits<Signer, SinglePassRange>::type>
detail::range_sign_impl<Signer, detail::value_sign_impl<StreamSigner> > nil::crypto3::sign ( const SinglePassRange &  r,
const KeyRange &  key 
)
Template Parameters
Signer
SinglePassRange
StreamSigner
Parameters
r
Returns

◆ sign() [8/8]

template<typename Signer , typename SinglePassRange , typename StreamSigner = typename detail::range_stream_sign_traits<Signer, SinglePassRange>::type>
detail::range_sign_impl<Signer, detail::ref_sign_impl<StreamSigner> > nil::crypto3::sign ( const SinglePassRange &  rng,
const private_key< Signer > &  pk 
)
Template Parameters
Signer
SinglePassRange
StreamSigner
Parameters
rng
sh
Returns