Clearmatics Libff  0.1
C++ library for Finite Fields and Elliptic Curves
wnaf.hpp
Go to the documentation of this file.
1 
13 #ifndef WNAF_HPP_
14 #define WNAF_HPP_
15 
17 #include <vector>
18 
19 namespace libff
20 {
21 
24 template<mp_size_t n>
25 void update_wnaf(
26  std::vector<long> &naf, const size_t window_size, const bigint<n> &scalar);
27 
30 template<mp_size_t n>
31 std::vector<long> find_wnaf(const size_t window_size, const bigint<n> &scalar);
32 
34 template<typename T> size_t wnaf_opt_window_size(const size_t scalar_bits);
35 
38 template<typename T>
40  const size_t window_size, const T &base, const std::vector<long> &naf);
41 
44 template<typename T, mp_size_t n>
46  const size_t window_size, const T &base, const bigint<n> &scalar);
47 
50 template<typename T, mp_size_t n>
52  const T &base, const bigint<n> &scalar, const size_t scalar_bits);
53 
54 } // namespace libff
55 
57 
58 #endif // WNAF_HPP_
libff
Definition: ffi.cpp:8
bigint.hpp
libff::update_wnaf
void update_wnaf(std::vector< long > &naf, const size_t window_size, const bigint< n > &scalar)
libff::opt_window_wnaf_exp
T opt_window_wnaf_exp(const T &base, const bigint< n > &scalar, const size_t scalar_bits)
wnaf.tcc
libff::find_wnaf
std::vector< long > find_wnaf(const size_t window_size, const bigint< n > &scalar)
libff::wnaf_opt_window_size
size_t wnaf_opt_window_size(const size_t scalar_bits)
Compute optimal window size.
libff::fixed_window_wnaf_exp
T fixed_window_wnaf_exp(const size_t window_size, const T &base, const std::vector< long > &naf)