# A P2P Scheme for Debating and Voting with Unconditional Flexibility
## 4 Analysis
### Preliminaries  
The process starts with a user who proposes the debate to a group. If this user is an adversary, he/she could send any message with any parameter set to the others. However, in the second step of phase 1 users will look for differences in the received message, which has been signed. Thus, any mismatch is detected and attributed to its author. Users cannot deceive either in this checking process either, because with any fake message (attempting to inform against the initiator) they must show a coherent signature that only initiator can compute. Participants must connect to each other in this phase, and hence the absence of any of them is detected. The initiator can deliver different participant lists to users, but coherence among the members of the same list must be observed in order to pass onto the second step. Even so, users can refuse to participate if they judge that the list or any other parameter is not right.  
At the beginning of each phase, each user contacts the others establishing secure channels, following the TLS protocol. This secure channel is based in asymmetric keys and collision free hash functions that provide authentication, confidentiality, and integrity. Hence, under the threat model assumptions, adversaries outside the user list cannot usurp legitimate user identities (man-in-the-middle attacks), or alter information without being detected or revealing the content of what is sent once the channel has been established. This applies not only to the first phase, which uses digital certificates, but also to the second phase, where alias keys are used instead.  
The next part of the paper considers attacks from adversaries that are group members. As valid users they can achieve signatures from the others, but only one from each honest user. They can sign multiple aliases among themselves, but the rest of the users will only admit their own signature on each alias in phase 2. Therefore, as it is established in lemma 1 below, adversaries cannot login with additional aliases.  
**Lemma 1**.: _Adversaries cannot obtain more signed alias keys from any honest user than there are eligible users among said adversaries._  
Proof.: To obtain an extra alias key means achieving the following set \(\{A_{e},\,A_{e}^{-1},\,sign(a_{e},K_{i}^{-1})\}\) where \(\{A_{e},\,A_{e}^{-1}\}\) must be a pair of asymmetric keys, \(a_{e}=hash(A_{e})\) and \(K_{i}^{-1}\) is the private key of any honest user. From \(a_{e}\) it is not possible to obtain \(A_{e}\) (condition 4 of Section 4.1), nor is it possible from \(A_{e}\) to deduce \(A_{e}^{-1}\) (condition 5). Therefore, adversaries obtain an extra alias key, the hash \(a_{e}\) must be computed from it, and the reverse path is not possible. Thus, adversaries must find a way to obtain the signature of a given number \(a_{e}\), that could be anyvalue in the interval defined by the hash function. Nevertheless, were they to achieve this, there would be a method to obtain the signature of any number, which violates condition 5. Thus, for any given hash, the only way to obtain a signature is that the legitimate user signs it, and an honest user will sign just one per participant.  
During the debate, adversaries can show only the same number of alias keys as there are per user (Lemma 1). Any contribution (votes) is associated with one alias key and cannot be duplicated (uniqueness). The TLS channel and the signature of the contributions at the end prevents users from impersonating other aliases. Nevertheless, adversaries can use different aliases with each user. This way, they can vote differently in each user bulletin board, looking for inconsistency among the group. Therefore a threshold of alias appearances in bulletin boards must be established in order to admit them, and it is not as straightforward as choosing \(n/2\). The next attack example shows the problem.