加密授权验证学习之一 ——获取计算机CPUID序列号

2023-10-31

     最近项目中需要对CPUID、硬盘序列号、网卡物理地址进行加密授权验证,网上这方面的资料代码很多,但很多都有错或者不能正确获取,通过整理与学习,将自己已经正确获得的代码分享出来吧。

code:

#include <iostream>
#include <string>
#include <windows.h>

using namespace std;

string GetCPUID()
{
	std::string strCPUId;
	unsigned long s1, s2;
	char buf[32] = { 0 };
	__asm{
		mov eax, 01h   //eax=1:取CPU序列号
			xor edx, edx
			cpuid
			mov s1, edx
			mov s2, eax
	}
	if (s1) {
		memset(buf, 0, 32);
		sprintf_s(buf, 32, "%08X", s1);
		strCPUId += buf;
	}
	if (s2) {
		memset(buf, 0, 32);
		sprintf_s(buf, 32, "%08X", s2);
		strCPUId += buf;
	}
	__asm{
		mov eax, 03h
			xor ecx, ecx
			xor edx, edx
			cpuid
			mov s1, edx
			mov s2, ecx
	}
	if (s1) {
		memset(buf, 0, 32);
		sprintf_s(buf, 32, "%08X", s1);
		strCPUId += buf;
	}
	if (s2) {
		memset(buf, 0, 32);
		sprintf_s(buf, 32, "%08X", s2);
		strCPUId += buf;
	
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

加密授权验证学习之一 ——获取计算机CPUID序列号 的相关文章

  • .NET 单点登录

    我一直在尝试使用 C 为 NET Web 应用程序实现 WEB SSO 服务提供程序插件 我将使用 shibboleth 身份提供商 我已经使用 OpenSAML 库为 java 应用程序实现了相同的功能 我想知道在 NET 应用程序中使用
  • fopen_s 怎么会比 fopen 更安全呢?

    我正在处理遗留代码Windows平台 当我编译代码时VS2013 它给出以下警告 错误 C4996 fopen 该函数或变量可能不安全 考虑使用fopen s反而 要禁用弃用 请使用 CRT SECURE NO WARNINGS 详情请参见
  • 将字符串作为 PChar 从 CSharp 传递到 Delphi DLL

    我正在尝试将字符串从 C 传递到 Delphi 构建的 DLL Delphi DLL 需要 PChar 这是Delphi导出 procedure DLL Message Location PChar AIntValue integer st
  • 将公历日期转换为儒略日期,然后再转换回来(随着时间)

    我正在编写一个程序 必须将当前的公历日期和时间转换为儒略日期 然后再转换回公历门 最终我需要添加能够添加年 月 日 小时 分钟和秒的功能 但我需要先解决这部分问题 现在我已经从公历日期转换为儒略日期 所以从逻辑上讲 我觉得我应该能够以某种方
  • 最新 .Net MongoDb.Driver 的连接问题

    我创建了一个 MongoLab 沙箱数据库 我与 MongoChef 连接 效果很好 我通过 Nuget 安装了 MongoDB Driver 2 2 2 我编写了一些简单的 C 演示代码 但就是无法使其工作 连接字符串是直接从 Mongo
  • 组合框下拉位置

    我有一个最大化的表单 其中包含 500px 的组合框控件 停靠在右上角 Width 尝试打开组合框后 列表的一半超出了屏幕 如何强制列表显示在表单中 棘手的问题 我找不到解决这个问题的好办法 只是一个解决方法 添加一个新类并粘贴如下所示的代
  • 如何将 Q 格式整数转换为浮点数(反之亦然)?

    我四处搜寻 找不到一个很好的问题来回答这个问题 给定一个整数 使用Q Format https en wikipedia org wiki Q number format 如何将该数字转换为普通浮点类型 反之亦然 如何将浮点类型转换为Q F
  • 处理“未找到细胞”。 Excel 中的错误

    我正在使用 Excel VSTO 应用程序并使用以下代码在工作表中查找错误单元格 Excel Range rngTemp Excel Range rngErrorRange Excel Worksheet Sheet1 Excel Work
  • 我在使用 ado.net 时收到错误 Argument 2 may not be pass with ref keywords

    int t 0 cmd Parameters AddWithValue Res ref t 我在第二行收到错误 参数 2 不能与 ref 关键字一起传递 您只能通过引用传递参数ref if the 范围 is a ref参数也是如此 Add
  • DataGridView 行背景颜色没有改变

    我想根据加载时的特定条件更改 DGV 行的背景颜色 即使在 Windows 窗体中也是如此 但我看不到任何 DGV 行的颜色有任何变化 谁能告诉我如何解决这个问题 private void frmSecondaryPumps Load ob
  • 如何在 C# 中更改公共 IP 地址

    我正在创建一个 C winform 应用程序 我想在其中更改公共 IP 地址 而不是像 Hotspot Shield ZenMate OpenVPN 等那样更改 IPv4 地址 我已经检查了以下链接 但没有找到足够的帮助 所以我发布了这个问
  • Type.GetInterfaces() 仅适用于声明的接口

    首先 像这样的问题有很多 也许有些OP甚至在问同样的问题 问题是这些问题的答案 无论是否接受 都没有真正回答这个问题 至少我找不到 如何确定类直接声明的接口 而不是由父级或声明的接口继承的接口 e g interface I interfa
  • 选择合适的IDE

    您会推荐使用以下哪种 IDE 语言来在 Windows 下开发涉及识别手势并与操作系统交互的项目 我将使用 OpenCV 库来执行图像处理任务 之后 我将使用 win32 API 或 NET 框架与操作系统交互 具体取决于您建议的工具 性能
  • 连接到没有元数据的网络服务

    我想连接到此网络服务 https training api temando com schema 2009 06 server wsdl https training api temando com schema 2009 06 serve
  • 如何将System.Windows dll添加到Visual Studio 2010 Express?

    我正在开发一个小型应用程序C and VS2010 as IDE with NET框架4 我想用CaptureSource类以便从笔记本电脑的网络摄像头捕获视频 为此我需要添加一个命名空间System Windows DependencyO
  • “1个未解决的外部”C++

    我已经检查了所有文件之间的连接以及类和函数定义 但每次我尝试运行我的程序时 它都会阻止我并告诉我它有 1 个未解析的外部 该程序应该打开多个文件 一个 学生 文件和一个 成绩 文件 从中读取数据 然后使用 查询文件 来查找数据 找到查询中要
  • 卸载程序

    我正在尝试使用此代码卸载程序 但它似乎不起作用 我尝试过其他答案 但似乎也不起作用 有人可以帮助我吗 我正在尝试按给定名称 displayName 卸载该程序 例如 我给出 displayName Appname 那么此代码应该从我的计算机
  • 为什么在构造函数中设置字段是(或不是)线程安全的?

    假设您有一个像这样的简单类 class MyClass private readonly int a private int b public MyClass int a int b this a a this b b public int
  • 将一个 IEnumerable 拆分为多个 IEnumerable

    我是 linq 新手 我需要根据指示器将 Couple string text bool Indicator 类型的 IEnumerable 拆分为多个 IEnumerable 我尝试使用skipWhile 和 TakeWhile 但没有找
  • 如何使用 C# 为 azure devops 变量赋值

    我有 selenium C 测试脚本 可以从浏览器获取令牌 我有两个 azure devops 任务 一个用于执行 selenium 测试 另一个用于执行 API 测试 我想将 selenium 测试获取的令牌传递给 API 测试执行任务

随机推荐

  • 22-队列

    队列 Queue 一般的顺序队列 由于这种结构会有假溢出的情况 所以一般不选择这种队列 而更多的使用循环队列 循环队列 判断队列满的情况 1 count来计数 通常使用count Count等于队列的MAXSIZE 2 Flag标志 int
  • FlatBuffers学习总结

    据说facebook使用google的黑科技flatbuffers 用来替代传统的json进行数据交换 大大提高了facebook android客户端的效率 于是我在网上查找各种资料学习了一下flatbuffers 参看资料包括GOOGL
  • 卷积神经网络-猫狗识别(附源码)

    一 项目描述 该项目将使用卷积神经网络算法 识别图片中的动物是猫还是狗 数据集地址 https momodel cn explore 5efc77dbc018c95e69fb2a81 type dataset 其中 训练用的图片数据集在 d
  • Python:TypeError: function object is not subscriptable

    X train X test y train y test train test split wine dataset data wine dataset target random state 0 以上语句在jupytet noteboo
  • python递归搜索文件再同步到服务器,Python递归查找文件并移动到一个目标目录

    脚本应递归浏览根路径目录并查找所有带 mp4扩展名的文件 打印目录结构的文件列表 然后将文件移动到destDir目录 我遇到的问题是当试图将文件移动到新目录 只有rootPath目录中的文件将被移至新目标 在ROOTPATH下子目录中的文件
  • Android 判断当前APP是否在前台

    Android 判断当前APP是否在前台 isTopActivityAPP com test 1 private boolean isTopActivityAPP String packageName int taskNumber bool
  • android jetpack之LifeCycle

    jetpack是一整套google为开发者提供的开发库 里面包含很多组件 今天学习下LifeCycle LifeCycle是可以感知生命周期型组件可执行操作来响应另一个组件 如 Activity 和 Fragment 的生命周期状态的变化
  • 解决百度文库复制问题 非VIP也能复制文字

    目录 前言 方法1 百度文库搜索功能 方法2 百度文库翻译接口 方法3 查看html的innerText 前言 百度的产品非常多 但是如果没有VIP 那么使用起来的用户体验无异于粪池蝶泳 这是不好的 今天来解决百度文库的复制问题 有些时候
  • mybatis中with invalid types () or values ()错误

    在使用配置mybatis时出现了with invalid types or values 错误 Exception in thread main org apache ibatis exceptions PersistenceExcepti
  • 基于Kubernetes平台部署Grafana Loki Promtail系统

    原文链接 基于Kubernetes平台部署Grafana Loki Promtail系统 文章目录 一 创建独立的命名空间 二 部署Grafana 2 1 编写grafana部署的配置文件 2 2 部署grafana 三 部署 Loki 3
  • layui 点击重置按钮, select 并没有被重置(大坑)

    如下所示 点击重置时 输入框被重置为空 而账号 select元素并没有被重置 重置事件 reset click function searchConte
  • 单链表与双链表-线性表的链式表示

    文章目录 前言 一 单链表 1 单链表的结构体定义 2 单链表的创建 3 单链表的基本操作 3 1 输出操作 PrintList 3 2 按位查找 GetElem 3 3 按值查找 LocateElem 3 4 插入操作 ListInser
  • FM的DNN实现——隐向量可以认为就是embedding学习的权重

    之前一直在思考怎么实现FM 后来在看DeepFM的时候 被一句话点醒 如下 DeepFM论文中有这么一句话 the latent feature vectors V in FM now server as network weights w
  • OD华为机试 24

    两数之和绝对值最小 描述 给定一个从小到大的有序整数序列 存在正整数和负整数 数组 nums 请你在该数组中找出两个数 其和的绝对值 nums x nums y 为最小值 并返回这个绝对值 每种输入只会对应一个答案 但是 数组中同一个元素不
  • Unity Shader 学习 004-Shader 调试 平台差异性 第三方调试工具

    文章目录 学习时间 学习产出 1 调试Shader 1 1 我们打开FrameDebug窗口 1 2 通过FrameDebug窗口查看我们shader渲染目标的状态 2 平台差异性 2 1 抗锯齿 2 2 DX平台定义变量更严格 3 第三方
  • 利用nodemcu和mqtt协议让嵌入式设备接入互联网(一.layui前端框架)

    文章目录 前言 HTML知识简单总结 vscode快捷操作 HTML知识总结 HMTL结构 头部 身体 样式表CSS layui介绍 源码 前言 为了让自己的嵌入设备接入互联网 而且能互相通讯 用直接的TCP或者UDP协议肯定是不够的 在了
  • 华清 c++ day2 9月7

    include
  • React 状态、事件与动态渲染

    全文共 3663 个字 列表与组件的键值 首先让我们看看在JavaScript中我们是如何处理一个列表的 const numbers 1 2 3 4 5 const doubled numbers map number gt number
  • Java8函数式编程(一):

    函数式编程是一个有且只有一个的抽象方法 然后可以有多个非抽象方法的接口 可以通过Lambda表达式来直接调用 实际上有段时间函数式编程还挺多推崇的 当然这都是要学习成本的 你最起码要知道什么是拉必达表达式 Java8提供了这种 实际上JDK
  • 加密授权验证学习之一 ——获取计算机CPUID序列号

    最近项目中需要对CPUID 硬盘序列号 网卡物理地址进行加密授权验证 网上这方面的资料代码很多 但很多都有错或者不能正确获取 通过整理与学习 将自己已经正确获得的代码分享出来吧 code include