1

使用 C#,并假设用户输入 unc 路径。有没有办法验证 2 个月后,当我将文件写入 unc 路径时,它与他输入时是同一台机器?

即我正在向路径写入一些敏感信息,并希望阻止某人将另一台具有相同名称/共享等的机器放在网络上并获取输出。或者,如果软件在笔记本电脑上运行并且用户将其插入另一个网络,并且恰好有一台具有相同名称/共享的机器......

任何想法,除了使用 IP 地址(并​​验证它是否相同?)。除了对 unc 共享的写访问权限外,我不一定对远程计算机拥有任何权限。

是的,我可能是偏执狂,但想知道是否有可能......

4

3 回答 3

2

如果机器在同一个子网上,您也许可以使用ARP来检索机器的 MAC 地址。这有点难以欺骗。当他们进入 UNC 路径时,检索 MAC 地址。然后稍后在写入文件之前,执行相同的解析并验证 MAC 地址是否相同。

于 2010-04-22T12:23:58.033 回答
2

如果您无权访问该框并且您不想使用 IP,那么我唯一能想到的另一件事是在用户进入 UNC 并验证存在和内容时在共享上留下一个隐藏文件(也许一个向导)当你重新访问时。

于 2010-04-22T12:16:17.783 回答
0

如果您担心此类场景的安全性,对我而言,唯一可行的方法是数据加密。使用公钥基础设施,您可以确保只有您想要接收数据的人才能真正解密数据,并且您还可以确保接收者知道您并且只有您已经写入了数据。

互联网上有很多关于数据加密的信息,所以我不会在这里详细介绍,但请确保您查找诸如“公钥基础设施、rsa、aes、混合密码系统、数字签名”之类的关键字。

最好的问候,
奥利弗·哈纳皮

于 2010-04-22T12:59:01.960 回答