gpt4 book ai didi

ASP.net获取硬件信息

转载 作者:行者123 更新时间:2023-12-02 05:07:03 26 4
gpt4 key购买 nike

如果我创建一个 ASP.net 页面,我能得到当前用户的 CPUID 和 BIOS 序列号吗?还是出于安全原因不允许这样做?

我目前有一个获取这些值的 Visual Basic.net 应用程序,我只是想知道我是否可以在网页上做同样的事情。

最佳答案

简而言之,不,您无法仅使用常规的 html 和 JavaScript 网页获取此信息。

但这并不是说不可能。

如果您的客户端计算机安装了 Java、Flash 或 Silver-light,那么让这些插件架构之一以某种方式查询客户端计算机并收集这些数据并非不可能。我碰巧确实知道它可以通过 Java Applet 实现,因为许多公司(如 Nvidia 和 AMD)在为您提供要下载的驱动程序选择时使用它来获取硬件信息。

虽然这些人可能不是在寻找 bios 序列号之类的东西,但从本质上讲,他们正在使用与阅读您寻找的信息所需的相同方法和方法。

我个人也使用 silver-light 完成了它,但是在一个受控的环境中,我对在客户端计算机上运行的内容有发言权。

现在,除了最初的问题之外,大多数人都会问这种性质的问题,因为他们正在寻找一种方法来唯一地识别他们网站的访问者,而无需保存 cookie 或类似的东西。

我之前在我编写的代码大师 (Link Here) 的 .NET 螺母和 bolt 专栏的帖子中概述了一些方法,当前最常见的方法之一是指纹技术。

本质上,指纹识别技术的工作原理是将大多数现代浏览器现在提供给网络服务器的所有标准数据结合起来,然后使用这些数据形成某种哈希 token 或唯一标识符。

但是,如果您打算使用此方法,则需要确保您不会选择可能更改过于频繁的数据位。用户代理、屏幕分辨率、操作系统版本、Java 版本等通常都是不错的选择。您也可以通过使用 IP 地址来获取,但我会谨慎使用,因为现在大多数消费者都处于动态状态,因此它可能会意外更改。

如果您要使用指纹,您应该避免的事情是当前日期和时间、特定 header 的浏览器名称存在(当然,除非它是您提供的 header )、任何可以为您提供广泛答案的东西与许多其他系统相匹配或以高频率更改是一个糟糕的选择。

您还可以在客户端使用 JavaScript,使用客户端本身的本地信息创建散列,然后使用 ajax 调用或以隐藏形式或 url 参数将散列发送给您。

2021 年 1 月更新

  1. 关于上面的链接,我从这个日期起不再为代码大师写作。我所有的原创文章仍在网上,但你必须搜索它们。

关于ASP.net获取硬件信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16128691/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com