Die Steuerelemente auf der Seite können anfordern, dass die Verschlüsselung für ViewState verwendet wird, aber selbst diese Anforderung kann durch die Seiteneinstellung überschrieben werden.
Die ViewStateEncryptionMode-Enumeration hat drei Werte: Auto, Immer und Nie. Der Standardwert ist Auto.
ViewStateEncryptionMode.Auto
In diesem Modus wird ASP.NET Viewstate für eine Seite verschlüsseln, wenn eine Kontrolle auf der Seite fordert er. Beachten Sie, dass dies bedeutet, dass der gesamte ViewState verschlüsselt ist, nicht nur der ViewState für das Steuerelement, das es anfordert. Ein Großteil der mit der Verschlüsselung verbundenen Leistungskosten liegt im Overhead. Das Verschlüsseln des gesamten ViewState ist also schneller als das Ausführen separater Verschlüsselungsoperationen, wenn mehr als ein Steuerelement die Anforderung ausführt.
ViewStateEncryptionMode.Never
Wie man erwarten würde, in diesem Modus ASP.NET die Viewstate nicht verschlüsseln, auch wenn die Anwendung für die Verschlüsselung und Steuerelemente auf der Seite gesetzt hat es angefordert. Wenn Sie wissen, dass keine an der Seite beteiligten Daten verschlüsselt werden müssen, können Sie den Modus auf "Nie" einstellen. An dieser Stelle ist es jedoch selten, dass in der Dokumentation zu einem Steuerelement angegeben wird, was in ViewState gespeichert wird. Daher sollten Sie vorsichtig sein, wenn die Möglichkeit besteht, dass vertrauliche Daten verfügbar gemacht werden.
ViewStateEncryptionMode.Always
In diesem Modus wird ASP.NET nicht für eine Kontrolle auf der Seite warten Verschlüsselung anzufordern. ViewState ist immer verschlüsselt. Bei der Arbeit mit vertraulichen Daten empfiehlt es sich, die Verschlüsselung zu verwenden.
Quelle: http://msdn.microsoft.com/en-us/library/aa479501.aspx