Used to create whats called `B` in the paper. `B = g_0 + user_public_key + \sum_i{g_i * m_i}`
(
&self,
indexed_messages_sorted_by_index: MI,
user_public_key: &'a UserPublicKey<G>,
)
| 124 | |
| 125 | /// Used to create whats called `B` in the paper. `B = g_0 + user_public_key + \sum_i{g_i * m_i}` |
| 126 | pub fn b<'a, MI>( |
| 127 | &self, |
| 128 | indexed_messages_sorted_by_index: MI, |
| 129 | user_public_key: &'a UserPublicKey<G>, |
| 130 | ) -> Result<G::Group, KVACError> |
| 131 | where |
| 132 | MI: IntoIterator<Item = (usize, &'a G::ScalarField)>, |
| 133 | { |
| 134 | let commitment = self.commit_to_messages(indexed_messages_sorted_by_index)?; |
| 135 | Ok(commitment + self.g_0 + user_public_key.0) |
| 136 | } |
| 137 | } |
| 138 | |
| 139 | impl<G: AffineRepr> MultiMessageSignatureParams for MACParams<G> { |
no test coverage detected