打印或直观地表示加密数据

时间:2012-05-01 21:13:39

标签: c# .net printing visualization barcode

我有一个场景要求我生成一个带有加密数据的打印页面,以后可以将其扫描到我们的应用程序中。很像条形码,但加密。

要加密的文本量介于1KB到10KB之间,但将来可能会增加。最有可能不超过1MB。

我开发了文档处理系统,因此我了解打印的dos和donts。扫描通常会为打印页面添加属性,例如倾斜,旋转,工件等。

所以问题是:

  • 直观地表示此数据量的最佳格式是什么?不是我想要的条形码。
  • 无论格式如何,房地产都至关重要,因为我们想将数据压缩到一个A4页面。我认为使用代码表压缩的Base64编码可能是一个候选者吗?任何想法。

编辑:似乎条形码是唯一可行的解​​决方案。数据本质上是一系列数字,因此我可以使用基数10,然后在加密之前将它们压缩到代码/索引表。或者使用更高的基数在这里更明智?

4 个答案:

答案 0 :(得分:0)

申请是否在线?如果是这样,您是否考虑过在服务器中安全地存储数据(如果您真的希望这样加密),并在页面上以QR code的形式打印访问令牌(或简称为Web引用) ?扫描令牌后,您的应用可以从服务器检索实际数据。

修改
虽然上述内容可以提供更高的可靠性和可扩展性,但您仍然可以直接在页面上将数据存储在QR码中。您只需要加密到字母数字空间(using Base64 encoding)并将其存储为一系列QR码; each can store around 3KB,因此您可以在页面上获得大量数据(只要页面没有损坏)。

答案 1 :(得分:0)

我的建议是创建一个C#程序来获取数据,对其进行加密,然后通过Base64编码器运行它。然后我将获取Base64数据并从数据创建QR码位图。然后我会缩小位图,以便你可以在页面上适应很多,然后我会打印那些QR码的页面。稍后您可以扫描它们,放大每个代码然后读入数据。最后,你必须对它进行Base64解码然后解密它!

答案 2 :(得分:0)

High-Capacity Color Barcodes是2D矩阵代码,使用彩色“条形”(通常是三角形)对打印页面上的数据进行编码。维基百科的文章称他们每平方英寸可存储3kB。

显然这些都需要彩色打印和扫描硬件。

答案 3 :(得分:0)

除非您需要能够从任何互联网或网络访问完全脱机运行,否则我建议加密文本,散列加密并将哈希存储在QR码中。获取2d条形码或QR码来存储64或128位散列应该足够简单,并且足够可靠地进行扫描(因为它们是为它们设计的)。商业QR扫描仪或软件可以轻松扫描。

如果您无法在打印和扫描之间访问公共服务器,那么2d条形码是您唯一真正的选择,并且不具备您想要的信息密度。你有更好的机会将它存放在RFID或迷你CD上。