1

最近、製品のログにこのエラーが頻繁に表示されます。このエラーについてネットで検索しました。私はこれこれ、またはこれのようなメモを見ました。それらすべての結論は、machineKey を設定する必要があるということです。しかし、すでに machineKey が設定されています。そのように:

<machineKey decryption="AES"
        validation="SHA1"
        decryptionKey="64 hex key"
        validationKey="other 64 hex key"/>

また、私は Web ファーム サーバーを使用しており、アプリケーションは asp.net 3.5 を使用しています。

この問題についてどうしようもありません =\ どうすればこの問題を解決できますか?

ありがとう。

編集:

完全なログは次のとおりです。

Time: 04/07/2011 19:52:25
MESSAGE: Padding is invalid and cannot be removed.
HTTP_REFERER: 
SOURCE: mscorlib
FORM: 
QUERYSTRING: d=iAY45pNWTDkOra20F86mL9NBCe-wjxevTFjlNNxafjqLF0Aug2JmvB-c_8JQN4XnDIU1UJTmY2MC1xuySMKscg2&t=633851453303086250
TARGETSITE: Int32 DecryptData(Byte[], Int32, Int32, Byte[] ByRef, Int32, System.Security.Cryptography.PaddingMode, Boolean)
STACKTRACE:    at System.Security.Cryptography.RijndaelManagedTransform.DecryptData(Byte[] inputBuffer, Int32 inputOffset, Int32 inputCount, Byte[]& outputBuffer, Int32 outputOffset, PaddingMode paddingMode, Boolean fLast)
   at System.Security.Cryptography.RijndaelManagedTransform.TransformFinalBlock(Byte[] inputBuffer, Int32 inputOffset, Int32 inputCount)
   at System.Security.Cryptography.CryptoStream.FlushFinalBlock()
   at System.Web.Configuration.MachineKeySection.EncryptOrDecryptData(Boolean fEncrypt, Byte[] buf, Byte[] modifier, Int32 start, Int32 length, IVType ivType, Boolean useValidationSymAlgo)
   at System.Web.UI.Page.DecryptStringWithIV(String s, IVType ivType)
   at System.Web.Handlers.AssemblyResourceLoader.System.Web.IHttpHandler.ProcessRequest(HttpContext context)
   at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
   at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
4

1 に答える 1

3

最近の ASP.Net パッチにより、暗号化形式が変更されました。

ファーム内のすべてのサーバーが完全に更新されていることを確認してください。

于 2011-07-04T19:14:08.907 に答える