'''Protocol header encrypt''' or '''Protocol header encryption''' ('''PHE'''), '''Message stream encryption''' ('''MSE'''), or '''Protocol encryption''' ('''PE''') are features of some [[BitTorrent]] clients that attempts to make BitTorrent hard to throttle. Some [[Internet service provider|ISP]]s throttle BitTorrent traffic because it makes up a large porportion of total traffic and the ISPs don't want to spend money buying extra capacity. Instead, the ISPs spend money on hardware that look for BitTorrent traffic and slow them down.
==History==
Protocol header encrypt was conceived by [[RnySmile]] and first implemented in the [[BitComet]] client version 0.60 on [[8 September]] [[2005]].
Protocol encryption was implemented in [[µTorrent]] version 1.4.1 build 407.
[[µTorrent]] will implement protocol encryption in a later release. [http://forum.utorrent.com/viewtopic.php?pid=44229#p44229] It is not called protocol header encryption because it encrypts all of the data, not just the headers. Due to a lack of cooperation between the Azureus and µTorrent developers, µTorrent was planning to use its own protocol. However, recent developments may mean they will collaborate on the protocol after all. [http://forum.utorrent.com/viewtopic.php?pid=45927#p45927] A new protocol specification was created by various developers and it was agreed that it was better than the current one in Azureus. Because of this, both clients are more than likely to implement the same new encryption protocol.▼
▲[[µTorrent]] will implement protocol encryption in a later release. [http://forum.utorrent.com/viewtopic.php?pid=44229#p44229] It is not called protocol header encryption because it encrypts all of the data, not just the headers. Due to a lack of cooperation between the Azureus and µTorrent developers, µTorrent was planning to use its own protocol. However, recent developments may meanmeans they will collaborate on the protocol after all. [http://forum.utorrent.com/viewtopic.php?pid=45927#p45927] A new protocol specification was created by various developers and it was agreed that it wasis better than the currentmethod previously oneused in Azureus. Because of this, both clients areimplemented morethe thansame likelynew toencryption implementprotocol. the sameThe new encryption protocol is called MSE in Azureus and PE in µTorrent.
==Operation==
The BitComet PHE method is not published.
TheWith AzureusMSE/PE, methodusers can choose between encrypting all the data or just the headers. It uses a [[D-H]] exchange to establish the key, then it either uses [[RC4]] as the encryption method or just send the message as [[plaintext]].