CN1878057A - 一种加密二维条码的组成及应用方法 - Google Patents
一种加密二维条码的组成及应用方法 Download PDFInfo
- Publication number
- CN1878057A CN1878057A CN 200510074844 CN200510074844A CN1878057A CN 1878057 A CN1878057 A CN 1878057A CN 200510074844 CN200510074844 CN 200510074844 CN 200510074844 A CN200510074844 A CN 200510074844A CN 1878057 A CN1878057 A CN 1878057A
- Authority
- CN
- China
- Prior art keywords
- recognition
- encrypted
- dimensional bar
- bar codes
- authorized party
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
本发明属于条码应用技术领域,尤其是一种加密的二维条码的组成及应用方法,本发明的方法适用于电子商务、电子政务、信息安全、身份认证、电子票务、互联网等领域。本发明的方法可廉价地、在线地、快速地生产高安全性的加密二维条码,用以承载关键的、保密的、有价的信息,并且可以使用支持二维条码标准的条码识读设备识读;本发明的加密二维条码具有防伪造、防抵赖、防篡改、防盗用、防重复等功能。
Description
技术领域
本发明属于条码应用技术领域,尤其是一种加密的二维条码的组成及应用方法,本发明的方法适用于电子商务、电子政务、信息安全、身份认证、电子票务、互联网等领域。
背景技术
一维条码自出现以来,得到了人们的普遍关注,发展速度十分迅速。它的使用,极大地提高了数据采集和信息处理的速度,提高了工作效率,并为管理的科学化和现代化做出了很大贡献。
由于受信息容量的限制,一维条码仅仅是对“物品”的标识,而不是对“物品”的描述。故一维条码的使用,不得不依赖数据库的存在。在没有数据库和不便联网的地方,一维条码的使用受到了较大的限制,有时甚至变得毫无意义。现代高新技术的发展,迫切要求用条码在有限的几何空间内表示更多的信息,从而满足***的信息表示的需要。二维条码正是为了解一维条码无法解决的问题而产生的。因为它具有高密度、高可靠性等特点,所以可以用它表示数据文件(包括汉字文件)、图像等。二维条码是大容量、高可靠性信息实现存储、携带并自动识读的最理想的方法。
一维条码所携带的信息量有限,如商品上的条码仅能容纳13位(EAN-13码)***数字,更多的信息只能依赖商品数据库的支持,离开了预先建立的数据库,这种条码就没有意义了,因此在一定程度上也限制了条码的应用范围。基于这个原因,在90年代发明了二维条码。二维条码除了具有一维条码的优点外,同时还有信息量大、可靠性高等优点。
目前二维条码主要有PDF417码、QR Code、Code49码、Code 16K码、Data Matrix码、MaxiCode码等,主要分为堆积或层排式和棋盘或矩阵式两大类。
二维条码作为一种新的信息存储和传递技术,从诞生之时就受到了国际社会的广泛关注。经过几年的努力,现已应用在国防、公共安全、交通运输、医疗保健、工业、商业、金融、海关及政府管理等多个领域。
但是,二维条码技术虽然比较成熟而且有很多优点,但它的应用普及程度之所以还不理想,主要原因之一在于通常使用二维条码时没有结合信息安全技术,所以无法保证关键性、私密性信息的安全,无法避免伪造、非法识读、篡改、抵赖等行为,从而抑制了其应用的范围,限制了应用的场合。
发明内容
本发明的目的在于避免上述缺陷,提出一种新型的加密二维条码的组成及应用方法,为基于互联网的非实物性商品(服务)交易,提供一种有价载体或者交易完成的凭据;为保密票证、认证标识、防伪凭证等的制作和使用提供一种新途径;为加密二维条码的应用设计一种参考标准,从而扩大二维条码的应用范围和领域。
本发明的具体技术方案如下:
本发明的安全体系主要借鉴了PKI安全体系的思想。在加密算法上,使用了RSA和PBE加密算法处理信息,并结合MD5散列算法进行数据校验。
每个加密二维条码的在线生成***配备一对RSA密钥对(建议使用1024位RSA密钥对)。其中的公钥的文本表示也称为“根证书”(本发明中使用“证书”一词,并不意味着这种文本表示必须使用X.509等标准数字证书格式,以下同理)。
同时,每个使用加密二维条码的具体应用(对应于生成***上的一个帐户)也分配一对RSA密钥对(建议使用512位RSA密钥对)。其中的公钥的文本表示在本文中也称为“解密证书”。
在应用中,每个具体的应用样本需要依靠解密证书和PBE密码才可以解出明文。从技术上讲,PBE算法的加解密有两个参数-PBE密码和PBE盐。
制作加密二维条码时,产生带有随机成分的PBE盐,使用应用帐户的私钥加密明文MD5散列值和PBE盐(共计22字节,使用512位RSA算法产生64字节输出),得到的数字签名按既定格式加入一种二维条码编码算法(比如PDF417编码算法)输入字节流。然后以用户提供的密码作为PBE密码,结合PBE盐这个参数,使用PBE算法加密明文,把得到的密文按既定格式加入二维条码编码算法的输入字节流中。然后使用二维条码图像生成算法进行编码,产生一种二维条码图像(比如PDF417或者QR Code等)。
识读加密二维条码时,依靠解密证书,使用RSA解密算法从二维条码识读输出字节流中解出明文MD5散列值和PBE盐,同时在识读时获取用户输入的PBE密码。使用PBE密码和PBE盐对PDF417识读输出字节流中密文部分完成PBE解密,得到明文。
解密证书可以采用多种形式送达识读方。在本发明中,解密证书也采用上述的加密二维条码制作过程制成加密二维条码,而解密证书采用根私钥结合PBE制作(把解密证书当作明文,其它同目标码制作过程),所以,拥有根公钥(根证书)是识读解密证书内容的必要条件。
根证书也可以采用多种形式送达识读方。在本发明中,根证书也采用类似的制作过程制成本发明加密二维条码,只是没有数字签名(代之以简单的MD5校验数据+PBE盐的明码)。把根证书采用PBE加密为密文,按既定格式加入二维条码编码算法的输入字节流中。
在本发明的应用方法中,主要由以下方面参与完成:
1、服务方:拥有一套加密二维条码在线生成***,配置有RSA密钥对。
2、授权方:在“服务方”的加密二维条码在线生成***上开有使用帐户(用户名、密码),并拥有服务方为其生成的一对RSA密钥对;授权方负责管理和生成应用样本。
3、识读方:拥有加密二维条码识读软件,并在获得“服务方”授予的“激活码”、“授权方”授予的“授权码”的条件下,可以识读授权方发行的“目标码”。
4、消费方:拥有授权方授予的“目标码”,并通过“识读方”的识读,达到某种消费目的最终用户。
加密二维条码应用的一般流程如下:
1、授权方在服务方开户,获得一个帐户(同时生成一对512位RSA密钥对);
2、授权方在具体应用背景下,把授权码授予识读方;
3、授权方在具体应用背景下,为消费方生成目标码;
4、识读方从服务方获得识读软件和激活码,安装并激活识读软件(配置根证书);
5、识读方使用授权方授予的授权码获得具体应用背景下的识读授权(配置解密证书);
6、消费方持目标码到识读方进行识读,即具体应用背景意义下的消费;
7、识读方使用识读软件识读目标码,根据识读通过与否以及明文的内容,确定消费方的消费权利,完成消费过程。
其中,激活码是一种加密二维条码样本类型,其目的是使识读软件获得识读某个本发明加密二维条码行业应用体系中的授权码的能力。
激活码密文主体就是用PBE算法加密的根公钥,用这个根公钥可以解密所有本应用体系中的授权码。
授权码是一种加密二维条码样本类型,其目的是使识读软件获得识读目标码所必须的一个应用授权方的公钥。
授权码密文主体就是使用根私钥的数字签名和使用PBE加密的应用授权方公钥。
目标码是一种加密二维条码样本类型,其目的就是承载应用信息的;在应用中由最终用户持有,获得授权的识读机构可以识读。
加密二维条码主要由相同的密文格式和一个内置的序列号标识-UUID组成,其中:
每个加密二维条码样本均有一个内置的序列号标识,即UUID,其组成包括两部分:
1、x成分:6字节。通过某种技术手段或者算法,保证在两个UUID在y成分一样的情况下,此成分有区别即可;在本发明的参考实现中,包含四字节安全随机数,二字节区别值(y成分一样的情况下可保证此二字节不同)。
2、y成分(也称时间戳):一个0-0x3FFFFFFFFFF间的无符号长整数,表示生成样本的时间戳。该值是生成该样本的***时间与某个时间基点的毫秒差值数。具体时间基点,可以随应用不同、应用开发投产的时间不同而自定义;在发明人的软件实现中,是与2000年1月1日0时0分0秒0毫秒这一时间基点的毫秒差值;当然这一时间基点本身的毫秒数值是计算机***时间的通用标准值(即2000年1月1日0时与1970年1月1日0时的毫秒差值,具体数值是长整数946656000000)
由于考虑到加密二维条码是2005年才产生的,之前的时间没有意义;所以不直接采用计算机***/程序设计语言通常使用的与1970年1月1日零时的毫秒差值作为时间戳表示形式,如果采用这种时间戳实际上会浪费一些比特的时间存储空间。
另外,42比特足以存放超过100年(一个世纪)的毫秒差值数,没有必要使用64比特;对于加密二维条码的应用来说这个时间跨度的表达能力已经足够,而且可以通过应用设置时间计算基点来决定具体时间,也是很灵活的。
本时间戳与计算机***/程序设计语言的标准时间戳(比如Java语言中java.lang.System.currentTimeMillis()返回的标准时间戳)换算非常简单,只需要加减一个时间基点的标准时间戳数值即可。假设时间基点采用2000年1月1日零时,基点值是946656000000,加密二维条码时间戳=java.lang.System.currentTimeMillis()-946656000000L;识读时计算生成时间的标准时间戳时,加密二维条码生成时间=本发明加密二维条码时间戳+946656000000L。
加密二维条码的编码格式:每个加密二维条码的样本根据类型的不同(激活码、授权码、目标码三种类型),格式略有不同,但同种类型的样本都具有相同的格式。
从编码格式的结构上看,每个本发明加密二维条码都由以下四部分(依次序)组成:
1、首冗余字节-1字节
2、头(header)-7字节
3、校验数据块-不同样本类型长度不同
4、密文体
经过大量测试发现,有的二维条码识读设备在识读个别样本时会出现丢失首字节的现象,尽管这种概率比较低,但为了保证高可靠性,特设计本方案以避免这种情况引发的无法识读的可能。
首冗余字节是一个字节的0(8比特0)。当识读设备开始读一个新样本时,如果读到首冗余字节,说明首字节未丢失,则直接忽略这个字节,继续读头和体;如果没有读到首冗余字节,说明发生首字节丢失现象,仍可继续读头和体。
头格式是本发明实现所采用的格式。主要设计思想是尽量减少这些附加信息占用的字节数目,并规定密文最大长度为1023字节。如果基于本发明的软件实现需要密文长度超过1023字节或者需要附加其它信息的,可以参考本发明酌情扩充头的长度。
头由56比特位组(组合成7个字节,比特编号从0到55,字节组合方式采用Little-endian位序,数据存放方式也采用Little-endian,低序号比特在前)组成:第0至第1共2个比特:一个0-3之间的无符号小整数,表示样本类型,具体含义:1=激活码;2=授权码;3=目标码;0=非法
第2至第43共42个比特:保存一个0-0x3FFFFFFFFFF间的无符号长整数,本发明加密二维条码时间戳(即样本的UUID的y成分。参见UUID一节)
第44至第45共2个比特:保存一个0-3之间的无符号小整数,表示解密密码类型标志编码,0=该样本未设置密码;1=应用定义的缺省密码;2=买方设定的密码(具体含义随应用定);3=卖方设定的密码(具体含义随应用定)
第46至第55共10个比特:保存一个0-1023之间的无符号小整数,是密文的长度(以字节为单位)
由于在应用中往往需要管理样本库,而这时并不需要解读样本,也不应牵涉相应的授权关系;但管理样本库需要样本类型、时间戳等信息;而加密二维条码头中的信息会影响识读软件的交互过程,比如是否需要在界面上弹出密码输入窗口;根据样本类型决定调用哪种解码的逻辑;判断识读器是否读出了全部字节的条件等。如果加密头,虽然可以从编程上实现,但会使得识读过程过于复杂而不够流畅。所以在本发明中加密二维条码头不加密。
激活码的校验格式:共22字节,由两部分组成:
1、16字节的MD5值-对根公钥的字符串表示(也称根证书)的MD5散列结果;
2、6字节的UUID的x成分。
授权码的校验格式:128字节的根数字签名(因为根密钥对是1024位的RSA密钥对,所以数字签名长度为128字节),即使用根私钥对解密证书(授权方公钥字符串表示)的16字节MD5散列值以及6字节UUID的x成分(共22字节),进行1024位RSA加密所产生的128字节的密文。
目标码的校验格式:64字节的授权方数字签名(因为授权方密钥对是512位RSA密钥对,所以数字签名长度是64字节),即使用授权方帐户私钥对明文的16字节MD5散列值以及6字节UUID的x成分(共22字节)进行512位RSA加密所产生的64字节的密文。
密文采用PBE算法,以给定的加密密码(也称附加验证码)+UUID(在本文中凡是非数值数据之间的+运算符均表示字符串连接或字节序列合并)为PBE密码,以UUID的x成分为盐,代入加密过程而得到的密文。
具体采用哪种PBE算法可以根据需要选择。例如,可以采用PBEWithSHAAnd128BitRC4,这种算法的好处是密文长度与明文长度一致,而且加解密速度很快。
按照前面的UUID定义,每个UUID可以按如下方式产生(假定Java语言开发):
1、产生4字节安全随机数r
2、取***时间毫秒值,减去2000年1月1日零时的标准时间戳(946656000000),得到本发明加密二维条码时间戳,即UUID的y成分
3、实例化一个J2SE SDK中标准的java.rmi.UID类,取其count成分,从而获得一个同一个毫秒内的区分值(16比特短整数)c。(java.rmi.UID类唯一性说明可参阅有关Java技术文档)
4、把r和c合成为UUID的x成分
由上可见,本发明中将UUID的x成分存放在校验数据中,而y成分存放在本发明加密二维条码头中,x与y成分分开存放的意义在于:
1、如果将UUID完全存放在加密二维条码头中,有一定安全隐患,因为UUID是PBE解密的重要参数之一(详细情况请参考以下各节产生过程的描述)。
2、如果在加密二维条码头信息中不存放时间戳,会对管理样本库的需求带来不便(管理样本库时应不需要解读样本,但时间戳却是一个不可不读的管理数据)。
3、如果在加密二维条码头信息中存放时间戳,同时又在另一处完整存放UUID则造成信息冗余浪费。
4、RSA算法的默认输入块比较小,如果对16字节MD5值+UUID进行RSA加密会超过默认块大小;如果分别加密,则产生两个64字节的输出,导致增加大量二维条码编码数据,从而挤压密文体长度,从而进一步限制了允许的明文长度。
激活码的产生:
入口参数:
根证书(根公钥-1024位RSA密钥中的公钥的一种字符串表示)r
激活密码p
密码类型标志(0-3的小整数)v
唯一标识(UUID)u
1、对r计算MD5散列值,得到16字节a
2、提出u中的x成分6字节x,提出u中的y成分作为y
3、a+x共22字节记为b1
4、把p+u作为PBE算法的密码参数p2
5、以p2为密码,以x为盐,使用PBE算法加密r,得到b2
6、计算b2的长度n
7、把n,v,y以及激活码样本类型标志(小整数1)组合成56比特(7字节)的头h
8、把首冗余字节+h+b1+b2使用某种二维条码标准算法(比如PDF417)编码为二维条码图像
授权码的产生:
入口参数:
解密证书(授权方公钥-512位RSA密钥对中的公钥的一种字符串表示)k
授权密码p
密码类型标志v
根私钥(1024位RSA密钥对中的私钥)r
唯一标识(UUID)u
1、对k计算MD5散列,得到16字节的a
2、提出u中的x成分,得到6字节x成分x,提出u中的y成分y
3、以r为加密密钥,对a+x使用1024位RSA算法加密,得到128字节的b1
4、以p+u为密码,以x为盐,使用PBE算法加密k,得到b2
5、计算b2的长度n
6、把n,v,y以及授权码样本类型标志(小整数2)组合成56比特(7字节)的头h
7、对首冗余字节+h+b1+b2使用二维条码标准算法编码为图像
目标码的产生
入口参数:
待编码的明文字符串t
密码类型标志(0-3的小整数)v
附加验证码(可以为空,表示不设置)p
授权方私钥(512位RSA密钥对中的私钥)s
唯一标识(UUID)u
1、对明文计算MD5散列,得到16字节的明文散列串a
2、提出u中的x成分(6字节)x,提出u中y成分y
3、把p+u作为PBE算法的密码参数p2准备好
4、把a+x共22字节使用512位RSA算法,用s加密为64字节密文(数字签名),记为b1
5、使用PBE算法,以p2为密码,x为盐,将明文加密为密文,记为b2
6、计算b2的长度n
7、把u中的y成分提出,作为y
8、把n,v,y以及目标码样本类型标志3按照头格式组合成56比特(7字节)的头h
9、把首冗余字节+h+b1+b2使用二维条码标准生成算法编码成二维条码位
加密二维条码的具体识读过程如下:
1、激活码识读
入口参数:
激活密码p
(1)如果读到首冗余字节(8比特0)则跳过,接着读出7字节的头h
(2)根据h中的样本类型标志(可以知道相应的校验数据块长度)和密文长度,决定后续字节数目
(3)从h中取出UUID的y成分y
(4)读出16字节MD5值a,读出6字节的UUID的x成分x(这22字节是激活码的校验数据块)
(5)把x和y组合还原为UUID,作为u
(6)以p+u为密码,x为盐,使用PBE算法解密剩余字节,得到根证书r
(7)对r进行MD5散列,与a对比校验
2、授权码识读:
入口参数:
根公钥(服务方RSA密钥对中的公钥,识读方通过前述的激活码识读过程获得)r
授权密码p(可以为空,表示未设置)
(1)如果读到首冗余字节(8比特0)则跳过,接着读出7字节的头h
(2)根据h中的样本类型标志(可以知道相应的校验数据块长度)和密文长度,决定后续字节数目
(3)从h中取出UUID的y成分y
(4)读出128字节数字签名(校验数据块),使用r解密得到16字节MD5散列值a,和6字节的UUID的x成分x
(5)把x与y重新组合还原为UUID格式u
(6)以p+u为密码,以x为盐,使用PBE算法解密剩余字节,得到解密证书k
(7)对k计算MD5散列,结果与a对比校验
3、目标码识读
入口参数:
授权方公钥(授权方RSA密钥对中的公钥,识读方通过前述授权码识读过程获得)k
附加验证码p(可以为空,表示未设置)
(1)如果读到首冗余字节(8比特0)则跳过,接着读出7字节的头h
(2)根据h中的样本类型标志(可以知道相应的校验数据块长度)和密文长度,决定后续字节数目
(3)从h中取出UUID的y成分y
(4)读出体中第一部分64字节的数字签名(校验数据块),使用k解密得到16字节MD5散列值a,以及6字节的UUID的x成分
(5)把x与y组合还原为UUID格式的u
(6)以p+u为密码,以x为盐,使用PBE算法解密剩余字节,得到明文t
对t计算MD5散列,然后与a对比校验
由于采用以上技术措施,本发明具有如下优点和效果:
1、应用本发明的方法可廉价地、在线地、快速地生产高安全性的加密二维条码,用以承载关键的、保密的、有价的信息,并且可以使用支持二维条码的标准条码识读设备识读。
2、本发明的加密二维条码具有防伪造功能:本发明编码成二维条码图像的输入字节流具有特定的格式,并使用了数字签名技术。
本发明并不是直接对明文简单加密成二维条码编码算法的输入字节流。而是通过精心的设计,在核心密文体的前面附加了多种有用的信息,这些信息包括唯一标识序列号(含时间戳成分)、密文长度、样本类型、解密密码设置类型、数字签名等。这些信息不但对应用有意义,而且还对解密还原明文有校验功能。这些附加信息和密文有匹配关系,如果附加信息与密文不匹配,是无法完成识读的。
3、本发明的加密二维条码具有防抵赖功能:数字签名是在互联网和电子商务领域应用广泛并被普遍认可的防抵赖技术。在我国2005年4月颁布的《电子签名法》中,也阐明数字签名具有法律效力。本发明使用了数字签名技术,每个目标码样本附加有发行方对信息明文的数字签名,所以可以防抵赖。
4、本发明的加密二维条码具有防篡改功能:每个样本带有全局唯一标识(UUID),UUID中有生成时间戳成分,而且加密以UUID为加解密过程的重要参数之一。不匹配的UUID会导致识读过程失败。这样可以防止对唯一标识(含生成时间)的篡改。同时,由于目标码样本带有数字签名,而数字签名本身就具有对明文进行散列并加密得到的,所以解密数字签名得到的散列值可以作为校验数据,从而防止信息内容被篡改。
5、本发明的加密二维条码具有防盗用功能:每个样本可以设置解密密码(在前文中也称附加验证码),在没有正确提供解密密码的情况下,识读过程无法完成。
6、本发明的加密二维条码具有防重复功能:每个码带有内置全局唯一标识序列号(UUID),可以由具体应用使用此序列号防止已经作废的或者过期的样本的重复使用。
本发明加密二维条码的明文信息量主要与识读设备相关。本发明中建议1K字节以内(相对于511个GB码字符或者1023个ISO-8859-1西文字符)。
例如,在流行的二维条码标准PDF417的识读设备方面,低端PDF417识读设备,一次准确识读的字节数,基本限制在几百字节;高端的PDF417识读设备可以识读1KB字节以上。但随着字节数的增加,二维条码的图像尺寸也在增大。本发明考虑到实际应用的领域,认为1KB字节已经足够,一般应用使用低端识读设备就可以满足需要,不必配备高档识读设备。即使偶尔有稍微增大信息量的可能,也可以借助数据压缩技术予以解决(在对明文编码之前先进行压缩)。之所以这样提,是因为二维条码作为一种条码技术,毕竟其本质用途并非成为一种信息存储介质,其出现的目的是为了使用标准化、工业化的识读器快速识别业务标识、业务数据的索引或检索条件、或者少量脱机关键性业务数据,从而在相应的应用领域中发挥一个环节的作用。
附图说明
图1为本发明应用方法模型图
图2为本发明业务活动规则示意图
图3为本发明头格式图
图4为本发明目标码生成过程的概念化的活动图
图5为本发明目标码识读过程的概念化的活动图
具体实施方式
实施例1:身份认证:用于身份识别,包括:身份证件、贵宾卡、电子请柬、股东卡等。
具体应用举例--电子请柬:
会展组织机构作为授权方,为每个被邀请人生成一个目标码;明文内容可以是关键性信息,比如房间号、座位号以及被邀请人身份信息等。并且指定本应用的解密密码原则,解密密码可以采用随机生成的密码或者使用被邀请人的身份证号码。
会展组织机构把目标码印制在请柬上,以电子或纸质形式送达每个被邀请人。
会展组织机构把激活码和授权码送达会展接待单位。
会展接待单位安装本发明加密二维条码识读软件,使用激活码激活软件,使用授权码获得识读权限。
被邀请人入场时,出示请柬;接待人员使用识读器扫描请柬上的目标码,要求输入附加验证码时,根据事先定下的解密密码原则由被邀请人输入密码还是由接待方查验被邀请人的身份证;如果解密密码是身份证号,查验身份证无误后,由接待人员输入身份证号。
识读出结果后,完成签到,并根据明文内容决定下一步如何安排被邀请人。识读过程出现任何错误(包括样本类型错、解密错、校验错等),说明目标码是伪造的或者是被盗用的,可以拒绝来人的签到。
每次会议可以作为不同的应用,分别在服务方生成服务器上开立不同帐户,使用不同的密钥对,使用不同的授权码。
实施例2:电子票务,用于一次性使用的有价票、券。包括:演出票务、交通运输票务等。
具体应用举例--电子机票:
某航空公司在网上出售民航机票。
互联网用户访该售票网站,进行网上订购,并完成支付后,网站动态生成一个目标码,内容是航班号、离港时间、座位号、票价、购票人身份、保险金额等全部机票的票面信息,解密密码可由用户决定是否设置。
航空公司作为授权方把激活码和授权码给设在机场的本公司check-in办理台。
办理台安装识读软件,使用激活码激活,使用授权码获得识读权限。
用户持打印出来的目标码作为机票直接到办理台办手续、换取登机牌时,检票机构扫描目标码(有解密密码的,提示用户输入),得到用户的座位号、身份证号等票面信息,查验证件、给用户发放登机牌。
为了提高安全级别,航空公司可以定期更换密钥对,同时只须定期从网上给各个机场更新授权码即可。
实施例3:电子奖券,用于可兑换实物/现金的、网上生成的电子券。包括:电子彩票、网站发行的实物(或代金)优惠券、互联网游戏娱乐的领奖凭据等。
具体应用举例--网上彩票销售
某彩票销售机构开通网上彩票销售。
彩民可以直接在网上下注购买,每个购买请求即时生成一个本发明加密二维条码目标码,内容是投注的目标(比如数字组合等,随彩票游戏规则而定)、注数、本人身份等信息,彩民可以自行决定是否设置解密密码。
彩票销售机构作为授权方把激活码和授权码授予各个彩票奖金兑奖处。兑奖处使用激活码激活识读软件,并使用授权码进行授权。
当开奖后,中奖的彩民可以持目标码到彩票兑奖机构兑换奖金。兑奖工作人员使用识读软件识读目标码,确定中奖等级和彩民身份无误后,完成兑奖。
如果需要提高安全级别,彩票销售机构可以在每一期彩票的销售中使用不同的密钥对,从而从网上向兑奖处按期提供不同的授权码。
Claims (9)
1、一种加密二维条码的组成,该编码格式内置全体唯一标识号(Universal UniqueIdentifier,简称为UUID),其特征在于:
编码格式由以下四部分依次序组成:
(1)首冗余字节-1个8比特0的字节(可有可无)
(2)头(header)-7字节
(3)校验数据块(数字签名段)(verifying)
(4)密文体(body);
UUID组成包括两部分:
(1)x成分:用某种算法产生6字节区别值,以确保在y成分相等情况下区分;
(2)y成分(也称时间戳):一个0-0x3FFFFFFFFFF间的无符号长整数,表示生成样本的时间戳,是生成该样本的***时间与某个时间基点的毫秒差值数,具体时间基点,可以随应用不同、应用开发投产的时间不同而自定义。
2、根据权利要求1所述的加密二维条码的组成,其特征在于:头由56比特位组组成,第0至第1共2个比特表示样本类型,即一个0-3之间的无符号小整数,具体含义为1=激活码,2=授权码,3=目标码,0=非法;第2至第43共42个比特,即保存一个0-0x3FFFFFFFFFF间的无符号长整数,为加密二维条码时间戳(UUID的y成分);第44至第45共2个比特表示解密密码类型标志编码,保存一个0-3之间的无符号小整数,0=该样本未设置密码,1=应用定义的缺省密码,2=买方设定的密码,3=卖方设定的密码;第46至第55共10个比特是密文的长度,保存一个0-1023之间的无符号小整数。
3、根据权利要求1所述的加密二维条码的组成,其特征在于:密文体是采用PBE算法加密明文而得到的二进制数据块。
4、根据权利要求1所述的加密二维条码的组成,其特征在于:加密二维条码目标码中带有授权方的数字签名(校验数据块),即使用授权方的RSA私钥加密明文的MD5信息摘要而得到的二进制信息块。
5、一种加密二维条码的应用方法,其具体步骤如下:
(1)服务方部署一套基于互联网的应用服务***,配置RSA密钥对(根密钥对),以建立一个加密二维条码的具体行业应用体系;
(2)授权方在服务方开户获得一个帐户同时生成一对RSA密钥对,服务方***使用根密钥对中的私钥加密该密钥对中的公钥,并制成授权码;
(3)授权方在具体应用背景下,把授权码授予识读方;
(4)授权方在具体应用背景下,把信息明文加密并结合数字签名(使用自己私钥对明文运算而得)制成目标码,通过Internet“发布”或者“销售”给消费方;
(5)识读方从服务方获得识读软件和激活码,安装并通过识读激活码激活识读软件,从而获得根密钥对中的公钥,用以解密授权码;
(6)识读方使用授权方授予的授权码(其中含授权方公钥)获得具体行业应用背景下的识读权力,从而获得识读、解密目标码的条件;
(7)消费方持目标码到识读方现场进行识读,这就是具体行业应用背景意义下的消费;识读方使用识读软件识读目标码,根据识读通过与否以及明文的内容,确定消费方的消费权利,完成消费过程。
6、根据权利要求5所述的加密二维条码的应用方法,其特征在于:服务方是加密二维条码某具体行业应用平台的运营机构,它拥有一套加密二维条码在线生成***,配置有RSA密钥对(根密钥对);授权方是具体行业应用的“卖方”,它在“服务方”的***上开有使用帐户(用户名、密码),并拥有服务方***为其生成的一对RSA密钥对(授权方密钥对);授权方负责管理和生成应用样本;识读方是具体行业应用的“供货方”或“消费场所”,它拥有加密二维条码识读软件,并在获得“服务方”授予的“激活码”、“授权方”授予的“授权码”的前提下,能够识读授权方发行/“销售”的“目标码”;消费方是具体行业应用的“买方”,它持有授权方发行/“销售”的“目标码”,并通过“识读方”的识读,完成“购买”某种商品/服务或达到某种消费目的最终用户。
7、根据权利要求5所述的加密二维条码的应用方法,其特征在于:激活码是使识读方能够识读由服务方***中产生的所有授权码的能力的一种介质;激活码的介质形式是二维条码,其明文内容就是服务方公钥(根公钥),用这个根公钥可以解密所有本应用体系中的授权码。
8、根据权利要求5所述的加密二维条码的应用方法,其特征在于:授权码是授权方向识读方授予识读目标码的权力的一种介质。授权码的形式也是本文描述加密二维条码,其明文内容是授权方公钥;授权码数字签名是“服务方”签署的。
9、根据权利要求5所述的加密二维条码的应用方法,其特征在于:目标码是承载应用信息的,在具体行业应用背景下它可能作为“商品”或者销售凭据由消费方(“买方”)持有的加密二维条码;目标码数字签名是“授权方”签署的;获得该目标码授权方授权的识读方可以识读;如果目标码带有识读密码的,在识读过程中需要用户输入识读密码。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200510074844 CN1878057A (zh) | 2005-06-07 | 2005-06-07 | 一种加密二维条码的组成及应用方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200510074844 CN1878057A (zh) | 2005-06-07 | 2005-06-07 | 一种加密二维条码的组成及应用方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1878057A true CN1878057A (zh) | 2006-12-13 |
Family
ID=37510370
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200510074844 Pending CN1878057A (zh) | 2005-06-07 | 2005-06-07 | 一种加密二维条码的组成及应用方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1878057A (zh) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101420295B (zh) * | 2008-12-01 | 2011-11-16 | 刘江海 | 字节上不同位置的比特重新赋值、相互替换的加密方法 |
ITMI20101537A1 (it) * | 2010-08-11 | 2012-02-12 | Roberto Pittia | Sistema per verificare l'autenticita' di articoli |
CN102760242A (zh) * | 2012-05-16 | 2012-10-31 | 孟智平 | 一种三维码的编解码和使用方法 |
CN101430768B (zh) * | 2007-11-07 | 2013-05-15 | 成都市思博睿科技有限公司 | 一种二维条码的定位方法 |
CN103780379A (zh) * | 2012-10-19 | 2014-05-07 | 阿里巴巴集团控股有限公司 | 密码加密方法和***以及密码校验方法和*** |
CN104050574A (zh) * | 2014-06-18 | 2014-09-17 | 广州市婴曼怡贸易有限公司 | 一种防伪方法及其防伪*** |
CN104376351A (zh) * | 2013-08-14 | 2015-02-25 | 深圳市众鸿科技股份有限公司 | 车机通用唯一识别码转换方法 |
CN104618334A (zh) * | 2014-12-29 | 2015-05-13 | 通邮(中国)科技有限公司 | 动态二维码生成验证方法及*** |
CN104636778A (zh) * | 2013-11-11 | 2015-05-20 | 数码辰星科技发展(北京)有限公司 | 一种可逆影票防伪码的生成方法 |
CN105426765A (zh) * | 2015-07-09 | 2016-03-23 | 深圳百云信息技术有限公司 | 二维码动态加解密算法 |
CN105448140A (zh) * | 2015-12-30 | 2016-03-30 | 北京招通致晟科技有限公司 | 一种航班动态信息的获取方法及装置 |
US9311652B2 (en) | 2013-10-30 | 2016-04-12 | Industrial Technology Research Institute | Method, apparatus and system for generating and verifying color barcode |
CN106506487A (zh) * | 2016-11-03 | 2017-03-15 | 武汉斗鱼网络科技有限公司 | 一种信息加、解密方法及装置 |
CN108229966A (zh) * | 2018-01-26 | 2018-06-29 | 中国银行股份有限公司 | 一种银行卡交易处理方法、银行卡及银行服务器 |
-
2005
- 2005-06-07 CN CN 200510074844 patent/CN1878057A/zh active Pending
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101430768B (zh) * | 2007-11-07 | 2013-05-15 | 成都市思博睿科技有限公司 | 一种二维条码的定位方法 |
CN101420295B (zh) * | 2008-12-01 | 2011-11-16 | 刘江海 | 字节上不同位置的比特重新赋值、相互替换的加密方法 |
ITMI20101537A1 (it) * | 2010-08-11 | 2012-02-12 | Roberto Pittia | Sistema per verificare l'autenticita' di articoli |
WO2012020291A3 (en) * | 2010-08-11 | 2012-05-18 | Roberto Pittia | System for checking the authenticity of articles |
CN102760242A (zh) * | 2012-05-16 | 2012-10-31 | 孟智平 | 一种三维码的编解码和使用方法 |
CN102760242B (zh) * | 2012-05-16 | 2016-09-14 | 孟智平 | 一种三维码的编解码和使用方法 |
CN103780379A (zh) * | 2012-10-19 | 2014-05-07 | 阿里巴巴集团控股有限公司 | 密码加密方法和***以及密码校验方法和*** |
CN103780379B (zh) * | 2012-10-19 | 2017-09-19 | 阿里巴巴集团控股有限公司 | 密码加密方法和***以及密码校验方法和*** |
CN104376351B (zh) * | 2013-08-14 | 2017-10-31 | 深圳市众鸿科技股份有限公司 | 车机通用唯一识别码转换方法 |
CN104376351A (zh) * | 2013-08-14 | 2015-02-25 | 深圳市众鸿科技股份有限公司 | 车机通用唯一识别码转换方法 |
US9311652B2 (en) | 2013-10-30 | 2016-04-12 | Industrial Technology Research Institute | Method, apparatus and system for generating and verifying color barcode |
CN104636778A (zh) * | 2013-11-11 | 2015-05-20 | 数码辰星科技发展(北京)有限公司 | 一种可逆影票防伪码的生成方法 |
CN104050574A (zh) * | 2014-06-18 | 2014-09-17 | 广州市婴曼怡贸易有限公司 | 一种防伪方法及其防伪*** |
CN104050574B (zh) * | 2014-06-18 | 2018-04-27 | 广州澳滋亚进出口贸易有限公司 | 一种防伪方法及其防伪*** |
CN104618334A (zh) * | 2014-12-29 | 2015-05-13 | 通邮(中国)科技有限公司 | 动态二维码生成验证方法及*** |
CN105426765A (zh) * | 2015-07-09 | 2016-03-23 | 深圳百云信息技术有限公司 | 二维码动态加解密算法 |
CN105448140A (zh) * | 2015-12-30 | 2016-03-30 | 北京招通致晟科技有限公司 | 一种航班动态信息的获取方法及装置 |
CN106506487A (zh) * | 2016-11-03 | 2017-03-15 | 武汉斗鱼网络科技有限公司 | 一种信息加、解密方法及装置 |
CN108229966A (zh) * | 2018-01-26 | 2018-06-29 | 中国银行股份有限公司 | 一种银行卡交易处理方法、银行卡及银行服务器 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1878057A (zh) | 一种加密二维条码的组成及应用方法 | |
CN1926567A (zh) | 使用格式化数据结构进行安全支付交易的***和方法 | |
CN1155919C (zh) | 用移动设备的事务处理方法 | |
CN1159669C (zh) | 卡式记录媒体和其存取控制方法 | |
CN101038653A (zh) | 验证*** | |
CN1764883A (zh) | 数据保护管理装置和数据保护管理方法 | |
CN1561498A (zh) | 使用移动装置进行支付的设备、方法和*** | |
CN1514978A (zh) | 自动交易机数字签名***和方法 | |
CN1441935A (zh) | 用于初始文件的再现和验证的***和方法 | |
US20120308003A1 (en) | Authentic barcodes using digital signatures | |
CN1479896A (zh) | 内容发行***、内容发行方法和客户机终端 | |
CN1756150A (zh) | 信息管理仪器、信息管理方法和程序 | |
CN1897633A (zh) | 电子图像数据验证程序、***和方法 | |
CN1908981A (zh) | 用于物理销售点交易的无线计算机钱包 | |
CN1858793A (zh) | 电子合同管理***运营平台 | |
CN1853189A (zh) | 电子商务交易的客户验证 | |
CN1299545A (zh) | 使用虚拟专用密钥的用户鉴别 | |
CN1169071A (zh) | 计费设备、通信装置和通信*** | |
CN1556449A (zh) | 对网上银行数据进行加密、认证的装置和方法 | |
CN1808490A (zh) | 数字***的商务运行方法及其*** | |
CN1439123A (zh) | 用于在设备之间进行高级交易的安全*** | |
CN1788263A (zh) | 登录***和方法 | |
CN1889419A (zh) | 一种实现加密的方法及装置 | |
CN1822020A (zh) | 传输数据的方法、数据提供和接收设备以及通信*** | |
CN1921395A (zh) | 提高网络软件安全性的方法和*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20061213 |