CN113535102B - 智能物联平台系统及其工作方法、计算机可读存储介质 - Google Patents

智能物联平台系统及其工作方法、计算机可读存储介质 Download PDF

Info

Publication number
CN113535102B
CN113535102B CN202111083541.1A CN202111083541A CN113535102B CN 113535102 B CN113535102 B CN 113535102B CN 202111083541 A CN202111083541 A CN 202111083541A CN 113535102 B CN113535102 B CN 113535102B
Authority
CN
China
Prior art keywords
intelligent internet
printing
request
things platform
user
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.)
Active
Application number
CN202111083541.1A
Other languages
English (en)
Other versions
CN113535102A (zh
Inventor
陆舟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Feitian Technologies Co Ltd
Original Assignee
Feitian Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Feitian Technologies Co Ltd filed Critical Feitian Technologies Co Ltd
Priority to CN202111083541.1A priority Critical patent/CN113535102B/zh
Publication of CN113535102A publication Critical patent/CN113535102A/zh
Application granted granted Critical
Publication of CN113535102B publication Critical patent/CN113535102B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1222Increasing security of the print job
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

本发明公开了一种智能物联平台系统及其工作方法、计算机可读存储介质,方法包括:接收第一业务平台发送的打印请求,解析打印请求获取设备序列号,根据设备序列号找到对应的授权码,根据授权码生成获取用户信息请求发送给第二业务平台,接收到第二业务平台返回的用户信息,根据用户信息中的用户标识生成获取交互信息请求,发送给第二业务平台,当接收到第二业务平台返回的交互信息时,查询预置打印模板,组织打印数据,并向打印设备发送打印数据,打印设备接收数据并打印。通过本方案可以使业务信息更加准确的打印的同时,还保证了业务信息的安全性。

Description

智能物联平台系统及其工作方法、计算机可读存储介质
技术领域
本申请属于信息技术领域,尤其涉及一种智能物联平台系统及其工作方法、计算机可读存储介质。
背景技术
随着智能物联技术的发展,包括打印设备在内的终端设备被应用到越来越多的业务系统。目前终端设备与业务系统集成,最困难的关键点在于如何将终端设备与业务系统的平台用户信息进行绑定。
发明内容
本发明提供了一种智能物联平台系统的工作方法,包括:
步骤s1:当智能物联平台接收到第一业务平台发送的打印请求时,解析打印请求获取设备序列号,根据设备序列号查找对应的授权码,根据授权码获取用户信息请求,向第二业务平台发送获取用户信息请求;
步骤s2:当智能物联平台接收到用户信息时,根据用户信息获取用户标识,根据用户标识生成获取交互信息请求,向第二业务平台发送获取交互信息请求;
步骤s3:当智能物联平台接收到第二业务平台返回的交互信息,并且交互信息有效时,查询设备序列号对应的打印设备对应的用户预置的打印模板,按照打印模板根据交互信息组织打印数据,将打印数据发送至设备序列号对应的打印设备进行打印。
可选地,步骤s1之前,还包括:
智能物联平台接收第二业务平台发送的授权码和对应的设备序列号,并将授权码和设备序列号对应保存。
可选地,步骤s1之前还包括:第二业务平台预置授权码,将授权码和用户信息对应绑定,向智能物联平台发送授权码和对应的设备序列号。
可选地,步骤s1之前还包括:
当第一业务平台接收到用户的交互请求时,生成打印请求,向智能物联平台发送打印请求。
可选地,当智能物联平台向第二业务平台发送获取用户信息请求之后,接收用户信息之前,还包括:
第二业务平台接收智能物联平台发送的获取用户信息请求,当判断出智能物联平台合法时,解析获取用户信息请求得到授权码,根据授权码查找对应的用户信息,向智能物联平台返回用户信息。
可选地,智能物联平台向第二业务平台发送获取交互信息请求之后,接收第二业务平台返回的交互信息之前,还包括:
第二业务平台接收智能物联平台发送的获取交互信息请求,解析获取交互信息请求得到用户标识,根据用户标识获取交互信息,向智能物联平台返回获取到的交互信息。
可选地,步骤s1之前还包括:
步骤s0-1:打印设备接收智能物联平台发送的配置信息数据密文,解密配置信息数据密文得到配置信息数据,计算生成用户名和密码,根据用户名、密码和配置信息数据生成连接请求,向智能物联平台发送连接请求;
步骤s0-2:智能物联平台接收连接请求,解析连接请求获取用户名和密码,根据用户名和密码验证打印设备是否合法,如果是,建立与打印设备的长连接;否则,提示打印设备不合法,结束。
本申请实施例还提供了一种智能物联平台系统,该智能物联系统包括至少一个处理器、存储器及存储在存储器上并可被至少一个处理器执行的指令,至少一个处理器执行所述指令以实现智能物联平台系统的工作方法。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质包括计算机程序,当所述计算机程序在智能物联平台上运行时,使得所述智能物联平台执行智能物联平台系统的工作方法步骤。
根据本发明提供的技术方案,可以安全有效的将打印设备与业务系统对应用户信息以及用户对应的业务信息在不同的系统进行绑定,这样,智能物联平台基于上述绑定与各平台、设备交互取得全部的业务信息,在实现业务信息完整准确打印的同时,还保证了业务信息的安全性。
附图说明
图1为根据本发明实施例一提供的一种智能物联平台系统的工作方法;
图2-图3为根据本发明实施例二提供的一种智能物联平台系统的工作方法;
图4为根据本发明实施例三提供的一种智能物联平台系统的工作方法。
具体实施方式
实施例一
本发明实施例一提供了一种智能物联平台系统的工作方法,如图1所示,包括:
步骤s1:当智能物联平台接收到第一业务平台发送的打印请求时,解析打印请求获取设备序列号,根据设备序列号查找对应的授权码,根据授权码生成获取用户信息请求,向第二业务平台发送获取用户信息请求;
步骤s2:当智能物联平台接收到用户信息时,根据用户信息获取用户标识,根据用户标识生成获取交互信息请求,向第二业务平台发送获取交互信息请求;
步骤s3:当智能物联平台接收到第二业务平台返回的交互信息时,判断交互信息是否有效,当交互信息有效时,查询设备序列号对应的打印设备对应的用户预置的打印模板,按照打印模板根据交互信息组织打印数据,将打印数据发送至设备序列号对应的打印设备进行打印。
可选地,步骤s1之前,还包括:
智能物联平台接收第二业务平台发送的授权码和对应的设备序列号,并将授权码和设备序列号对应保存。
可选地,步骤s1之前还包括:第二业务平台预置授权码,将授权码和用户信息对应绑定,向智能物联平台发送授权码和对应的设备序列号。
可选地,步骤s1之前还包括:
当第一业务平台接收到用户的交互请求时,生成打印请求,向智能物联平台发送打印请求。
可选地,当智能物联平台向第二业务平台发送获取用户信息请求之后,接收用户信息之前,该方法还包括:
第二业务平台接收智能物联平台发送的获取用户信息请求,当判断智能物联平台合法时,解析获取用户信息请求得到授权码,根据授权码查找对应的用户信息,向智能物联平台返回用户信息。
可选地,智能物联平台向第二业务平台发送获取交互信息请求之后,接收第二业务平台返回的交互信息之前,还包括:
第二业务平台接收智能物联平台发送的获取交互信息请求,解析获取交互信息请求得到用户标识,根据用户标识获取交互信息,向智能物联平台返回获取到的交互信息。
可选地,步骤s1之前还包括:
步骤s0-1:打印设备接收智能物联平台发送的配置信息数据密文,解密配置信息数据密文得到配置信息数据,计算生成用户名和密码,根据用户名、密码和配置信息数据生成连接请求,向智能物联平台发送连接请求;
步骤s0-2:智能物联平台接收连接请求,解析连接请求获取用户名和密码,根据用户名和密码验证打印设备是否合法,如果是,建立与打印设备的长连接;否则,提示打印设备不合法,结束。
实施例二
本发明实施例二提供一种智能物联平台的工作方法,如图2和3所示,包括如下步骤:
步骤s201:第二业务平台将用户信息和预置的授权码对应保存,并向智能物联平台发送授权码和对应的设备序列号;
可选地,用户信息可以包含:用户类别、用户号、用户名称、一级分行号、用户类型、线下POS唯一编号、终端号、柜台号以及柜台名称;
例如:第二业务平台将用户信息:merchantId(用户号)、merchantKind(用户类别)、merchantName(用户名称)、branchCode(一级分行号)、merchantType(用户类型)、posId(线下POS唯一编号)、terminalCode(终端号)、counterCode(柜台号)、counterName(柜台名称)和预置的授权码20200707182900对应保存,并向智能物联平台发送授权码和对应的设备序列号20010000001。
步骤s202:智能物联平台接收第二业务平台发送的授权码和对应的设备序列号,并将接收到的授权码和设备序列号对应保存;
例如:智能物联平台接收第二业务平台发送的授权码20200707182900和设备序列号20010000001,将接收到的授权码20200707182900和设备序列号20010000001对应保存。
步骤s203:打印设备开机,获取预置的设备序列号和初始密钥,组装密钥协商请求数据,根据密钥协商请求数据生成密钥协商请求,向智能物联平台发送密钥协商请求;
可选地,根据密钥协商请求数据生成密钥协商请求具体为:使用初始密钥对密钥协商请求数据进行AES128加密生成密钥协商请求;
可选地,密钥协商请求数据包括:设备序列号和固件版本号,其中,设备序列号为明文;
例如:设备序列号为20010000001,组装的密钥协商请求数据包括:明文区数据为{“devicesn”:“20010000001”,“os_version":1000}:密文区数据为{"os_version":1000,"random":"00DC0465AA1FAD1D5ADAE5AC1B1E5F13","signature":"27F25A13BDFA3901DA76B669A86908FE0FB3FB72F7016AB6B5E8F79A36536A39"}
其中,os_version:固件版本号;
random:随机数;
signature:摘要数据(对os_version和random进行HmacSHA256摘要);
生成的密钥协商请求为0000040003000000c20000002a0000007b226465765f736e223a223230303130303030303031222c226f735f76657273696f6e223a313030307d900000009f08e88acacadf82c2feb1eac9e59928ad8c900c417824be748b4bfef23e53e6cf69cc791cf9ae25b79c11bc5d7c76c57ec5f87608728cb39213915095d0a54ec45d3129670723486f8393373d78ee630bc02a663d6a4ef702b128ecdd8d21da3e5a63472b793a6aa4b27fdd571414a2512586c7faa785af59f78f2db4345c312d920cf37c295e5e41a8bb6588a507b5。
步骤s204:智能物联平台接收打印设备发送的密钥协商请求,解析密钥协商请求获取设备序列号和第一密文,判断预置设备序列号表中是否存在获取到的设备序列号,如果是,执行步骤s205;否则,提示设备不合法,结束;
例如,智能物联平台接收打印设备发送的密钥协商请求0000040003000000c20000002a0000007b226465765f736e223a223230303130303030303031222c226f735f76657273696f6e223a313030307d900000009f08e88acacadf82c2feb1eac9e59928ad8c900c417824be748b4bfef23e53e6cf69cc791cf9ae25b79c11bc5d7c76c57ec5f87608728cb39213915095d0a54ec45d3129670723486f8393373d78ee630bc02a663d6a4ef702b128ecdd8d21da3e5a63472b793a6aa4b27fdd571414a2512586c7faa785af59f78f2db4345c312d920cf37c295e5e41a8bb6588a507b5,解析获得设备序列号20010000001和第一密文5f76657273696f6e223a313030307d900000009f08e88acacadf82c2feb1eac9e59928ad8c900c417824be748b4bfef23e53e6cf69cc791cf9ae25b79c11bc5d7c76c57ec5f87608728cb39213915095d0a54ec45d3129670723486f8393373d78ee630bc02a663d6a4ef702b128ecdd8d21da3e5a63472b793a6aa4b27fdd571414a2512586c7faa785af59f78f2db4345c312d920cf37c295e5e41a8bb6588a507b5,判断预置的设备序列号列表中是否存在获得的设备序列号,如果是,执行步骤s205;否则,提示设备不合法,结束;
步骤s205:智能物联平台根据设备序列号查找设备对应的初始密钥,使用初始密钥解密第一密文得到解密数据,当解密数据验证有效时,生成随机数作为设备密钥明文,根据设备密钥明文组织密钥协商响应数据,使用初始密钥加密密钥协商响应数据得到密钥协商响应,向打印设备返回密钥协商响应;
可选地,生成随机数作为设备密钥明文具体为:生成32位随机数作为设备密钥明文。
可选地,验证数据有效具体如下:智能物联平台获取解密数据中的os_version,random信息,对os_version和random进行HmacSHA256摘要,计算得到摘要值:27F25A13BDFA3901DA76B669A86908FE0FB3FB72F7016AB6B5E8F79A36536A39,与解密数据中的signature进行对比,数据一致则数据验证有效。
例如,智能物联平台根据设备序列号20010000001查找对应初始密钥,使用初始密钥解密第一密文得到解密数据{"os_version":1000,"random":"00DC0465AA1FAD1D5ADAE5AC1B1E5F13","signature":"27F25A13BDFA3901DA76B669A86908FE0FB3FB72F7016AB6B5E8F79A36536A39"},生成随机数767A455172647A31524A536F6359785661696C4F4D6E367977306E477A6C4853作为设备密钥明文,根据设备密钥明文组织密钥协商请求响应数据,用初始密钥加密密钥协商请求响应数据得到密钥协商响应,向打印设备返回密钥协商响应a5ee470c68453ebb68ec12e4ee8ed559dd0630f76323eda12f393aaa029dfe9bfbe8b742c095e06522bb6c88ac63b3b71640fe34181394cc4f7b18b87a9ab675756927644811b401f31920554f5e5bf1c8fd1d18f2c97721d0154b30a637304f725eb8dc3abd38d93907e18e85777a45d29eb9c4a7663199461c015e44934249c86d1bd3b854c76065e57b7fa8c7b4f387dc51a7fb1136974cd46982defb35fdb6beea9738ecd13e2d8c11d886257e7661a810a152948a4d60a84030dc4961ae00c85ffed46f972c53c8ece781f6d6a6。
步骤s206:打印设备接收密钥协商响应,解密密钥协商响应获取设备密钥,组织获取配置信息请求的数据,根据设备密钥和获取配置信息请求的数据生成获取配置信息请求,向智能物联平台发送获取配置信息请求;
可选地,步骤s206具体为:打印设备接收密钥协商响应,解密密钥协商响应获取设备密钥,组织获取配置信息请求的数据,使用设备密钥和加密算法AES128对获取配置信息的请求数据的密文区进行加密生成获取配置信息请求,向智能物联平台发送获取配置信息请求;
例如:打印设备接收到密钥协商响应,解密密钥协商响应得到解密数据{"result":0,"random":"P9Y1QYFDKSJ9G9RU","signature":"A4B0975E2203D1D3948243EA8C52273E0A1D86E086D5DD7CCD93A24E90099CB2","secret":"767A455172647A31524A536F6359785661696C4F4D6E367977306E477A6C4853"}
其中,result:接口请求处理结果 0:代表成功;random:随机数;signature:签名数据;secret:设备密钥;
获取解密数据中的设备密钥,组织获取配置信息请求的数据包括:明文区{"os_version":1000, "devicesn":"20010000001"},密文区{"os_version":1000,"lang_type":0,"IMEI":"866823058592914","IMSI":"9460049629106625","ICCID":"898604520419C1164020","template":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]}
其中,os_version:固件版本号;lang_type:多语言类型;IMEI:SIM卡IMEI号;IMSI:SIM卡IMSI号;ICCID:SIM卡ICCID号;template:语音模板编号,使用设备密钥和加密算法AES128对获取配置信息请求的数据的密文区进行加密生成获取设备配置信息请求0000010003000000c0000000180000007b226465765f736e223a223230303130303030303031227da000000018af0b4631e1e7a66f365f722746cb0616db1a6c31a72109f6fb9a077eebff4677444f874a5f3c40994564b00bd751c49ae922766117eb35751295216cc5544d6c9e86f6ce7e2e99ea91e97b017b751941760dfecfd12e7134607fcee0e6f36e6ecde55af47550e5917e51da48c88c63b4937b50c1c0360631af3f9370322d46cd5d548800776b8e9d2fe8e154862ffbe141fa9ee96c7f4898810c1c6cb8ef21,向智能物联平台发送获取设备配置信息请求;
步骤s207:智能物联平台接收获取配置信息请求,解析获取配置信息请求获取设备序列号,根据设备序列号获取设备配置信息数据和设备密钥,用设备密钥加密设备配置信息数据,向打印机返回设备配置信息密文;
例如:智能物联平台接收获取配置信息请求,解析获取配置信息请求获得设备序列号,根据设备序列号获取设备配置信息数据和设备密钥,用设备密钥加密设备配置信息数据,向打印机返回加密后的设备配置信息数据e2c3ea550f94cf38323f014b4169b01108839cf8a0d26b57d372a677854f0b36ea6b7cc6e674b67354cad45d523235c557561ae796a02970509c1ada81871e2f4671552eaa80ddf5d0bda7328477d380b11eb53941f9ec786d80e63dbef19d20ffbb8f5907c19629bea1db9bfd9cf8b818bc72d0e8fc10bd13cd9c627e79c76c04ed723101117cca01e849f5fbc9fe42f0470a80bde3850fbf885ebc2d6b8132827f48b0a970e7017e3720e7cf517631403b7e1d4d2b369c0645e77fc2668c694ee2110ade7a18065d8da5755c52a2758080b9ebabf98115d9a7bb74d92549d8aeda5c2a1d8c7bad168d7e53ba595845cea38dd2720da0889755312778e00b2d968fab992f346da71a1d65801bf2a1215904b08a5e64b6d83ed22735000814e967fdfc27e075f89dabedba9a541fcd877b7f7dcb708b3373305475e5d4dc9ab5;
步骤s208:打印设备接收并解密设备配置信息密文得到配置信息数据,计算用户名和密码,根据配置信息数据、用户名和密码生成连接请求,向智能物联平台发送连接请求;
可选地,打印设备解密设备配置信息密文得到的设备配置信息数据包括:多语言类型、心跳时间、是否使用tls连接、音频模板、需要更新的音频模板、所有的音频模板、推送服务器地址、推送服务器端口号、设备音频类型、时间戳;
例如:打印设备接收并解密设备配置信息密文,解密得到设备配置信息数据{"language_info":{"type":0},"mqtt_keep_alive_interval":100,"push_use_tls":0,"audio_template":{"new_number":[],"all_number":[],"url":"http://iotconfig-inter.cloudentify.com:10386/download"},"server_host":"iotpushserv-inter.cloudentify.com","server_port":10281,"device_spec":"amr","timestamp":"20210622104016"};
其中,language_info:多语言类型;
mqtt_keep_alive_interval:mqtt心跳时间;
push_use_tls:是否使用tls连接;
audio_template:音频模板;
new_number:需要更新的音频模板;
all_number:所有的音频模板;
server_host:推送服务器地址;
server_port:推送服务器端口号;
device_spec:设备音频类型;
timestamp:时间戳;
可选地,计算用户名和密码具体为:
根据登录次数、网络类型、版本号、随机数生成用户名,例如,用户名具体为mqtt登录次数+网络类型+版本号+随机数;
根据设备序列号和用户名生成密码,例如,密码具体为使用设备密钥对“devicesn&username”进行HmacSHA256签名,结果转换为十六进制字符串。
例如,得到的连接请求具体为:
mqtt_params.host = iotpushserv-inter.cloudentify.com
mqtt_params.port = 10281
mqtt_params.devicesn = 20010000001
mqtt_params.username = cH6pmQEEfAAANC0tEP8Zr2AdBKw=
mqtt_params.password=469082b0f06f27a6b0aade0b9c604170dbdc621291fc7a75180468b3b2c8e16a
mqtt_params.keepalive_interval = 100;
其中mqtt_params.host为服务器域名地址;mqtt_params.port为服务器端口;mqtt_params.devicesn为打印设备序列号;mqtt_params.username为打印设备计算的用户名;mqtt_params.password为打印设备计算的密码;mqtt_params.keepalive_interval为打印设备心跳时间周期。
步骤s209:智能物联平台接收连接请求,解析连接请求获取用户名和密码,根据用户名和密码验证打印设备身份是否合法,如果是,建立与打印设备的长连接;否则,提示打印设备不合法,结束;
可选地,智能物联平台根据用户名和密码验证打印设备身份是否合法具体为:
步骤s209-1:智能物联平台校验用户名中的mqtt登录次数是否大于上一次上传的mqtt登录次数,如果是,执行步骤s507-2;否则,用户名校验失败,打印设备身份不合法;
步骤s209-2:智能物联平台使用对应的设备密钥对“devicesn&username”进行HmacSHA256签名,结果转换为十六进制字符串,与设备上传的密码进行比对,如果一致,打印设备合法;否则,打印设备不合法。
步骤s210:当第一业务平台接收到用户的交互请求时,生成打印请求,向智能物联平台发送打印请求;
可选地,打印请求中包括:应用appkey,请求接口名,设备序列号,播报数额,交互渠道,时间戳,随机数,订单号以及签名;
例如:向智能物联平台发送的打印请求为:
{
"appkey" : "9A0A8659F005D6984697E2CA0A9CF3B7",
"timestamp" :"20181221162001",
"method" : "push",
"devicesn" : "20010000001",
"message" : "1234",
"push_template" : "1",
"nonce" : "dpRxkhjbauiclpKoqt",
orderID:1010113956108800614179721
"sign" : "1df9e58d88b52a568b79872b3ac54781122b2b91f87c33204c2ad38c486e57f3"
};
其中,appkey为应用appkey,method为请求接口名,devicesn为设备序列号,message为播报金额,push_template为交易渠道,timestamp为时间戳,nonce为随机数,orderID 为订单号,sign为签名。
步骤s211:智能物联平台接收第一业务平台发送的打印请求,解析打印请求获取设备序列号,根据设备序列号查找对应的授权码,根据授权码生成获取用户信息请求,向第二业务平台发送获取用户信息请求;
可选地,获取用户信息请求中包含:方法名、设备序列号、授权码、校验值;
例如:智能物联平台组装获取用户信息请求数据,向第二业务平台发送获取用户信息请求,具体为:
{
"method":"merchantinfo",
"deviceCode":"20010000001",
"authCode":"20200707182900",
"mac":"a96c95"
};
其中method为方法名,代表此次请求为获取用户信息;
deviceCode为设备序列号;
authCode为授权码;
mac为校验值。
可选地,mac值是用设备密钥对method、deviceCode、authCode拼接后的数据加密所得。先把需加密的method + deviceCode +authCode字段按顺序用“&”符号拼接成字符串,再将该字符串用国际标准的 md5 加密算法生成加密串,取加密串后 6 位为 mac。
例如:method为merchantinfo,设备序列号为:20010000001,authCode:20200707182900
三个字段拼接成merchantinfo&AA9901904L3M123456&20200707182900的字符串,在 md5 算法加密字符串后为:60915b4a1d8392a4b9a03b1388a96c95,取后六位为 mac:a96c95。
步骤s212:第二业务平台接收智能物联平台发送的获取用户信息请求,验证智能物联平台是否合法,当智能物联平台合法时,解析获取用户信息请求得到授权码,根据授权码查找对应的用户信息,向智能物联平台返回用户信息;
可选地,向智能物联平台返回的用户信息包含:返回码、用户号、用户类别、用户名称、一级分行号、用户类型、线下POS唯一编号、终端号、柜台号、柜台名称和校验值;
可选地,验证智能物联平台是否合法具体为:
第二业务平台接收智能物联平台发送的获取用户信息请求,将请求中的method,deviceCode,authCode三个字段对应的值拼接成merchantinfo&AA9901904L3M123456&20200707182900的字符串,在 md5 算法加密字符串后为:60915b4a1d8392a4b9a03b1388a96c95,取后六位为 mac:a96c95与智能物联平台发送的获取用户信息请求中mac值进行对比,数据一致则合法。
例如:第二业务平台向智能物联平台返回的用户信息为:{
"code":0,
"merchantId":"105123412341234",
"merchantKind":1,
"merchantName":"超市01",
"branchCode":"440000000",
"merchantType":1,
"posId":"1051234123412340001",
"terminalCode":"10000045",
"counterCode":"313362202",
"counterName":"柜台01",
"mac":"a15d83"
};
其中code为返回码,0代表成功;
merchantId为用户号;
merchantKind为用户类别;
merchantName为用户名称;
branchCode为一级分行号;
merchantType为用户类型,1为线上用户,2为线下用户;
posId为线下POS唯一编号;
terminalCode为线下8位终端号;
counterCode为柜台号;
counterName为柜台名称;
mac为校验值;
步骤s213:智能物联平台接收用户信息,获取用户号,根据用户号、订单号和设备序列号生成获取交互信息请求,向第二业务平台发送获取交互信息请求;
可选地,智能物联平台接收到的用户信息包括:返回码、用户号、用户类别、用户名称、一级分行号、用户类型、线下POS唯一编号、终端号、柜台号、柜台名称和校验值;
例如:用户信息为:
{
"code":0,
"merchantId":"105123412341234",
"merchantKind":1,
"merchantName":"超市01",
"branchCode":"440000000",
"merchantType":1,
"posId":"1051234123412340001",
"terminalCode":"10000045",
"counterCode":"313362202",
"counterName":"柜台01",
"mac":"a15d83"
}
生成的获取交互信息请求为:
{
"method":"orderinfo",
"deviceCode":"20010000001",
"orderId":"1010113951608800614179721",
"mac":"c23a37"
"merchantId":"105123412341234"
}
其中mthod为方法名,代表此次请求为获取订单详情信息;
deviceCode为设备序列号;
orderId为订单号;
mac为校验值;
merchantId为用户号。
步骤s214:第二业务平台接收智能物联平台发送的获取交互信息请求,解析获取交互信息请求得到用户号、订单号和设备序列号,根据用户号、订单号和设备序列号获取交互信息,向智能物联平台返回获取到的交互信息;
步骤s215:智能物联平台接收第二业务平台返回的交互信息,判断交互信息是否有效,当交互信息有效时,查询打印设备对应的用户预置的打印模板,按照打印模板根据交互信息组织打印数据,使用设备密钥加密打印数据得到打印数据密文,向打印设备发送打印数据密文;
可选地,步骤s215还包括:
根据交互信息组织播报数据,使用设备密钥加密播报数据得到播报数据密文,向打印设备发送播报数据密文;
可选地,交互信息包括:返回码、交互时间、交互方式、用户名称、用户号、线下POS唯一编号、线下8位终端编号、柜台号、柜台名称、校验值。
可选地,步骤s215中判断交互信息是否有效具体为:
智能物联平台将交互信息中的参数按照ASCII的顺序进行拼接,并对拼接结果进行加密得到第一mac值,判断第一mac值与交互信息中的mac值是否相同,如果是,交互信息有效;否则,交互信息无效。
例如:第二业务平台返回的交互信息具体为:
"code":0,
"tranTime":"20201228174301",
"payType":1,
"merchantId":"105123412341234",
"merchantName":"超市名称1",
"posId":"1051234123412340001",
"terminalCode":"10000045",
"counterCode":"313362202",
"counterName":"柜台01",
"mac":"b63d45"
};
其中code为返回码,0代表成功;
tranTime为交互时间;
payType为交互方式,1-交互方式一、2-交互方式二、3-交互方式三、4、交互方式四;
merchantName为用户名称;
merchantId为用户号;
posId为线下POS唯一编号;
terminalCode为线下8位终端号;
counterCode为柜台号;
counterName为柜台名称;
mac为校验值。
可选的,智能物联平台验证数据有效性具体为:
智能物联平台将接收到的报文中参数按照ASCII码的顺序进行拼接得到0&313362202&柜台01&105123412341234&超市1&1&1051234123412340001&10000045&20201228174301,对拼接后的参数进行MD5加密得到7c30d4b4befff62a641dc638f2b63d45,校验与报文中的mac字段值是否一致,是则,交互信息有效;否则,交互信息无效。
步骤s216:打印设备接收打印数据密文,解密打印数据密文得到打印数据并进行打印,结束。
可选地,步骤s216还包括:打印设备接收播报数据密文,解密播报数据密文得到播报数据,根据播报数据进行播报。
可选地,步骤s216具体为:打印设备接收打印数据密文,使用设备密钥解密打印数据密文,获取消息推送id,与本地缓存的近100条消息id做对比,判断是否与本地消息id有重复。如果有,则认为是重复推送,不处理本条消息,回复消息确认给智能物联平台。如果没有,则继续解析数据,调用打印机打印指令,进行打印,打印完成后回复消息确认给智能物联平台。
实施例三
本发明实施例三提供一种智能物联平台系统的工作方法如图4所示,包括:
步骤s301:打印设备开机,获取预置的设备序列号、打印设备授权码以及初始密钥,组织密钥协商请求数据,根据密钥协商请求数据生成密钥协商请求,向智能物联平台发送密钥协商请求;
可选地,步骤s301之前,还包括:银行将打印设备发放给用户,并且向智能物联平台发送打印设备授权码;
可选地,根据密钥协商请求数据生成密钥协商请求具体为:使用初始密钥对密钥协商请求数据进行AES128加密生成密钥协商请求;
可选地,密钥协商请求数据包括:设备序列号和设备版本号,设备序列号为明文;
步骤s302:当智能物联平台接收到打印设备发送的密钥协商请求时,解析密钥协商请求获取设备序列号和第一密文,判断预置设备序列号表中是否存在与获取到的设备序列号相同的设备序列号,如果是,执行步骤s303;否则,提示设备不合法,结束;
可选地,步骤s302中智能物联平台接收打印设备发送的密钥协商请求之前还包括:
智能物联平台接收银行系统发送的打印设备授权码,并将接收到的设备授权码与智能物联平台中预置设备序列号表中的设备序列号对应保存;
步骤s303:智能物联平台根据设备序列号查找设备对应的初始密钥,使用初始密钥解密第一密文得到解密数据,验证解密数据的完整性,生成随机数作为设备密钥明文,将设备序列号和设备密钥明文对应保存,根据设备密钥明文组织密钥协商请求响应数据,用初始密钥加密密钥协商请求响应数据得到密钥协商响应,向打印设备返回密钥协商响应;
可选地,根据解密数据生成随机数作为设备密钥明文具体为:根据解密数据生成32位随机数作为设备密钥明文。
步骤s304:打印设备接收密钥协商响应,解密密钥协商响应获取设备密钥,组织获取配置信息请求的数据,根据设备密钥和获取配置信息请求的数据生成获取设备配置信息请求,向智能物联平台发送获取设备配置信息请求;
可选地,步骤s304具体为:打印设备接收密钥协商响应,解密密钥协商响应获取设备密钥,组织获取配置信息请求数据,使用设备密钥和加密算法AES128对获取设备配置信息数据的密文区进行加密生成获取设备配置信息请求,向智能物联平台发送获取设备配置信息请求;
步骤s305:智能物联平台接收获取设备配置信息请求,解析获取设备配置信息请求获取设备序列号,根据设备序列号获取设备配置信息数据和设备密钥,用设备密钥加密设备配置信息数据,向打印机返回设备配置信息数据密文;
步骤s306:打印设备接收并解密配置信息数据密文得到配置信息数据,计算用户名和密码,根据配置信息数据、用户名和密码生成连接请求,向智能物联平台发送连接请求;
可选地,打印设备解密加密的设备配置信息数据得到的设备配置信息数据包括:多语言类型、心跳时间、是否使用tls连接、音频模板、需要更新的音频模板、所有的音频模板、推送服务器地址、推送服务器端口号、设备音频类型、时间戳;
步骤s307:智能物联平台接收连接请求,解析连接请求获取用户名和密码,根据用户名和密码验证打印设备身份是否合法,如果是,执行步骤s308;否则,提示打印设备不合法,结束;
可选地,智能物联平台根据用户名和密码验证打印设备身份是否合法具体为:
步骤s307-1:智能物联平台校验用户名中的登陆是否大于上一次上传的登录次数,如果是,执行步骤s307-2;否则,用户名校验失败;
步骤s307-2:智能物联平台使用对应的设备密钥对“clientId&username”进行HmacSHA256签名,结果转换为十六进制字符串,与设备上传的密码进行比对,如果一致,打印设备合法;否则,打印设备不合法。
步骤s308:智能物联平台建立与打印设备的长连接;
步骤s309:当智能物联平台接收到打印请求时,组织获取用户信息的报文,生成获取用户信息请求,向业务系统发送获取用户信息请求;当智能物联平台接收到业务系统返回的用户信息时,获取用户标识,根据用户标识、设备序列号和订单号生成获取交互信息请求,向业务平台发送获取交互信息请求;
可选地,获取用户信息的报文具体包括:方法名称、设备序列号、授权码和mac值;其中mac值是用设备密钥对方法名称、设备序列号、授权码按照ASCII码的顺序拼接后的数据进行md5加密生成加密串,取加密串后六位作为mac值。
步骤s310:智能物联平台等待接收业务系统发送的交互信息,当接收到交互信息时,解析交互信息获取交互信息参数和设备序列号,验证交互信息是否有效,如果是,执行步骤s311;否则,提示交互信息无效,结束;
可选地,步骤s310中验证交互信息是否有效具体为:
智能物联平台将交互数据中的参数按照ASCII的顺序进行拼接,并对拼接结果进行签名得到第一mac值,判断第一mac值与交互信息中的mac值是否相同,如果是,交互信息有效;否则,交互信息无效;
步骤s311:智能物联平台查询打印设备对应的用户预置的打印模板,按照打印模板根据交互信息组装打印数据和播报数据,用设备密钥加密打印数据和播报数据得到打印数据密文,向打印设备发送打印数据密文;
步骤s312:打印设备接收打印数据密文,解密打印数据密文得到打印数据和播报信息,根据播报数据进行播报,并打印打印数据,结束。
可选地,步骤s312具体为:
打印设备接收打印数据密文,使用设备密钥解密打印数据密文,获取消息推送id,与本地缓存的近100条消息id做对比,判断是否与本地消息id有重复。如果有,则认为是重复推送,不处理本条消息,回复消息确认给智能物联平台。如果没有,则继续解析数据,调用打印机打印指令,进行打印,打印完成后回复消息确认给智能物联平台。
本申请实施例还提供了一种智能物联系统,该智能物联系统包括至少一个处理器、存储器及存储在存储器上并可被至少一个处理器执行的指令,至少一个处理器执行所述指令以实现智能物联平台系统的工作方法。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质包括计算机程序,当所述计算机程序在智能物联平台上运行时,使得所述智能物联平台执行智能物联平台系统的工作方法步骤。
以上对本申请所提供的一种智能物联平台系统的工作方法进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本申请的限制。

Claims (8)

1.一种智能物联平台系统的工作方法,其特征在于,包括:
步骤s1:当智能物联平台接收到第一业务平台发送的打印请求时,解析所述打印请求获取设备序列号,根据所述设备序列号查找对应的授权码,根据所述授权码生成获取用户信息请求,向第二业务平台发送所述获取用户信息请求;
步骤s2:当所述智能物联平台接收到用户信息时,根据所述用户信息获取用户标识,根据所述用户标识生成获取交互信息请求,向所述第二业务平台发送所述获取交互信息请求;
步骤s3:当所述智能物联平台接收到所述第二业务平台返回的交互信息,并且所述交互信息有效时,查询所述设备序列号对应的打印设备对应的用户预置的打印模板,按照所述打印模板根据所述交互信息组织打印数据,将所述打印数据发送至所述设备序列号对应的打印设备进行打印;
所述步骤s1之前还包括:
步骤s0-1:所述打印设备接收所述智能物联平台发送的配置信息数据密文,解密所述配置信息数据密文得到配置信息数据,计算生成用户名和密码,根据所述用户名、密码和所述配置信息数据生成连接请求,向所述智能物联平台发送所述连接请求;
步骤s0-2:所述智能物联平台接收所述连接请求,解析所述连接请求获取所述用户名和所述密码,根据所述用户名和所述密码验证所述打印设备是否合法,如果是,建立与所述打印设备的长连接;否则,提示所述打印设备不合法,结束。
2.如权利要求1所述的方法,其特征在于,所述步骤s1之前,还包括:
所述智能物联平台接收所述第二业务平台发送的授权码和对应的设备序列号,并将所述授权码和所述设备序列号对应保存。
3.如权利要求1所述的方法,其特征在于,所述步骤s1之前还包括:所述第二业务平台预置所述授权码,将所述授权码和用户信息对应绑定,向所述智能物联平台发送所述授权码和对应的设备序列号。
4.如权利要求1所述的方法,其特征在于,所述步骤s1之前还包括:
当所述第一业务平台接收到用户的交互请求时,生成所述打印请求,向所述智能物联平台发送所述打印请求。
5.如权利要求1所述的方法,其特征在于,当所述智能物联平台向所述第二业务平台发送所述获取用户信息请求之后,接收所述用户信息之前,所述方法还包括:
所述第二业务平台接收所述智能物联平台发送的所述获取用户信息请求,当判断所述智能物联平台合法时,解析所述获取用户信息请求得到所述授权码,根据所述授权码查找对应的用户信息,向所述智能物联平台返回所述用户信息。
6.如权利要求1所述的方法,其特征在于,所述智能物联平台向所述第二业务平台发送所述获取交互信息请求之后,接收所述第二业务平台返回的交互信息之前,还包括:
所述第二业务平台接收所述智能物联平台发送的所述获取交互信息请求,解析所述获取交互信息请求得到用户标识,根据所述用户标识获取交互信息,向所述智能物联平台返回获取到的所述交互信息。
7.一种智能物联平台系统,其特征在于,所述智能物联平台系统包括至少一个处理器、存储器及存储在所述存储器上并可被所述至少一个处理器执行的指令,所述至少一个处理器执行所述指令以实现权利要求1至6任一项所述的方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括计算机程序,当所述计算机程序在智能物联平台上运行时,使得所述智能物联平台执行如权利要求1至6任一项所述的方法步骤。
CN202111083541.1A 2021-09-16 2021-09-16 智能物联平台系统及其工作方法、计算机可读存储介质 Active CN113535102B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111083541.1A CN113535102B (zh) 2021-09-16 2021-09-16 智能物联平台系统及其工作方法、计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111083541.1A CN113535102B (zh) 2021-09-16 2021-09-16 智能物联平台系统及其工作方法、计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN113535102A CN113535102A (zh) 2021-10-22
CN113535102B true CN113535102B (zh) 2021-12-14

Family

ID=78123213

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111083541.1A Active CN113535102B (zh) 2021-09-16 2021-09-16 智能物联平台系统及其工作方法、计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN113535102B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111522516A (zh) * 2020-07-06 2020-08-11 飞天诚信科技股份有限公司 一种云播报打印数据的处理方法及系统
CN113225402A (zh) * 2021-07-08 2021-08-06 飞天诚信科技股份有限公司 一种打印系统的工作方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104125063B (zh) * 2013-04-28 2016-10-12 腾讯科技(深圳)有限公司 授权认证方法、设备及系统
CN104679460B (zh) * 2015-03-20 2018-05-29 重庆理工大学 一种云打印自助服务系统及其实现方法
CN107730775A (zh) * 2017-09-15 2018-02-23 深圳怡化电脑股份有限公司 自助交易方法、装置、系统及电子设备
CN110221786A (zh) * 2018-03-01 2019-09-10 南京信安宝信息科技有限公司 一种复印、扫描预扣费的云打印系统及方法
CN111176587A (zh) * 2018-11-13 2020-05-19 联想图像(天津)科技有限公司 一种远程打印方法及系统
CN110750222A (zh) * 2019-09-19 2020-02-04 益萃网络科技(中国)有限公司 打印方法、装置、计算机设备和存储介质
CN111651130A (zh) * 2020-05-28 2020-09-11 深圳市商汤科技有限公司 文件打印方法、装置、系统、电子设备和存储介质
CN112766922A (zh) * 2021-01-27 2021-05-07 长沙宏晟信息科技有限公司 一种基于企业管理与服务的企业智慧云平台
CN113079175A (zh) * 2021-04-14 2021-07-06 上海浦东发展银行股份有限公司 一种基于oauth2协议增强的授权系统及其方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111522516A (zh) * 2020-07-06 2020-08-11 飞天诚信科技股份有限公司 一种云播报打印数据的处理方法及系统
CN113225402A (zh) * 2021-07-08 2021-08-06 飞天诚信科技股份有限公司 一种打印系统的工作方法

Also Published As

Publication number Publication date
CN113535102A (zh) 2021-10-22

Similar Documents

Publication Publication Date Title
CN107332808B (zh) 一种云桌面认证的方法、服务器及终端
CN110086608B (zh) 用户认证方法、装置、计算机设备及计算机可读存储介质
US11539690B2 (en) Authentication system, authentication method, and application providing method
FI115098B (fi) Todentaminen dataviestinnässä
US11811952B2 (en) Authentication system and working method thereof
CN111130798B (zh) 一种请求鉴权方法及相关设备
CN111131416A (zh) 业务服务的提供方法和装置、存储介质、电子装置
CN111148094B (zh) 5g用户终端的注册方法、用户终端设备及介质
CN109688131A (zh) 一种数据传输方法、装置和系统
CN110138558B (zh) 会话密钥的传输方法、设备及计算机可读存储介质
WO2018145593A1 (zh) 一种认证设备与网站的集成方法、系统及装置
CN114390524B (zh) 一键登录业务的实现方法和装置
CN109451504B (zh) 物联网模组鉴权方法及系统
CN103368918A (zh) 一种动态口令认证方法、装置及系统
WO2016173174A1 (zh) 锁网数据升级方法和装置
CN111148213B (zh) 5g用户终端的注册方法、用户终端设备及介质
CN112995090B (zh) 终端应用的认证方法、装置、系统和计算机可读存储介质
CN113535102B (zh) 智能物联平台系统及其工作方法、计算机可读存储介质
CN112383401A (zh) 一种提供身份鉴别服务的用户名生成方法及系统
CN109246062A (zh) 一种基于浏览器插件的认证方法及系统
CN107623679B (zh) 一种数据标记化处理方法、装置及存储介质
CN114501591B (zh) 智能设备入网方法及其装置、计算机可读存储介质
CN114492489A (zh) 一种基于动态数据的nfc标签验证系统
CN114244505A (zh) 一种基于安全芯片的安全通信方法
CN108123957B (zh) 一种登录虚拟专用网络服务器的多方式认证的方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant