0

Possible Duplicate:
What does the __VIEWSTATE hold?

I'm studying the code for my company's website, and I see the following:

enter image description here

Basically, the code is this:

<div>
<input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="" />
<input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" />
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUJNDI3MDEyMjc1D2QWAmYPZBYCZg9kFgICAw9kFgoCGw8WAh4LXyFJdGVtQ291bnQCBBYIZg9kFgJmDxUEBk1hbmFnZQxTdXJ2ZXlzLmFzcHgOZGlzcGxheTpibG9jaztnPHN0cm9uZyBjbGFzcz0nY2FwdGlvbic+TUFOQUdFPC9zdHJvbmc+PGJyLz48c3Ryb25nIGNsYXNzPSdzdWItY2FwdGlvbic+Q3JlYXRlIGFuZCBSdW4gU3VydmV5czwvc3Ryb25nPmQCAQ9kFgJmDxUEBlN1cHBseRhTdXBwbGllcl9TdXJ2ZXkuYXNweD9tPTIOZGlzcGxheTpibG9jaztoPHN0cm9uZyBjbGFzcz0nY2FwdGlvbic+U1VQUExZPC9zdHJvbmc+PGJyLz48c3Ryb25nIGNsYXNzPSdzdWItY2FwdGlvbic+TW9uaXRvciBhbmQgU2VsbCBTYW1wbGU8L3N0cm9uZz5kAgIPZBYCZg8VBANCaWQ1aHR0cDovL3N0YWdpbmcuc2FtcGxpY2lvLnVzL0Z1bGNydW0vTGV2ZXJhZ2UvQmlkL0xpc3QOZGlzcGxheTpibG9jaztkPHN0cm9uZyBjbGFzcz0nY2FwdGlvbic+QklEPC9zdHJvbmc+PGJyLz48c3Ryb25nIGNsYXNzPSdzdWItY2FwdGlvbic+Q3JlYXRlIGFuZCBNYW5hZ2UgQmlkczwvc3Ryb25nPmQCAw9kFgJmDxUEDlJlcG9ydHMtQWN0aXZlFURhdGFBbmFseXNpcy5hc3B4P209NA5kaXNwbGF5OmJsb2NrO3A8c3Ryb25nIGNsYXNzPSdjYXB0aW9uJz5SRVBPUlQ8L3N0cm9uZz48YnIvPjxzdHJvbmcgY2xhc3M9J3N1Yi1jYXB0aW9uJz5BbmFseXplIFRyYWZmaWMgYW5kIFN1cnZleSBEYXRhPC9zdHJvbmc+ZAIdD2QWBAIBDw8WAh4EVGV4dAUGYWF6emFtZGQCAw8PFgIeC05hdmlnYXRlVXJsBUBDaGFuZ2VQYXNzd29yZC5hc3B4P1VzZXJTSUQ9QjgyRjkyQTktNTA1Mi00MzUyLTgyNjUtN0NCNTgwQ0Y3NDdDZGQCHw8WAh4HVmlzaWJsZWdkAiEPZBYEAgEPFgIfAAICFgRmD2QWAgIBDxYCHgVjbGFzcwUfdGFiIGNvcm5lci1ibGFjay10YWIgdGFiLWFjdGl2ZRYCZg8VAhVEYXRhQW5hbHlzaXMuYXNweD9tPTQLUnVuIFN1cnZleXNkAgEPZBYCAgEPFgIfBAUUdGFiIGNvcm5lci1ibGFjay10YWIWAmYPFQIVRGF0YUFuYWx5c2lzLmFzcHg/bT01Dk1vbml0b3IgU2FtcGxlZAIDDxYCHwACBBYIZg9kFgICAQ8WAh8EBRR0YWIgY29ybmVyLWJsYWNrLXRhYhYCZg8VAhFQcm9qZWN0cy5hc3B4P209NAhQcm9qZWN0c2QCAQ9kFgICAQ8WAh8EBRR0YWIgY29ybmVyLWJsYWNrLXRhYhYCZg8VAgxDbGllbnRzLmFzcHgHQ2xpZW50c2QCAg9kFgICAQ8WAh8EBRR0YWIgY29ybmVyLWJsYWNrLXRhYhYCZg8VAhJTdXBwbGllcnMuYXNweD9tPTQJU3VwcGxpZXJzZAIDD2QWAgIBDxYCHwQFFHRhYiBjb3JuZXItYmxhY2stdGFiFgJmDxUCDlVzZXJzLmFzcHg/bT00BVVzZXJzZAIjD2QWBAITDxYCHglpbm5lcmh0bWwFCUNvbXBsZXRlc2QCFQ9kF....... ETC... ETC. ... VURrv" />
</div>

Why would anyone do this? Does it have anything to do with obfuscation?

Community
  • 1
  • 1
Caffeinated
  • 11,982
  • 40
  • 122
  • 216
  • 5
    Have you tried googling for "View State"? http://msdn.microsoft.com/en-us/library/bb386448(v=vs.100).aspx – Jimmy Jan 16 '13 at 19:44
  • related: [What does the \_\_VIEWSTATE hold?](http://stackoverflow.com/questions/1350216/what-does-the-viewstate-hold) – lc. Jan 16 '13 at 19:45
  • @Jimmy - I will now, ok thank – Caffeinated Jan 16 '13 at 19:45
  • @lc. Nope. OP is asking also about `__EVENTTARGET` and `__EVENTARGUMENT` – Oded Jan 16 '13 at 19:47
  • 1
    For reference - and because this was part of your question - this data is Base64 encoded, both to avoid encoding issues that would arise attempting to store the data in plain text and to allow the hashing the data using a unique server machine key to avoid client side tampering with data. The ViewState is transferred back and forth with every postback and it looks like the website has a lot, this will slow performance. If you're using .NET 4 then you might want to look at [ViewStateMode](http://msdn.microsoft.com/en-us/library/vstudio/system.web.ui.control.viewstatemode(v=vs.100).aspx) – pwdst Jan 16 '13 at 22:34

1 Answers1

5

These hidden fields hold the event and view state data to support server side work in web forms.

TRULY Undstanding ViewState would start you on the way - it is a rather old article by now, but very good regardless. The two other hidden fields use to manage server side events.

I also suggest reading Understanding the JavaScript __doPostBack Function.

Oded
  • 489,969
  • 99
  • 883
  • 1,009