[Zope] Base 64 passed into Zope

Jens Vagelpohl jens at dataflake.org
Mon Feb 6 03:48:31 EST 2006


On 6 Feb 2006, at 08:33, Jonathan Cleaver wrote:

> I have a system which is accepting Base 64 encoded data from an  
> external source, due to the protocol being used at the other end  
> this is being passed in through a URL variable.
>
> e.g. http://foo.bar.com?Data=uiDggGREJJytIIUicSSAa+WEhnGK
>
> I am having an issue (Using Zope 2.7.6, Python 2.3.5) where the +  
> and / characters in the incoming data are being replaced with  
> spaces. Unfortunately, since both + and / are being replaced with  
> the same character, it is not simply a matter of doing a find and  
> replace on the string to restore these characters.
>
> This system did work fine for a long while. I upgraded the  
> machine's Python from 2.3.5 to 2.4.1 a couple of months ago and  
> have now reverted back to 2.3.5.
>
> Has anyone encountered a similar problem before and how can I work  
> around/through it?

Just base64-encoding and then attempting to pass that in a URL is not  
safe. The right approach would be to base64-encode and then urlencode  
before adding it into the URL.

jens



More information about the Zope mailing list