首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何访问.NET用于ViewState签名和加密的基础库

如何访问.NET用于ViewState签名和加密的基础库
EN

Stack Overflow用户
提问于 2010-08-11 21:10:28
回答 1查看 132关注 0票数 1

我需要通过客户端线程状态,但只针对特定的get请求(又称链接)。因此,我不想将此状态添加到客户端的ViewState中,从而使其变得混乱。需要对状态进行加密。如何在machine.config中创建一个新的类似视图状态的字典,并使用MachineKey中的密钥和设置对其进行加密?如果没有公开字典组件,我如何使用machine.config中的密钥加密/解密字符串。我不想添加更多的配置,这些配置必须在我们的服务器场中复制以复制现有功能。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-08-11 22:50:25

机器密钥配置可以通过System.Web.Configuration.MachineKeySection访问,除了构造函数和Reset之外,它没有任何公共方法。

字符串的解密通过以下方法处理:

代码语言:javascript
复制
.method assembly hidebysig static string 
    DecryptStringWithIV(string s,
                        valuetype System.Web.Configuration.IVType ivType) cil managed

哪个调用

代码语言:javascript
复制
.method assembly hidebysig static uint8[] 
    EncryptOrDecryptData(bool fEncrypt,
                         uint8[] buf,
                         uint8[] modifier,
                         int32 start,
                         int32 length,
                         bool useValidationSymAlgo,
                         bool useLegacyMode,
                         valuetype System.Web.Configuration.IVType ivType) cil managed

它们都是私有的;加密/解密功能不公开。可以通过构造HttpContext来通过System.Web.IHttpHandler的实现访问解密,尽管我不确定在哪里可以调用加密功能。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3458589

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档