Nie wiem czy pytanie dotyczy protokołu http, czy jest bardziej generalne.
W takich sytuacjach należy się rozejrzeć jak to robią starsi i mądrzejsi.
Na stronach www do przesyłania danych formularzy stosowane jest tak zwane kodowanie URL.
Poszczególne pola są oddzielone znakiem & a różne znaki specjalne są zakodowane przy pomocy kodowania procentowego. Tutaj znajdziesz szczegóły
https://www.w3schools.com/tags/ref_urlencode.ASP
"Login=Ketchup Password=Sól z pieprzem"
zostanie zakodowany jako
"Login=Ketchup&Password=S%C3%B3l%20z%20pieprzem"