C# 仅适用于特定系统的唯一二维码

C# 仅适用于特定系统的唯一二维码,c#,mysql,visual-studio-2010,qr-code,C#,Mysql,Visual Studio 2010,Qr Code,我有一个关于二维码的问题,特别是关于某些用途。因此,我计划开发一个系统,使用二维码作为身份证ID的安全措施。我决定使用这种方法,因为它的低成本时尚要求。事实上,我已经有我的编码器和解码器感谢现有的图书馆今天 现在我的困境是;QR码似乎几乎每个人都能接触到,它们可以被使用,甚至被利用。我的观点是,我如何使我的二维码独一无二,以便其他解码器不能读取它们,除了我的,你知道,出于安全原因。有没有办法做到这一点?还是其他方法来保护我的二维码 以下是我的想法: Scan ID Card with QR Co

我有一个关于二维码的问题,特别是关于某些用途。因此,我计划开发一个系统,使用二维码作为身份证ID的安全措施。我决定使用这种方法,因为它的低成本时尚要求。事实上,我已经有我的编码器和解码器感谢现有的图书馆今天

现在我的困境是;QR码似乎几乎每个人都能接触到,它们可以被使用,甚至被利用。我的观点是,我如何使我的二维码独一无二,以便其他解码器不能读取它们,除了我的,你知道,出于安全原因。有没有办法做到这一点?还是其他方法来保护我的二维码

以下是我的想法:

Scan ID Card with QR Code function()

if(My Unique QR Code Decoded == Value from Database)
{
  allow entry();
}
else if(Similar QR Code but-not-made-by-me Decoded != Value from Database)
{
  deny entry();
}

非常感谢您的想法!我是用C语言写的。

这完全取决于你想防御什么。听起来你实际上只是想对数据进行加密或签名。你可以在编码到二维码之前用私钥对数据进行加密。任何试图扫描二维码的人都会收到垃圾,但您的应用程序会扫描,然后解密。在创建二维码之前对数据进行加密/散列可以解决在卡上存储明文(例如用户名)的问题,但请注意,这些信息通常都在卡上。二维码的全部意义在于它们易于阅读,因此无论你做什么,都可能有人拍下身份证的照片,然后简单地复制代码。加密是我能做的最好的方法吗?我为有人复制代码而烦恼。“这样做不好,会带来很多问题。”Jornsharpe和其他人,谢谢你们的想法。