技术科普文:二维码里面到底是什么


由于很多同学还没有跟上前面系列课程的进度,因此,今天暂停课程,来讲一篇技术科普文:二维码里面到底是什么?

生活中,经常能够看到二维码,到处充斥着扫一扫,那么,究竟二维码里面是什么?能用二维码做什么?如何创建和使用?如何判断二维码是否安全?

二维码的本质

二维码就是根据某种约定的编码方式将一段文本信息转换为一个能够被解码识别的图片。

其本质就是一段文本信息。

既然是文本信息,可能是如下一些信息用途类别:

人的姓名/一个数字/一段文字/一个网址/一个验证码/一个订单ID/会员ID/优惠券编号/位置坐标/WiFi密码......

也就是可能是任意文本信息,除了有长度限制,没有其它限制。二维码最大数据含量大约是1850个字符。

那么关键点就是编码方式,到底什么是编码方式?

年纪稍大的人应该知道,在电话没有普及之前,都是用电报来传递信息。

电报就是将需要发送的文本信息,编码,通过无线电波发射,接收方接收后进行解码,翻译回原来的文本信息。

这里的无线电波和二维码是类似的。

密码加密也是一种编码方式

至于如何编码,编码之后变成了什么信息数据,这在不同的规则或约定方法下是不一样的。

举一个密码加密的例子:

h e l l o w o r l d

将每个字母替换为该字母在字母表中向后顺序移动5个位置的字母,碰到末尾则回到头部

结果如下:

m j q q t b t w q i

这里的字母表和数字5就是关键的钥匙,只有两者皆知道的情况下才能解码

但是这种加密方式有很大的弱点,因为字母的使用频率通过大数据是可以统计出来的,比如元音字母的概率会更大,如果得到一定量的加密后的信息,通过统计加密后的字母的使用频率,和原始使用频率进行对比,就容易发现对照关系,从而推算出加密的方法。

二维码的编码方式是公开的,是为了使用二维码的一方能够按照公开的编码方式进行逆向的解码。

二维码还有一个很好的特点,就是具有一定的容错能力。二维条码因穿孔、污损等引起局部损坏时,仍然可以正确得到识读,损毁面积达50%仍可恢复信息。这同样是根据编码规则从数学原理上进行保证。

所以大家经常看到二维码的正中间会放一个小图标,尽管占据了二维码的部分面积,但仍然可以正常识别出来。

二维码图片的编码原理

这里大概介绍一下QR Code这种二维码的编码规则:

位置探测图形,位置探测图形分隔符,定位图形:对二维码的定位使用,对于每个QR码来说,位置是固定的,大小规格有所差异

校正图形:如果规格确定,则校正图形的数量以及位置也确定

格式信息:用来表示该二维码的纠错级别,总共有L、M、Q、H四种,分别有不同的纠错率

版本信息:共有40种规格的矩阵(一般为黑白色),从21x21(版本1)到177x177(版本40),每种版本符号比前版本 每边增加4个模块。

数据和纠错码字:实际的二维码数据信息以及纠错码字(可以用于修正二维码损坏所带来的错误)。

简要的编码过程:

1.数据分析:确定编码的字符类型,然后按对应的字符集转换成符号字符;

2.数据编码:将数据字符转换为位流,每8位一个码字,整体构成一个数据的码字序列。

3.纠错编码:将码字序列分块,根据纠错等级和分块的码字,产生纠错码字,并把纠错码字加入到数据码字序列后面,成为一个新的序列。

4.构造最终数据信息:在规格确定的条件下,将上面产生的序列按次序放到分块中

5.构造矩阵:将探测图形、分隔符、定位图形、校正图形和码字模块放入矩阵中。

6. 掩摸:将掩摸图形用于符号的编码区域,使得二维码图形中的深色和浅色(黑色和白色)区域能够比率最优的分布。

7. 格式和版本信息:生成格式和版本信息放入相应区域内。

以上仅仅是最简单的说明,真正的编码还有很多的细节,以及对应的数学计算公式和规则,具体信息,做程序的时候再去搜索相关的信息吧。

能用二维码做什么

其实应该说,能用一段文本信息做什么,二维码就能做什么。

关键不在于二维码,而在于如何定义这段文本信息,约定好文本信息的用途,二维码只是一种编码方式,便于通过设备用程序识别而已。

下面就是一些常见用途:

信息获取(名片、地图、WIFI密码、资料)

网站跳转(跳转到微博、手机网站、网站)

广告推送(用户扫码,直接浏览商家推送的视频、音频广告)

手机电商(用户扫码、手机直接购物下单)

防伪溯源(用户扫码、即可查看生产地;同时后台可以获取最终消费地)

优惠促销(用户扫码,下载电子优惠券,抽奖)

会员管理(用户手机上获取电子会员信息、VIP服务)

手机支付(扫描商品二维码,通过银行或第三方支付提供的手机端通道完成支付)

如何创建一个二维码图片

如果掌握了二维码的编码方式,是可以通过纸和笔将二维码图片画出来的,就是太麻烦了

一般是通过编写计算机程序的方式将文本信息编码为一个二维码图片

如果普通人不会编写计算机程序,那么就只能利用别人编写好的程序了

网上有很多网站,提供在线生成二维码的功能

具体是哪些,这里就不说了,大家用关键字【二维码生成】到某著名搜索引擎去搜索

一般在左侧输入一段文字,点击生成按钮,右侧就会看到生成好的二维码图片了

如何使用一个二维码图片

生成一个二维码图片后,可以印刷出来,也可以用图片文件传输给别人的方式来进行使用

使用方最重要的是需要一个程序来扫描分析图片,将里面的信息进行解码程序处理,翻译出原始的文本信息

得到里面的文本信息之后,再看该信息是用于什么用途的

一般发布这个图片的时候会附带详细说明该二维码的的用途

那么根据要求,采用对应的软件进行相应的处理

例如,最常见的,扫描一个二维码,显示一个微信公众号的主页,可以关注这个微信公众号

那么这个对应的软件就是微信App,它会进行拍照扫描解码,然后根据约定的规则,拿到一个微信公众号的唯一ID,然后去服务器获取这个微信公众号的相关信息,显示在App中,并提供关注等功能

所以,仅有二维码图片是远远不够的,还需要相应的约定用途说明,以及对应的处理软件。

如何判断二维码是否安全

经常有听到新闻说,某人扫了一个二维码,然后银行里的钱或者账户里的钱就被扣掉了,听起来蛮吓人的,要如何避免这种情况呢

一般来说,二维码图片本质就是一段文本信息,从原理上说,一段文本信息是没有能力进行任何处理的

最大的可能就是这段文本信息可能是一个恶意网站的网址,或者是一个恶意软件的下载网址

只有我们不去访问这个网站,或者下载这个软件,或者不安装这个软件,是不会受到伤害的

所以,在按照对方要求扫码之前,建议去下载一个专门扫描二维码的安全软件,它只有扫码功能,只能显示出二维码里面的信息给你看,即不能安装程序,也不会去访问网址,我们先看看里面是什么文本信息,然后再结合其它周边信息来判断是否足够安全。这种扫码软件应该还是有很多多,具体大家自己搜索一下。

最后说明一点,安全是多方面,多重手段来保护的,二维码仅仅只是一个工具。尽量注意以下一些原则:

1.不要泄漏验证码。

2.保护好自己的手机,如果手机遗失优先到手机运营商进行挂失。然后挂失相关信用卡或者银行卡。

3.不同网站或App的账号使用不同的密码,防止某一个系统被攻破之后,利用相同账号密码去撞库攻击其它系统。

4.收到不明信息,尽量先去网站搜索:关键字+骗子 试试看是否别人碰到同样的骗局或情况。

往期教程

因为教程是系列教程,前后关联性非常强,如果有希望每天花半小时,零基础学习编程的,请按照历史消息发布时间先后次序进行阅读。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,293评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,604评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,958评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,729评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,719评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,630评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,000评论 3 397
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,665评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,909评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,646评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,726评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,400评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,986评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,959评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,197评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,996评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,481评论 2 342

推荐阅读更多精彩内容