You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C#解密Chrome v20 Cookie遇阻:应用绑定密钥解密失败

解决Chrome v20 Cookie解密中应用绑定密钥的解密错误

问题重现

尝试在C#中解密Chrome v20版本Cookie,参考Python实现解密应用绑定密钥时,执行以下代码报错:

var appBoundEncKeyB64 = JObject.Parse(localState)["os_crypt"]["app_bound_encrypted_key"].ToString();
var appBoundEncKey = Convert.FromBase64String(appBoundEncKeyB64).Skip(4).ToArray();
var appBoundDecodedKey = ProtectedData.Unprotect(appBoundEncKey, null, DataProtectionScope.LocalMachine);

错误信息:

at System.Security.Cryptography.ProtectedData.Unprotect(Byte[] encryptedData, Byte[] optionalEntropy, DataProtectionScope scope)
at Common.BrowserCookieReader.ReadCookieValue(String browserName, String browserCompanyName, String cookieName, String cookieHost, String username)

System.Security.Cryptography.CryptographicException: 'Key not valid for use in specified state.'

已以管理员模式运行Visual Studio。

可能的原因及解决方案

1. 数据保护范围错误

Chrome的app_bound_encrypted_key是基于当前用户上下文加密的,而非机器全局。将DataProtectionScope.LocalMachine替换为DataProtectionScope.CurrentUser即可:

var appBoundDecodedKey = ProtectedData.Unprotect(appBoundEncKey, null, DataProtectionScope.CurrentUser);

这是此类问题最常见的诱因,Chrome针对用户级数据默认使用CurrentUser范围做DPAPI加密。

2. 前缀字节处理错误

确认app_bound_encrypted_key解码后的前4字节是否为DPAPI标准前缀(通常是01 00 00 00)。如果前缀长度不符,会导致解密失败。可以打印前4字节的十六进制值验证:

var prefix = Convert.FromBase64String(appBoundEncKeyB64).Take(4).ToArray();
Console.WriteLine(BitConverter.ToString(prefix));

若前缀长度不是4字节,调整Skip()的参数值。

3. 用户上下文不匹配

即便以管理员权限运行程序,若程序的用户身份和Chrome运行的用户身份不一致,DPAPI也无法跨用户解密。确保程序和Chrome运行在同一个用户账户下——哪怕需要管理员权限,也要用该用户身份启动Visual Studio。

4. 文件权限不足

除管理员权限外,需确保程序能读取Chrome的Local State文件(路径通常为C:\Users\<用户名>\AppData\Local\Google\Chrome\User Data\Local State),检查该文件的读取权限是否对当前程序开放。

5. Base64格式不兼容

部分场景下app_bound_encrypted_key会使用URL安全的Base64编码(用-替代+、_替代/),解密前需先转换为标准Base64格式:

appBoundEncKeyB64 = appBoundEncKeyB64.Replace('-', '+').Replace('_', '/');
// 补全Base64填充位
while (appBoundEncKeyB64.Length % 4 != 0)
{
    appBoundEncKeyB64 += '=';
}

内容的提问来源于stack exchange,提问作者Rougher

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 01:37:41