资讯详情

每天都扫的二维码,你知道它的技术原理吗? 每天都扫的二维码,你知道它的技术原理吗?...

二维码已经成为我们日常生活中不可缺少的组成部分。登录需要扫描二维码,购需要扫描二维码,会议签到也需要扫描二维码,那么如此广泛使用的二维码技术背后的原理是什么呢?本文将结合二维码的开发过程和典型的应用场景,分析二维码背后的技术原理。

在了解二维码技术原理之前,让我们简要看看它是如何发展起来的。早在1948年,伯纳德·塞尔沃也是费城煤气科技学院的研究生。偶然得知当地一家超市的老板希望院长帮忙设计一个可以扫描商品价格的装置,以提高超市商品销售的效率。由于超市收银员在结算货物时每次都需要手动输入架构,加班客流达到时,收银员的结算效率很低。但院长认为这是一件非常困难的事情。

然而伯纳德·塞尔沃和他的朋友约瑟夫·伍德兰德认为这是一个巨大的商机,决定设计一个商业产品。在尝试了紫外线照射石墨发光方案、盲点系统和点线符号系统后,由于当时的技术限制,它没有得到广泛的应用。

转眼间,到了20世纪60年代,伍德兰德从未放弃过没有实现商业应用的金点子。这时他已经是了IBM一位工程师,在公司期间,他不断阐述自己对条形码技术实现的同事们不断强调条形码的商业价值。与此同时,激光和计算机已经开始应用,条形码实现的技术基础已经完成。伍德兰德参加了大约1969年IBM乔治是公司投资的·经过几年的潜心研究,劳雷尔负责超市扫描仪和标签研究项目组,IBM最后推出了可识别的条形码。

1974年6月26日,世界上第一个条形码扫描仪安装在俄亥俄州特洛伊的马什超市。第一个被扫描的产品是10袋箭牌多汁的水果口香糖,现在已经被美国历史博物馆收藏了 。随后,条形码广泛应用于商品、书籍、邮政等系统,大大提高了业务运营效率。

fa9ee508cb420ed2e57d1d8f26323401.png

我们可以看到,促进技术进步的往往是现实生活中的业务需求。但随着条形码的广泛使用,其缺点逐渐显现出来:

1、条形码的数据表示内容非常有限,只能表示数字以及字母,无法表示更多的其他字符信息;

2.条形码表示的数据量也非常有限。如果你想包含更多的数据,你只能水平拉伸,导致条形码越来越大,不利于商业使用;

3.条形码变形或条形丢失会导致数据无法获取,影响业务的正常使用;

由于条形码存在这样或那样的缺点,人们对出现更多信息的期望与日俱增。

虽然二维码的应用在中国大放异彩,但实际上是日本人发明的。日本 Denso Wave 公司(日本电装株式会社(Denso Corporation)腾宏,其子公司),原本是二维码的发明者。在公司业务中,需要标记汽车零部件的属性信息,包括原产地、生产时间、生产批次等信息。传统的条形码不能满足大量信息的标记,因此需要一种覆盖更多信息的标记方法。

腾宏认为,由于一维条形码无法表达更多信息,是否可以增加维度来表达更多信息,这是二维码思维的原型。但后来又遇到了如何让这个二维码高速读取。技术研究小组利用正方形四个角中的三个作为定位符,然后通过剩余角判断实际二维码的方向,从而不影响二维码内容的读取。

经过几年的反复测试,腾宏远的研究小组终于克服了技术困难。与条形码相比,这个小方块的二维码在信息存储中增加了300倍,二维码的识别速度增加了10倍。在1994年,DENSO WAVE该公司开始向全日本推广二维码技术,并将其命名为Quick Response Code”。如今,二维码已广泛应用于世界各地,尤其是在中国。

在互联网上,我们可以很容易地找到在线制作二维码的工具网站,包括文本、URL、图片、音视频等。由此可见,二维码的本质其实是数据信息的一种表现。

众所周知,二维码由许多白色方块和黑色方块组成,实际上是计算机世界中对应的0-12进制语言。其中,黑色方块代表1,白色方块代表0。因此,这些看似不规则的黑白方块二维码组合是由0-1组成的信息组合。由0-1组成的二进制数据也是计算机可以理解的语言。

手机扫描二维码时,由于二维码是黑白相间的二位点阵,通过光反射进入手机摄像头时,手机中的二位点阵CMOS感光元件将接收到的光信号转换为电信号,二维码代表的0-1组合实际上是手机中相应的高低电位,最终分析为二维码对应的标记信息。

扫描代码登录是一个非常典型的二维码应用场景。在过去,我们需要输入用户名和密码来登录网站,有时我们非常担心,因为我们不记得密码是多少。自从有了二维码登录,只要拿出手机扫描web登录操作非常方便,所以我们来分析一下二维码扫描登录的技术原理。

登录的本质其实包括两件事。第一件事是告诉平台你是谁,第二件事是向平台证明你不是别人。用户名和密码登录的传统方式实际上是告诉平台你是谁,而密码是向平台证明你是你。所以在二维码扫码登录场景中,实际上也需要完成这两件事的支持。下面我们来看看扫码登录的实现机制。

扫描代码登录前,我们需要在客户端登录。在客户端登录时,需要输入用户名和密码信息。客户端与服务端之间的交互过程大致如下:

1.首先,用户输入用户名和密码登录客户端;

2、客户端携带用户名、密码以及设备信息向服务端发起登录请求;

3.服务端检查用户名和密码信息,绑定帐户信息并返回设备信息token信息;

4.客户端保存token信息;

5.再次登录时,无需传输用户名和密码。token信息和设备信息传递给服务端,服务端验证token以及设备信息;

这里的token信息实际上取代了帐户和密码信息,可以理解为存储帐户、设备和其他信息的数据结构,以便以后的服务端验证。

以上是客户端登录的一般步骤,是客户端扫码登录的基础。接下来我们来看看扫码登录的一般业务流程,如下:

在这个过程中,最重要的是生成临时的token,这个临时token事实上,它是一种登录凭证,并与二维码一一对应。如果使用一次,它将无效。那为什么会有这个临时的呢?token?实际上,为了解决扫码与登录的连接,系统需要确认二维码是客户扫描后的登录操作。

本文主要结合二维码的技术发展过程,阐述了二维码的技术原理,分析了二维码的典型应用场景。我相信通过本文,我们对二维码的原理有了更深入的理解。

有道无术,术可成;有术无道,止于术

欢迎关注公众号

好文章,我在读。

标签: 5080条形连接器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台