Python 如何验证它';是同一台电脑吗

Python 如何验证它';是同一台电脑吗,python,Python,我想知道是否有任何Python代码可以运行,假设Python代码没有被篡改,它将返回一个特定于该计算机的ID,而该ID不能被伪造。我最初的想法是使用MAC地址,但我知道这些地址很容易被欺骗。CPU序列号呢?我该怎么做呢 谢谢。这是一个不可能解决的问题,因为它相当于有效的DRM。每个标识符都可以被伪造。请记住,用户可以篡改您的Python代码(您所做的任何编译/混淆/加密操作都可以反转,因此不必麻烦)以返回他们想要的任何标识符。(即使您的代码是绝对只读的,他们也可以更改Python运行时或操作系统

我想知道是否有任何Python代码可以运行,假设Python代码没有被篡改,它将返回一个特定于该计算机的ID,而该ID不能被伪造。我最初的想法是使用MAC地址,但我知道这些地址很容易被欺骗。CPU序列号呢?我该怎么做呢


谢谢。

这是一个不可能解决的问题,因为它相当于有效的DRM。每个标识符都可以被伪造。请记住,用户可以篡改您的Python代码(您所做的任何编译/混淆/加密操作都可以反转,因此不必麻烦)以返回他们想要的任何标识符。(即使您的代码是绝对只读的,他们也可以更改Python运行时或操作系统以执行任何他们想要的操作。)

Owner替换CPU,现在CPU序列号已更改。这是否构成“不在同一台计算机上运行”呢?您真正想验证的是什么?@chepner我正在尝试建立软件授权,只允许它一次在一台计算机上运行。因此,您想阻止被许可人从一台计算机卸载软件并在他们选择的另一台计算机上使用它吗?@chepner否,我将允许他们更改,一次只能在一台计算机上运行,这一点非常重要,因此我需要一种方法来检查他们使用软件的计算机是否与他们注册的计算机相同。实施软件许可证强制执行系统(也称为委婉的“DRM系统”)通常需要更多的问题而不是答案。在任何情况下,解决哪怕是一个主要问题对于堆栈溢出问题来说都太广泛了。为什么软件授权公司会使用它?他们用它来让诚实的人保持诚实,因为它可以有效地对付那些懒得去欺骗它的人。想要盗版软件的人仍然可以。好吧,我怎样才能得到Python中的CPU序列号?在担心之前,首先要担心如何防止被许可方篡改软件以避免CPU检查。你可以假设任何你喜欢的东西,但是这不会让你的许可证执行更加有用。@ ChpEnter,改写C++中更难篡改的程序不是问题。我只是想知道如何获得一个独特的计算机ID,这是很难欺骗。