用于移動(dòng)支付的電子收據(jù)設(shè)計(jì)與實(shí)現(xiàn)
1.1 電子支付與電子收據(jù)
本文引用地址:http://butianyuan.cn/article/201612/326292.htm隨著互聯(lián)網(wǎng)以及移動(dòng)終端技術(shù)的發(fā)展,手機(jī)支付技術(shù)將會(huì)越來越流行。
手機(jī)支付是指允許移動(dòng)用戶通過手機(jī)對(duì)所消費(fèi)的商品或者服務(wù)進(jìn)行賬務(wù)支付的一種服務(wù)方式。移動(dòng)支付產(chǎn)業(yè)屬于新興產(chǎn)業(yè),有非常廣闊的發(fā)展前景。而一旦提起移動(dòng)支付,電子收據(jù)就勢(shì)在必行。目前在北美,電子收據(jù)的研發(fā)已經(jīng)成熟,并走向了市場(chǎng)。
與紙質(zhì)收據(jù)相比,電子收據(jù)具有不可比擬的優(yōu)勢(shì)。紙質(zhì)收據(jù)不但浪費(fèi)資源而且制造“垃圾”,而且非常礙事,不利于保存,容易遺失或者損壞。而電子收據(jù)保存簡單,只需要存儲(chǔ)在手機(jī)的存儲(chǔ)器中,也可以導(dǎo)出存儲(chǔ)到別的存儲(chǔ)介質(zhì)中保存。使用電子收據(jù)也將非常簡單,一切都是電子化的過程,用戶只需要提供自身的帳號(hào)信息就能夠使用票據(jù)。
一旦手機(jī)支付流行起來,就像谷歌錢包一樣,電子收據(jù)將會(huì)形成一種模式。為了保證電子收據(jù)服務(wù)的可靠性和可用性,電子收據(jù)需要使用一種簽名算法。這種簽名算法需要快速、安全。電子簽名必須具有不可抵賴性和不可仿冒性。
1.2 電子收據(jù)
本項(xiàng)目所實(shí)現(xiàn)的技術(shù)是面向移動(dòng)支付服務(wù)中的一個(gè)必要環(huán)節(jié):電子收據(jù)憑證。電子收據(jù)的核心部分是數(shù)字簽名技術(shù)。使用數(shù)字簽名技術(shù)需要三方的參與:可信第三方(仲裁)、商家以及消費(fèi)者。所有使用電子收據(jù)服務(wù)的商家事先公布必要的簽名信息(公鑰)。消費(fèi)者消費(fèi)之后從商家獲得電子收據(jù),并從可靠的第三方獲得商家的公鑰,從而驗(yàn)證該收據(jù)的有效性。由于電子簽名的不可偽造性,消費(fèi)者之后能夠利用可信第三方的信息和自己手機(jī)存儲(chǔ)器上的收據(jù)信息來證明消費(fèi)的單據(jù),從而維護(hù)自己的權(quán)益。
二 基于彩虹算法的數(shù)字簽名技術(shù)
2.1 數(shù)字簽名介紹
數(shù)字簽名是一中認(rèn)證機(jī)制,它使得消息的產(chǎn)生著可以添加一個(gè)起簽名作用的碼字。通過計(jì)算消息的散列值并用產(chǎn)生者的私鑰加密散列值來生成簽名。簽名保證了消息的來源和完整性。
數(shù)字簽名可以用于雙向認(rèn)證和單向認(rèn)證。雙向認(rèn)證使得通信的雙方對(duì)相互的身份感到放心,并交換會(huì)話密鑰。而單向認(rèn)證的時(shí)候,接收方能夠確保消息的確來源于發(fā)送方,而且發(fā)送方無法抵賴層放松的消息。
數(shù)字簽名包含幾個(gè)特征:簽名能夠驗(yàn)證簽名者、簽名日期和時(shí)間;簽名能夠驗(yàn)證被簽的消息內(nèi)容;簽名能夠由第三方仲裁,以解決爭執(zhí)。
一個(gè)能夠應(yīng)用的數(shù)字簽名算法需要滿足以下幾個(gè)最基本的條件:產(chǎn)生和識(shí)別簽名是容易的;偽造簽名是不可能的;保存簽名備份是可行的。
2.2 數(shù)字簽名安全性與不可抵賴性
在本項(xiàng)目中,使用數(shù)字簽名的作用是使電子收據(jù)的接受方(消費(fèi)者)能夠確認(rèn)收據(jù)來源的權(quán)威性,而且使商家不能夠抵賴已進(jìn)行的交易,以電子票據(jù)的方式保護(hù)消費(fèi)者的權(quán)益。
由于數(shù)字簽名的不可偽造性,當(dāng)發(fā)現(xiàn)爭執(zhí)的時(shí)候,消費(fèi)者能夠用保存在終端(手機(jī))之中的消費(fèi)數(shù)據(jù)中的簽名,證明消費(fèi)過程和權(quán)益。數(shù)字簽名和普通的紙質(zhì)票據(jù)具有同樣的法律效力,且數(shù)字簽名具有易攜性和非易失性的特點(diǎn),必會(huì)在將來得到大規(guī)模的應(yīng)用。
2.3 簽名的過程
在本項(xiàng)目簽名的過程中涉及到商家(發(fā)送方),消費(fèi)者(接收方),可能還涉及到第三方仲裁者。我們假設(shè)商家已經(jīng)將其公鑰公布出去。當(dāng)消費(fèi)者進(jìn)行消費(fèi)的時(shí)候,已經(jīng)其公鑰了。那么,當(dāng)需要產(chǎn)生一個(gè)簽名票據(jù)的時(shí)候,商家將票據(jù)信息(時(shí)間日期商品數(shù)量價(jià)格廠家名字等等)做一個(gè)HASH,得到一個(gè)固定字長的序列,假設(shè)為M,然后用其私鑰對(duì)該M進(jìn)行加密,即得到S=Eprivate(H(M))。然后將其發(fā)送給接收方。接收方就可以保存。
評(píng)論