Windows7 注册表byte[]密钥解密
来源:互联网 发布:pc蛋蛋算法 编辑:程序博客网 时间:2024/06/07 03:29
注册表位置:
\\HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion
值位置
DigitalProductId
从注册表中获取密钥的byte[]:
RegistryKey hklm = Registry.LocalMachine;hklm = hklm.OpenSubKey("SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion");byte[] digitalProductId = hklm.GetValue("DigitalProductId") as byte[];textBox1.Text = DecodeProductKey(digitalProductId);
核心代码:
public static string DecodeProductKey(byte[] digitalProductId){ // Offset of first byte of encoded product key in // 'DigitalProductIdxxx" REG_BINARY value. Offset = 34H. const int keyStartIndex = 52; // Offset of last byte of encoded product key in // 'DigitalProductIdxxx" REG_BINARY value. Offset = 43H. const int keyEndIndex = keyStartIndex + 15; // Possible alpha-numeric characters in product key. char[] digits = new char[] { 'B', 'C', 'D', 'F', 'G', 'H', 'J', 'K', 'M', 'P', 'Q', 'R', 'T', 'V', 'W', 'X', 'Y', '2', '3', '4', '6', '7', '8', '9', }; // Length of decoded product key const int decodeLength = 29; // Length of decoded product key in byte-form. // Each byte represents 2 chars. const int decodeStringLength = 15; // Array of containing the decoded product key. char[] decodedChars = new char[decodeLength]; // Extract byte 52 to 67 inclusive. ArrayList hexPid = new ArrayList(); for (int i = keyStartIndex; i <= keyEndIndex; i++) { hexPid.Add(digitalProductId[i]); } for (int i = decodeLength - 1; i >= 0; i--) { // Every sixth char is a separator. if ((i + 1) % 6 == 0) { decodedChars[i] = '-'; } else { // Do the actual decoding. int digitMapIndex = 0; for (int j = decodeStringLength - 1; j >= 0; j--) { int byteValue = (digitMapIndex << 8) | (byte)hexPid[j]; hexPid[j] = (byte)(byteValue / 24); digitMapIndex = byteValue % 24; decodedChars[i] = digits[digitMapIndex]; } } } return new string(decodedChars);}
0 0
- Windows7 注册表byte[]密钥解密
- 最新windows7旗舰版密钥
- windows7旗舰版激活密钥
- windows7旗舰版激活密钥
- windows7密钥永久版
- Windows7写注册表注意事项
- Windows7写注册表注意事项
- SQL2005 密钥加密解密
- NYOJ771,密钥解密
- 生成密钥,解密钥
- nyoj771密钥解密
- 加密解密---非对称密钥/对称密钥
- Windows7:修改系统注册表工具
- 带密钥的加解密
- md5加密 密钥加密解密
- NY--771 -- 密钥解密 [ASCII]
- 文件加解密 - 密钥保存
- 771 密钥解密【字符串处理】
- Oracle命令行操作方式
- ZOJ 3329 One Person Game(概率dp)
- linux进程间通信之共享内存篇
- 卸载CentOS自带的JDK
- 虚拟机检测技术剖析
- Windows7 注册表byte[]密钥解密
- JNI编程注意事项
- ubuntu如何删除安装的软件,
- 2015寒假集训周赛第一场 F 题
- iOS开发-AFNetworking之上传图片音乐文件
- arm-linux-gcc:没有那个文件或目录
- 《MonkeyRunner原理剖析》第九章-MonkeyImage实现原理 - 第二节 - ADB截屏服务
- 一篇ACM奋斗史
- Ajax介绍