本發(fā)明屬于光支付技術(shù)領(lǐng)域,特別涉及一種帶可見光與條碼雙向認(rèn)證的離線支付方法。
背景技術(shù):
可見光通信(Visible Light Communication,簡稱VLC)技術(shù)。VLC技術(shù)就是利用LED可以發(fā)出高頻閃爍且人眼無法感知到的燈光閃爍的這一特點,在數(shù)據(jù)發(fā)送端用LED的高頻閃爍來攜帶信號,在接收端用響應(yīng)時間同樣很快的感光元件進(jìn)行信號的采集,從而實現(xiàn)無線通信的方法。
傳統(tǒng)的非現(xiàn)金交易手段都是在線交易,原有的磁卡系統(tǒng)就是典型的在線交易系統(tǒng)。離線支付是一種當(dāng)網(wǎng)絡(luò)、GPRS、3G、4G等通訊中斷時,所進(jìn)行的交易支付手段,RFID、NFC是目前比較常見的離線支付方式。
“掃碼”是時下很流行的信息獲取方式,“掃碼支付”則是在“掃碼”技術(shù)和微信、支付寶等技術(shù)的基礎(chǔ)上發(fā)展起來的線上支付方式手段。然而,屬于“掃碼支付”的支付手段,仍然是一種離不開網(wǎng)絡(luò)的在線支付方式,這樣的方式還是不能如同離線支付一樣,解決網(wǎng)絡(luò)通訊中斷無法支付的問題。
本發(fā)明得到VLC技術(shù)、“掃碼支付”等方式的啟發(fā),借助智能手機、平板電腦這類有LED閃光燈和攝像頭的智能設(shè)備,提出了一個離線支付的方法。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的在于提供一種帶可見光與條碼雙向認(rèn)證的離線支付方法。
具體步驟為:
(1)建立一套帶可見光與條碼雙向認(rèn)證的離線消費裝置,包括:電子錢包、充值消費機和服務(wù)器。
電子錢包,包括:可見光發(fā)射模塊、條碼掃描模塊、控制模塊、錢包模塊、輸入模塊、顯示模塊和數(shù)據(jù)接口;可見光發(fā)射模塊,用于根據(jù)控制模塊輸入的信息,生成并發(fā)送可見光信號;條碼掃描模塊,用于掃描識別條碼,并將識別的結(jié)果輸出給控制模塊;控制模塊,用于:1、將待發(fā)送的信息進(jìn)行處理,生成數(shù)據(jù)包,并輸出給可見光發(fā)射模塊,驅(qū)動可見光發(fā)射模塊發(fā)送可見光信號;2、接收條碼掃描模塊的掃描結(jié)果輸出,并對掃描結(jié)果進(jìn)行驗證;3、與錢包模塊進(jìn)行消費、充值、余額查詢、操作日志信息的讀寫操作;4、根據(jù)收到的信息和生成的支付信息,生成需要通過可見光發(fā)射模塊的信息;5、能夠通過數(shù)據(jù)接口與服務(wù)器進(jìn)行數(shù)據(jù)交互;錢包模塊,用于保存包括:用戶賬號信息、錢包余額、消費權(quán)限、查詢密碼、支付密碼、操作日志、生產(chǎn)發(fā)行機構(gòu)在內(nèi)的信息;并可以驗證輸入的密碼是否與錢包密碼模塊內(nèi)保存的密碼一致;該模塊能夠使用包括手機sim卡、NFC在內(nèi)的介質(zhì)作為錢包模塊的載體;輸入模塊,用于向控制模塊輸入包括支付金額、查詢密碼、支付密碼、操作指令在內(nèi)的信息;顯示模塊,用于顯示支付金額、密碼輸入界面、操作指令以及提示信息;數(shù)據(jù)接口,用于提供電子錢包的聯(lián)網(wǎng)功能,提供與服務(wù)器連接并進(jìn)行數(shù)據(jù)交換、數(shù)據(jù)維護和升級的功能。
充值消費機,包括:可見光接收模塊、條碼顯示模塊、讀寫控制模塊、收銀箱模塊、鍵盤模塊、顯示器和通信模塊;可見光接收模塊,用于接收可見光信號,并處理還原成對應(yīng)的數(shù)字信號,還原成數(shù)據(jù)包;條碼顯示模塊,用于根據(jù)讀寫控制模塊的輸入信息,生成并顯示出條碼;讀寫控制模塊,用于:1、接收可見光接收模塊的輸出,并予以認(rèn)證;2、將待發(fā)送的信息進(jìn)行處理,輸出給條碼顯示模塊;3、與收銀箱模塊進(jìn)行消費、充值、余額查詢、操作日志信息的讀寫操作;4、提供數(shù)據(jù)接口,通過通信模塊與服務(wù)器進(jìn)行信息的上傳和下載;收銀箱模塊,用于保存包括:操作日志、收款消費權(quán)限、黑名單、收銀余額、操作密碼、有效期、生產(chǎn)發(fā)行機構(gòu)在內(nèi)的信息;鍵盤模塊,用于向讀寫控制模塊輸入交易金額、交易密碼、操作指令;顯示器,用于顯示交易金額、密碼輸入界面、操作指令以及提示信息;通信模塊,用于通過有線或者無線的方式,連接上位機或者接入網(wǎng)絡(luò),從而與服務(wù)器相連;服務(wù)器,用于:1、與充值消費機通過通信模塊建立上傳、下載的數(shù)據(jù)連接;2、與電子錢包通過數(shù)據(jù)接口建立上傳、下載的數(shù)據(jù)連接;3、提供本離線支付方法的后臺服務(wù)支持;4、提供整個離線支付裝置與金融系統(tǒng)的資金流動的接口;5、為充值消費機、電子錢包發(fā)放或取消授權(quán),提供包括:密鑰更新、算法更新和升級、使用權(quán)限調(diào)整、有效期調(diào)整、電子錢包充值、充值消費機繳款、電子錢包和充值消費機公開信息查詢在內(nèi)的服務(wù);6、保存包括:授權(quán)用戶清單、黑名單、操作日志匯總、充值消費機清單在內(nèi)的信息。
授權(quán)用戶清單,用于保存包括:已經(jīng)授權(quán)可以進(jìn)行離線支付的電子錢包的身份標(biāo)識、使用權(quán)限、有效期、電子錢包持有者的身份信息;黑名單,用于保存授權(quán)用戶清單中,因欠費、掛失、有不正當(dāng)使用記錄而被拒絕支付交易的那部分電子錢包的身份標(biāo)識信息;支付接口,用于提供整個離線支付裝置與金融系統(tǒng)的資金流動的接口;操作日志匯總,用于保存包括所有充值消費機、電子錢包的查詢、充值、消費的操作的時間、支付金額、支付過程數(shù)據(jù)參數(shù)在內(nèi)的信息;充值消費機清單,用于保存包括:已經(jīng)授權(quán)可以進(jìn)行離線支付交易的充值消費機的身份標(biāo)識、使用權(quán)限、有效期、充值消費機持有者的身份信息。
服務(wù)器用于給給充值消費機發(fā)放權(quán)限,使其具備接受裝置內(nèi)的電子錢包進(jìn)行支付的功能;服務(wù)器用于給電子錢包發(fā)放權(quán)限,使其具備向裝置內(nèi)的充值消費機進(jìn)行支付的功能;同時由服務(wù)器給用戶發(fā)放一個授權(quán),授權(quán)方式是發(fā)放一個授權(quán)實體硬件設(shè)備或者是為已有設(shè)備的用戶提供一個授權(quán)號;并為設(shè)備充值,寫入電子錢包身份標(biāo)識、使用權(quán)限、有效期、電子錢包的支付密碼和查詢密碼、電子錢包持有者的身份信息。
(2)支付方法由持有身份標(biāo)識為CID的充值消費機的收款方和持有身份標(biāo)識為QID的電子錢包的付款方共同完成,一個由收款方發(fā)起的支付流程如下:
BF1,由收款方發(fā)出收款請求,處理流程包含如下步驟:
BF1.1,收款方在充值消費機上輸入待接收的收款金額JR1。
BF1.2,讀寫控制模塊根據(jù)BF1.1輸入的收款金額JR1,生成一個含有收款金額JR1和充值消費機的身份標(biāo)識CID1的收款請求SKQQ1,并將收款請求SKQQ1輸出到條碼顯示模塊。
BF1.3,條碼顯示模塊根據(jù)收款請求SKQQ1生成一個條碼并顯示出來,并開始等待接收付款方的響應(yīng);如果在一個設(shè)定的等待時間內(nèi)未收到來自付款方的響應(yīng),則刷新條碼顯示模塊,等待下一個的收款請求的輸入。
BF2,付款方接受來自收款方的收款請求,并根據(jù)收款請求做出付款響應(yīng),處理流程包含如下步驟:
BF2.1,電子錢包用條碼掃描模塊掃描識別收款方的條碼顯示模塊,得到收款請求SKQQ2。
BF2.2,控制模塊根據(jù)收款請求SKQQ2,得到收款金額JR2和充值消費機的身份標(biāo)識CID2,并將JR2、CID2和付款提示信息顯示在顯示模塊上,并等待付款方確認(rèn);如果付款方同意支付,就通過輸入模塊輸入同意支付的指令,并進(jìn)入到BF2.3;如果付款方輸入不同意支付的指令或者在一定設(shè)定的時間內(nèi)不予確認(rèn)是否同意,則退出支付流程。
BF2.3,電子錢包得到同意支付的指令后,在顯示模塊上顯示輸入密碼的提示。
BF2.4,用戶根據(jù)BF2.3中的密碼輸入的提示,由輸入模塊輸入支付密碼。
BF2.5,控制模塊將輸入模塊輸入的支付密碼輸入到錢包模塊,由錢包模塊對支付密碼進(jìn)行驗證,當(dāng)驗證無誤時,進(jìn)入BF2.6;當(dāng)驗證錯誤時,在顯示模塊上顯示輸入密碼錯誤的提示,并退出支付流程。
BF2.6,控制模塊往錢包模塊寫入查詢錢包余額的指令,檢查錢包余額是否足夠支付。
BF2.7,如果錢包余額足夠,則由錢包模塊返回一個余額足夠的信號給控制模塊,并進(jìn)入BF2.8;如果錢包余額不足,則由錢包模塊返回一個余額不足的信號給控制模塊,并進(jìn)入BF2.9。
BF2.8,控制模塊生成一個含有電子錢包身份標(biāo)識QID2、支付同意ZFTY2、支付金額FKJR2和收款請求SKQQ2的數(shù)據(jù)包,并將該數(shù)據(jù)包輸出到可見光發(fā)射模塊,由可見光發(fā)射模塊將數(shù)據(jù)包以可見光信號的形式發(fā)送出去,并開始等待收款方的響應(yīng);如果在一個設(shè)定的等待時間內(nèi)未收到來自收款方的響應(yīng),則結(jié)束操作,退出支付流程。
BF2.9,控制模塊生成一個含有電子錢包身份標(biāo)識QID2、支付余額不足ZFBZ2和收款請求SKQQ2的數(shù)據(jù)包,并將該數(shù)據(jù)包輸出到可見光發(fā)射模塊,由可見光發(fā)射模塊將數(shù)據(jù)包以可見光信號的形式發(fā)送出去,控制模塊并向顯示模塊發(fā)送一個余額不足的提示信息,通過顯示模塊告知付款方的用戶,同時結(jié)束操作,退出支付流程。
BF3,收款方根據(jù)付款方發(fā)送的付款響應(yīng),發(fā)出做出收款受理,處理流程包含如下步驟:
BF3.1,由充值消費機的可見光接收模塊接收可見光信號,并轉(zhuǎn)換成數(shù)據(jù)包,再輸出給讀寫控制模塊。
BF3.2,讀寫控制模塊從數(shù)據(jù)包中提取出電子錢包身份標(biāo)識QID3、收款請求SKQQ3、支付金額FKJR3、支付同意ZFTY3或者余額不足ZFBZ3;如果為余額不足的數(shù)據(jù)包,則由讀寫控制模塊向顯示器發(fā)送一個余額不足的提示信息,通過顯示器告知收款方用戶,同時結(jié)束操作,退出支付流程;如果為支付同意的數(shù)據(jù)包,則進(jìn)行如下三個驗證:
1)驗證電子錢包身份標(biāo)識QID3是否并未列入黑名單中,如果電子錢包身份標(biāo)識QID3在黑名單中,為驗證不通過;否則為驗證通過。
2)收到數(shù)據(jù)包里的收款請求SKQQ3與由收款方發(fā)送的SKQQ1是否一致,如果兩者一致,為驗證通過;否則為驗證不通過。
3)付款響應(yīng)的數(shù)據(jù)包里的支付金額FKJR3是否與由收款方發(fā)送的收款金額JR1一致,如果兩者一致,為驗證通過;否則為驗證不通過。
以上三個都驗證通過時,進(jìn)入BF3.3,否則只要有至少一個驗證不通過的,就由讀寫控制模塊向顯示器發(fā)送一個驗證不通過的提示信息,通過顯示器告知收款方的用戶,同時結(jié)束操作,退出支付流程。
BF3.3,讀寫控制模塊生成一個包括了收款金額JR1、充值消費機的身份標(biāo)識CID1、電子錢包身份標(biāo)識QID3、支付同意ZFTY3、收款碼SKM3的受理信息SLX,并將受理信息SLX3輸出到條碼顯示模塊。
BF3.4,條碼顯示模塊根據(jù)受理信息SLX3生成一個條碼并顯示出來,并開始等待接收付款方的響應(yīng);如果在一個設(shè)定的等待時間內(nèi)未收到來自付款方的響應(yīng),則刷新條碼顯示模塊,結(jié)束本次支付的流程操作,退出支付流程。
BF4,支付方接收來自收款方的收款受理信息,并據(jù)此做出付款答復(fù),付款方的處理流程包括:
BF4.1,電子錢包用條碼掃描模塊掃描識別收款方的條碼顯示模塊,得到受理信息SLX4。
BF4.2,控制模塊根據(jù)受理信息SLX4,得到收款金額JR4、充值消費機的身份標(biāo)識CID4、電子錢包身份標(biāo)識QID4、支付同意ZFTY4、收款碼SKM4,并進(jìn)行如下驗證:
1)收款金額JR2與收款金額JR4是否一致。
2)充值消費機的身份標(biāo)識CID2與CID4是否一致。
3)電子錢包身份標(biāo)識QID2與QID4是否一致。
4)支付同意ZFTY2與支付同意ZFTY4是否一致。
如果以上4個對比都分別一致,為驗證通過,進(jìn)入BF4.3;否則有一個對比不一致為驗證不通過,就由控制模塊向顯示模塊發(fā)送一個驗證不通過的提示信息,通過顯示模塊告知付款方,同時結(jié)束操作,退出支付流程。
BF4.3,控制模塊向錢包模塊發(fā)送一個包含有收款金額JR4、充值消費機的身份標(biāo)識CID4的付款指令。
BF4.4,錢包模塊更新錢包余額,生成一個支付碼ZFM4,將本次付款操作的時間、收款金額JR4、充值消費機的身份標(biāo)識CID4、支付碼ZFM4、收款碼SKM4寫入錢包模塊,作為操作日志保存,并將付款金額JR4、支付碼ZFM4輸出給控制模塊。
BF4.5,由控制模塊生成一個包含有電子錢包身份標(biāo)識QID4、付款金額JR4、支付碼ZFM4、充值消費機的身份標(biāo)識CID4的付款答復(fù)的數(shù)據(jù)包,并將該數(shù)據(jù)包輸出到可見光發(fā)射模塊,由可見光發(fā)射模塊將數(shù)據(jù)包以可見光信號的形式發(fā)送出去。
BF5,收款方根據(jù)付款方發(fā)送的付款答復(fù),做出收款確認(rèn),處理流程包含如下步驟:
BF5.1,由充值消費機的可見光接收模塊接收可見光信號,并轉(zhuǎn)換成數(shù)據(jù)包,再輸出給讀寫控制模塊。
BF5.2,讀寫控制模塊從數(shù)據(jù)包中提取出電子錢包身份標(biāo)識QID5、收款金額JR5、支付碼ZFM5、充值消費機的身份標(biāo)識CID5、收款碼SKM5,并進(jìn)行如下驗證:
1)收款金額JR1與收款金額JR5是否一致。
2)充值消費機的身份標(biāo)識CID1與CID5是否一致。
3)電子錢包身份標(biāo)識QID3與QID5是否一致。
4)收款碼SKM3與SKM5是否一致。
如果以上4個對比都分別一致,為驗證通過,進(jìn)入BF5.3;否則有一個對比不一致為驗證不通過,否則由讀寫控制模塊向顯示器發(fā)送一個驗證不通過的提示信息,通過顯示器告知收款方,同時結(jié)束操作,退出支付流程。
BF5.3,將該操作的時間、電子錢包身份標(biāo)識QID3、收款金額JR5、支付碼ZFM5、收款碼SKM5寫入收款箱模塊,生成操作日志,并更新收款箱模塊的余額信息,并通過顯示器顯示付款成功的提示信息。
在支付流程中,從電子錢包接收充值消費機發(fā)送的數(shù)據(jù),以及從充值消費機接收電子錢包發(fā)送的數(shù)據(jù), 都可能在收發(fā)過程中存在無法識別的可能,所以在支付流程中,對于無法識別的數(shù)據(jù),以及因為無法接收數(shù)據(jù)而導(dǎo)致無法識別的情況,裝置都會在一個設(shè)定的等待時間超時后,單方面結(jié)束支付流程。
在支付流程中,從電子錢包向充值消費機發(fā)送的數(shù)據(jù),以及從充值消費機向電子錢包發(fā)送的數(shù)據(jù), 可能在收發(fā)過程中存在數(shù)據(jù)的丟失、被篡改、偽造的可能性,因此在支付流程中,對每次收到的關(guān)鍵數(shù)據(jù),都假定當(dāng)前收到的數(shù)據(jù)與支付流程的前面的步驟生成的或者接收到的數(shù)據(jù)不一樣,需要對比驗證,由此保證收發(fā)數(shù)據(jù)的真實、完整。
本發(fā)明是利用可見光通信技術(shù)和條碼掃描識別技術(shù)兩者相結(jié)合,而提出的一種離線支付方法,解決了線上支付無法脫離網(wǎng)絡(luò)的弊端,實現(xiàn)了一種新穎的脫機離線支付手段。本發(fā)明采用現(xiàn)在人們幾乎人手一臺甚至人手多臺的智能手機、平板電腦等設(shè)備,作為電子錢包的載體,避免了隨身攜帶各種支付工具的麻煩,讓人們出行更加方便快捷,同時讓交易環(huán)節(jié)不在受限于網(wǎng)絡(luò),實現(xiàn)了基于智能手機、平板電腦等設(shè)備的“一機通”新型交易模式。
附圖說明
圖1是本發(fā)明方法的結(jié)構(gòu)示意圖。
圖2是本發(fā)明的實施例中裝置的結(jié)構(gòu)圖。
圖中標(biāo)記:1-電子錢包;2-充值消費機;3-服務(wù)器;11-控制模塊;12-輸入模塊;13-顯示模塊;14-數(shù)據(jù)接口;15-條碼掃描模塊;16-錢包模塊;17-可見光發(fā)射模塊;21-讀寫控制模塊;22-條碼顯示模塊;23-收銀箱模塊;24-可見光接收模塊;25-鍵盤模塊;26-顯示器;27-通信模塊。
具體實施方式
實施例:
本發(fā)明的一種帶可見光與條碼雙向認(rèn)證的離線支付方法,具體實施方式如下:
建立一套帶可見光與條碼雙向認(rèn)證的離線消費裝置,包括:電子錢包1、充值消費機2和服務(wù)器3。
電子錢包1,包括:可見光發(fā)射模塊17、條碼掃描模塊15、控制模塊11、錢包模塊16、輸入模塊12、顯示模塊13和數(shù)據(jù)接口14。
可見光發(fā)射模塊17,用于根據(jù)控制模塊11輸入的信息,生成并發(fā)送可見光信號。
條碼掃描模塊15,用于掃描識別條碼,并將識別的結(jié)果輸出給控制模塊11。
控制模塊11,用于:1、將待發(fā)送的信息進(jìn)行處理,生成數(shù)據(jù)包,并輸出給可見光發(fā)射模塊17,驅(qū)動可見光發(fā)射模塊17發(fā)送可見光信號;2、接收條碼掃描模塊15的掃描結(jié)果輸出,并對掃描結(jié)果進(jìn)行驗證;3、與錢包模塊16進(jìn)行消費、充值、余額查詢、操作日志信息的讀寫操作;4、根據(jù)收到的信息和生成的支付信息,生成需要通過可見光發(fā)射模塊17發(fā)送的信息;5、能夠通過數(shù)據(jù)接口14與服務(wù)器3進(jìn)行數(shù)據(jù)交互。
錢包模塊16,用于保存包括:用戶賬號信息、錢包余額、消費權(quán)限、查詢密碼、支付密碼、操作日志、生產(chǎn)發(fā)行機構(gòu)在內(nèi)的信息;并可以驗證輸入的密碼是否與錢包密碼模塊內(nèi)保存的密碼一致;該模塊使用手機sim卡實現(xiàn)。
輸入模塊12,用于向控制模塊11輸入支付金額、查詢密碼、支付密碼、操作指令。
顯示模塊13,用于顯示支付金額、密碼輸入界面、操作指令以及提示信息。
數(shù)據(jù)接口14,用于提供電子錢包1的聯(lián)網(wǎng)功能,提供與服務(wù)器3連接,并進(jìn)行數(shù)據(jù)交換、數(shù)據(jù)維護和升級的功能。
電子錢包1采用配置了閃光燈和攝像頭的智能手機實現(xiàn)。
充值消費機2,包括:可見光接收模塊24、條碼顯示模塊22、讀寫控制模塊21、收銀箱模塊23、鍵盤模塊25、顯示器26、通信模塊27。
可見光接收模塊24,用于接收可見光信號,并處理還原成對應(yīng)的數(shù)字信號,還原成數(shù)據(jù)包。
條碼顯示模塊22,用于根據(jù)讀寫控制模塊21的輸入信息,生成并顯示出條碼。
讀寫控制模塊21,用于:1、接收可見光接收模塊24的輸出,并予以認(rèn)證;2、將待發(fā)送的信息進(jìn)行處理,輸出給條碼顯示模塊22;3、與收銀箱模塊23進(jìn)行消費、充值、余額查詢、操作日志信息的讀寫操作;4、提供通信接口,通過通信模塊27與服務(wù)器3進(jìn)行信息的上傳和下載。
收銀箱模塊23,用于保存包括:操作日志、收款消費權(quán)限、黑名單、收銀余額、操作密碼、有效期、生產(chǎn)發(fā)行機構(gòu)在內(nèi)的信息。
鍵盤模塊25,用于向讀寫控制模塊21輸入交易金額、交易密碼、操作指令。
顯示器26,用于顯示交易金額、密碼輸入界面、操作指令以及提示信息。
通信模塊27,用于通過有線或者無線的方式,連接上位機或者接入網(wǎng)絡(luò),從而與服務(wù)器相連。
服務(wù)器3,用于:1、與充值消費機2通過通信模塊27建立上傳、下載的數(shù)據(jù)連接;2、與電子錢包1通過數(shù)據(jù)接口14建立上傳、下載的數(shù)據(jù)連接;3、提供本離線支付方法的后臺服務(wù)支持;4、提供整個離線支付裝置與金融系統(tǒng)的資金流動的接口;5、為充值消費機2、電子錢包1發(fā)放或取消授權(quán),提供包括:密鑰更新、算法更新和升級、使用權(quán)限調(diào)整、有效期調(diào)整、電子錢包充值、充值消費機繳款、電子錢包和充值消費機公開信息查詢在內(nèi)的服務(wù);6、保存包括:授權(quán)用戶清單、黑名單、操作日志、充值消費機清單在內(nèi)的信息。
權(quán)用戶清單,用于保存包括:已經(jīng)授權(quán)可以進(jìn)行離線支付的電子錢包的身份標(biāo)識、使用權(quán)限、有效期、電子錢包持有者的身份信息。
黑名單,用于保存授權(quán)用戶清單中,因欠費、掛失、有不正當(dāng)使用記錄而被拒絕支付交易的那部分電子錢包的身份標(biāo)識信息。
支付接口,用于提供整個離線支付裝置與金融系統(tǒng)的資金流動的接口。
操作日志匯總,用于保存包括所有充值消費機、電子錢包的查詢、充值、消費的操作的時間、支付金額、支付過程數(shù)據(jù)參數(shù)在內(nèi)的信息。
充值消費機清單,用于保存已經(jīng)授權(quán)可以進(jìn)行離線支付交易的充值消費機終端的信息、使用權(quán)限、有效期。
電子錢包的發(fā)行過程包括:由服務(wù)器給用戶發(fā)放一個授權(quán),授權(quán)方式可以是發(fā)放一個授權(quán)實體硬件設(shè)備,也可以是為用戶已有的配備本發(fā)明的設(shè)備提供一個授權(quán)號;并為設(shè)備充值,寫入電子錢包身份標(biāo)識、使用權(quán)限、有效期、電子錢包的支付密碼和查詢密碼、電子錢包持有者的身份信息。
一個支付流程實施例如下:
支付由一個授權(quán)的充值消費機2的收款方和一個授權(quán)的電子錢包1的付款方共同完成,支付流程如下:
BF1,由收款方發(fā)出收款請求,處理流程包含如下步驟:
BF1.1,收款方在充值消費機2上輸入待接收的收款金額JR1。
BF1.2,讀寫控制模塊21根據(jù)BF1.1輸入的收款金額JR1,生成一個含有收款金額JR1和充值消費機2的身份標(biāo)識CID1的收款請求SKQQ1,并將收款請求SKQQ1輸出到條碼顯示模塊22。
BF1.3,條碼顯示模塊22根據(jù)收款請求SKQQ1生成一個條碼并顯示出來,并開始等待接收付款方的響應(yīng);如果在一個設(shè)定的等待時間內(nèi)未收到來自付款方的響應(yīng),則刷新條碼顯示模塊22,等待下一個的收款請求的輸入。
BF2,付款方接受來自收款方的收款請求,并根據(jù)收款請求做出付款響應(yīng),處理流程包含如下步驟:
BF2.1,電子錢包1用條碼掃描模塊13掃描識別收款方的條碼顯示模塊22,得到收款請求SKQQ2。
BF2.2,控制模塊11根據(jù)收款請求SKQQ2,得到收款金額JR2和充值消費機21的身份標(biāo)識CID2,并將JR2、CID2和付款提示信息顯示在顯示模塊12上,并等待付款方確認(rèn);如果付款方同意支付,就通過輸入模塊12輸入同意支付的指令,并進(jìn)入到BF2.3;如果付款方輸入不同意支付的指令或者在一定設(shè)定的時間內(nèi)不予確認(rèn)是否同意,則退出支付流程。
BF2.3,電子錢包1得到同意支付的指令后,在顯示模塊13上顯示輸入密碼的提示。
BF2.4,用戶根據(jù)BF2.3中的密碼輸入的提示,由輸入模塊12輸入支付密碼。
BF2.5,控制模塊11將輸入模塊12輸入的支付密碼輸入到錢包模塊16,由錢包模塊16對支付密碼進(jìn)行驗證,當(dāng)驗證無誤時,進(jìn)入BF2.6;當(dāng)驗證錯誤時,在顯示模塊13上顯示輸入密碼錯誤的提示,并退出支付流程。
BF2.6,控制模塊11往錢包模塊1寫入查詢錢包余額的指令,檢查錢包余額是否足夠支付。
BF2.7,如果錢包余額足夠,則由錢包模塊16返回一個余額足夠的信號給控制模塊11,并進(jìn)入BF2.8;如果錢包余額不足,則由錢包模塊16返回一個余額不足的信號給控制模塊11,并進(jìn)入BF2.9。
BF2.8,控制模塊11生成一個含有電子錢包1的身份標(biāo)識QID2、支付同意ZFTY2、支付金額FKJR2和收款請求SKQQ2的數(shù)據(jù)包,并將該數(shù)據(jù)包輸出到可見光發(fā)射模塊17,由可見光發(fā)射模塊17將數(shù)據(jù)包以可見光信號的形式發(fā)送出去,并開始等待收款方的響應(yīng);如果在一個設(shè)定的等待時間內(nèi)未收到來自收款方的響應(yīng),則結(jié)束操作,退出支付流程。
BF2.9,控制模塊11生成一個含有電子錢包1的身份標(biāo)識QID2、支付余額不足ZFBZ2和收款請求SKQQ2的數(shù)據(jù)包,并將該數(shù)據(jù)包輸出到可見光發(fā)射模塊17,由可見光發(fā)射模塊17將數(shù)據(jù)包以可見光信號的形式發(fā)送出去,控制模塊11并向顯示模塊13發(fā)送一個余額不足的提示信息,通過顯示模塊13告知付款方的用戶,同時結(jié)束操作,退出支付流程。
BF3,收款方根據(jù)付款方發(fā)送的付款響應(yīng),發(fā)出做出收款受理,處理流程包含如下步驟:
BF3.1,由充值消費機2的可見光接收模塊24接收可見光信號,并轉(zhuǎn)換成數(shù)據(jù)包,再輸出給讀寫控制模塊21。
BF3.2,讀寫控制模塊21從數(shù)據(jù)包中提取出電子錢包1的身份標(biāo)識QID3、收款請求SKQQ3、支付金額FKJR3、支付同意ZFTY3或者余額不足ZFBZ3;如果為余額不足的數(shù)據(jù)包,則由讀寫控制模塊21向顯示器26發(fā)送一個余額不足的提示信息,通過顯示器26告知收款方用戶,同時結(jié)束操作,退出支付流程;如果為支付同意的數(shù)據(jù)包,則進(jìn)行如下三個驗證:
1)驗證電子錢包1的身份標(biāo)識QID3是否并未列入黑名單中,如果電子錢包1的身份標(biāo)識QID3在黑名單中,為驗證不通過;否則為驗證通過。
2)收到數(shù)據(jù)包里的收款請求SKQQ3與由收款方發(fā)送的SKQQ1是否一致,如果兩者一致,為驗證通過;否則為驗證不通過。
3)付款響應(yīng)的數(shù)據(jù)包里的支付金額FKJR3是否與由收款方發(fā)送的收款金額JR1一致,如果兩者一致,為驗證通過;否則為驗證不通過。
以上三個都驗證通過時,進(jìn)入BF3.3,否則只要有至少一個驗證不通過的,就由讀寫控制模塊21向顯示器26發(fā)送一個驗證不通過的提示信息,通過顯示器26告知收款方的用戶,同時結(jié)束操作,退出支付流程。
BF3.3,讀寫控制模塊21生成一個包括了收款金額JR1、充值消費機2的身份標(biāo)識CID1、電子錢包1的身份標(biāo)識QID3、支付同意ZFTY3、收款碼SKM3的受理信息SLX,并將受理信息SLX3輸出到條碼顯示模塊22。
BF3.4,條碼顯示模塊22根據(jù)受理信息SLX3生成一個條碼并顯示出來,并開始等待接收付款方的響應(yīng);如果在一個設(shè)定的等待時間內(nèi)未收到來自付款方的響應(yīng),則刷新條碼顯示模塊22,結(jié)束本次支付的流程操作,退出支付流程。
BF4,支付方接收來自收款方的收款受理信息,并據(jù)此做出付款答復(fù),付款方的處理流程包括:
BF4.1,電子錢包1用條碼掃描模塊15掃描識別收款方的條碼顯示模塊22,得到受理信息SLX4。
BF4.2,控制模塊11根據(jù)受理信息SLX4,得到收款金額JR4、充值消費機2的身份標(biāo)識CID4、電子錢包1的身份標(biāo)識QID4、支付同意ZFTY4、收款碼SKM4,并進(jìn)行如下驗證:
1)收款金額JR2與收款金額JR4是否一致。
2)充值消費機2的身份標(biāo)識CID2與CID4是否一致。
3)電子錢包1的身份標(biāo)識QID2與QID4是否一致。
4)支付同意ZFTY2與支付同意ZFTY4是否一致。
如果以上4個對比都分別一致,為驗證通過,進(jìn)入BF4.3;否則有一個對比不一致為驗證不通過,否則由控制模塊11向顯示模塊13發(fā)送一個驗證不通過的提示信息,通過顯示模塊13告知付款方,同時結(jié)束操作,退出支付流程。
BF4.4,控制模塊11向錢包模塊16發(fā)送一個包含有收款金額JR4、充值消費機2的身份標(biāo)識CID4的付款指令。
BF4.5,錢包模塊16更新錢包余額,生成一個支付碼ZFM4,將本次付款操作的時間、收款金額JR4、充值消費機2的身份標(biāo)識CID4、支付碼ZFM4、收款碼SKM4寫入錢包模塊16,作為操作日志保存,并將付款金額JR4、支付碼ZFM4輸出給控制模塊11。
BF4.6,由控制模塊11生成一個包含有電子錢包1的身份標(biāo)識QID4、付款金額JR4、支付碼ZFM4、充值消費機2的身份標(biāo)識CID4的付款答復(fù)的數(shù)據(jù)包,并將該數(shù)據(jù)包輸出到可見光發(fā)射模塊17,由可見光發(fā)射模塊17將數(shù)據(jù)包以可見光信號的形式發(fā)送出去。
BF5,收款方根據(jù)付款方發(fā)送的付款答復(fù),做出收款確認(rèn),處理流程包含如下步驟:
BF5.1,由充值消費機2的可見光接收模塊24接收可見光信號,并轉(zhuǎn)換成數(shù)據(jù)包,再輸出給讀寫控制模塊21。
BF5.2,讀寫控制模塊21從數(shù)據(jù)包中提取出電子錢包1的身份標(biāo)識QID5、收款金額JR5、支付碼ZFM5、充值消費機的身份標(biāo)識CID5、收款碼SKM5,并進(jìn)行如下驗證:
1)收款金額JR1與收款金額JR5是否一致。
2)充值消費機2的身份標(biāo)識CID1與CID5是否一致。
3)電子錢包1的身份標(biāo)識QID3與QID5是否一致。
4)收款碼SKM3與SKM5是否一致。
如果以上4個對比都分別一致,為驗證通過,進(jìn)入BF5.3;否則有一個對比不一致為驗證不通過,否則由讀寫控制模塊21向顯示器26發(fā)送一個驗證不通過的提示信息,通過顯示器26告知收款方,同時結(jié)束操作,退出支付流程。
BF5.3,將該操作的時間、電子錢包1的身份標(biāo)識QID3、收款金額JR5、支付碼ZFM5、收款碼SKM5寫入收款箱模塊23,生成操作日志,并更新收款箱模塊23的余額信息,并通過顯示器26顯示付款成功的提示信息。