It depends on where your entry comes from and what you want to do with it. There is a lot of time when the infrastructure decodes you before you see something: Request.Form, Request.QueryString, etc.
If you read a coded string from another place, for example, a database, then you can decode it, otherwise you will see a double encoding, for example:
I 3> AntiXSS encoded once becomes I 3> AntiXSS which then becomes after double encoding I 3> AntiXSS
which may have unintended side effects depending on what the outlet consumes. An example of canonization is the act of decoding until the string is longer.
blowdart
source share