指導老師:詹進科、陳育毅 開發團隊 : 呂峻豪、謝佳峻、黃傳強 中興大學資訊科學與工程學系 2015/12/11 愛客來O2O 電子票劵平台 指導老師:詹進科、陳育毅 開發團隊 : 呂峻豪、謝佳峻、黃傳強 中興大學資訊科學與工程學系 2015/12/11
消費者App 愛客來O2O 電子票劵平台 – 三大程式 網站平台 店家App 消費者App 網站平台
….. 高完成度的系統設計 電子票券平台 購買 核銷 消費者 店家 使用 平行處理訂單 可擴充式Worker Pool 平行處理寄送信件 QRCode Generater QRCode Generater Mailer Mailer 任務佇列 Redis RSA簽章 API Server J2EE / Spring MVC Session存放 Redis Message Queue Broker Redis Stateless可擴充式主要網站 Laravel 5.1 即時統計伺服器 Node.js / Socket.io 購買 核銷 消費者 店家 使用 3
高完成度的系統設計 1. 主要頁面RWD設計 2. 企業、消費者註冊 3. 企業開店、登錄活動、販售票券 4. 即時活動推播 5. 搜尋活動 2. 企業、消費者註冊 3. 企業開店、登錄活動、販售票券 4. 即時活動推播 5. 搜尋活動 6. 討論串系統 7. 社群分享 8. 消費者購買票券 9. 系統排程發送Email購買證明 10. 路線導航 11. 店家驗票 企業儀表板 票券販售情形資料視覺化 網頁及手持裝置即時觀看活動頁面人數統計
高完成度的系統設計 1. 主要頁面RWD設計 2. 企業、消費者註冊 3. 企業開店、登錄活動、販售票券 4. 即時活動推播 5. 搜尋活動 2. 企業、消費者註冊 3. 企業開店、登錄活動、販售票券 4. 即時活動推播 5. 搜尋活動 6. 討論串系統 7. 社群分享 8. 消費者購買票券 9. 系統排程發送Email購買證明 10. 路線導航 11. 店家驗票 企業儀表板 票券販售情形資料視覺化 網頁及手持裝置即時觀看活動頁面人數統計
高完成度的系統設計 1. 主要頁面RWD設計 2. 企業、消費者註冊 3. 企業開店、登錄活動、販售票券 4. 即時活動推播 5. 搜尋活動 2. 企業、消費者註冊 3. 企業開店、登錄活動、販售票券 4. 即時活動推播 5. 搜尋活動 6. 討論串系統 7. 社群分享 8. 消費者購買票券 9. 系統排程發送Email購買證明 10. 路線導航 11. 店家驗票 企業儀表板 票券販售情形資料視覺化 網頁及手持裝置即時觀看活動頁面人數統計
高完成度的系統設計 1. 主要頁面RWD設計 2. 企業、消費者註冊 3. 企業開店、登錄活動、販售票券 4. 即時活動推播 5. 搜尋活動 2. 企業、消費者註冊 3. 企業開店、登錄活動、販售票券 4. 即時活動推播 5. 搜尋活動 6. 討論串系統 7. 社群分享 8. 消費者購買票券 9. 系統排程發送Email購買證明 10. 路線導航 11. 店家驗票 企業儀表板 票券販售情形資料視覺化 網頁及手持裝置即時觀看活動頁面人數統計
高完成度的系統設計 1. 主要頁面RWD設計 2. 企業、消費者註冊 3. 企業開店、登錄活動、販售票券 4. 即時活動推播 5. 搜尋活動 2. 企業、消費者註冊 3. 企業開店、登錄活動、販售票券 4. 即時活動推播 5. 搜尋活動 6. 討論串系統 7. 社群分享 8. 消費者購買票券 9. 系統排程發送Email購買證明 10. 路線導航 11. 店家驗票 企業儀表板 票券販售情形資料視覺化 網頁及手持裝置即時觀看活動頁面人數統計
高完成度的系統設計 1. 主要頁面RWD設計 2. 企業、消費者註冊 3. 企業開店、登錄活動、販售票券 4. 即時活動推播 5. 搜尋活動 2. 企業、消費者註冊 3. 企業開店、登錄活動、販售票券 4. 即時活動推播 5. 搜尋活動 6. 討論串系統 7. 社群分享 8. 消費者購買票券 9. 系統排程發送Email購買證明 10. 路線導航 11. 店家驗票 企業儀表板 票券販售情形資料視覺化 網頁及手持裝置即時觀看活動頁面人數統計
高完成度的系統設計 1. 主要頁面RWD設計 2. 企業、消費者註冊 3. 企業開店、登錄活動、販售票券 4. 即時活動推播 5. 搜尋活動 2. 企業、消費者註冊 3. 企業開店、登錄活動、販售票券 4. 即時活動推播 5. 搜尋活動 6. 討論串系統 7. 社群分享 8. 消費者購買票券 9. 系統排程發送Email購買證明 10. 路線導航 11. 店家驗票 企業儀表板 票券販售情形資料視覺化 網頁及手持裝置即時觀看活動頁面人數統計
高完成度的系統設計 1. 主要頁面RWD設計 2. 企業、消費者註冊 3. 企業開店、登錄活動、販售票券 4. 即時活動推播 5. 搜尋活動 2. 企業、消費者註冊 3. 企業開店、登錄活動、販售票券 4. 即時活動推播 5. 搜尋活動 6. 討論串系統 7. 社群分享 8. 消費者購買票券 9. 系統排程發送Email購買證明 10. 路線導航 11. 店家驗票 企業儀表板 票券販售情形資料視覺化 網頁及手持裝置即時觀看活動頁面人數統計
高完成度的系統設計 1. 主要頁面RWD設計 2. 企業、消費者註冊 3. 企業開店、登錄活動、販售票券 4. 即時活動推播 5. 搜尋活動 2. 企業、消費者註冊 3. 企業開店、登錄活動、販售票券 4. 即時活動推播 5. 搜尋活動 6. 討論串系統 7. 社群分享 8. 消費者購買票券 9. 系統排程發送Email購買證明 10. 路線導航 11. 店家驗票 企業儀表板 票券販售情形資料視覺化 網頁及手持裝置即時觀看活動頁面人數統計
What’s New? 店內、展場銷售系統支援 電子票券送禮 – 新型態的送禮文化 Killer Feature 更低的企業導入門檻 更多元的企業用戶 更高度的消費者保障
店內、展場販售電子票券支援 愛客來 Email收到購買證明 店家App
電子票券送禮 – 新型態的送禮文化
電子票券送禮 – 新型態的送禮文化 過節提取新鮮的禮盒 就近享受服務
Killer Feature : Offline Verification 圖案比較……簡單? 內容 : MAC Address Random UUID 建立雙向藍芽連線 真的票券資料 店家App使用RSA-2048驗證簽章 & local 留下該票券紀錄 無法出示同票券 去別家店也不能用 整個使用過程有如一般驗票一樣順暢 消費者App 店家App
無網路核銷票券的困難 偽造票券 : 沒辦法即時向伺服器查詢是否有發行此票號的票券 複製票券 : 票券重複使用(Double-spending Attack),無法向後台查詢是否已使用
攻擊1 – 偽造票券 駭客沒有愛客來API Server私鑰 無法簽發符合格式的電子票券 店家可在開業進到沒有網路環境的店內前 登入店家App,同步伺服器最新活動 同時下載愛客來公布的公鑰來驗證所有消費者示出的電子票券
攻擊2 – 複製票券 驗證過的票券id存放在店家App內,紀錄本日已核銷的 電子票卷id,當重複票券使用時,就會被偵測出來 每次購買新的票券,待消費者App 第一次同步新票券之後,伺服器將不會再核發 資料將存在消費者App Local端,故 兩台裝置都登入消費者App,只有先同步的 會取得票券,若有誤刪Local資料的情形 需上傳Email發送的購買證明,待一定工作時數後 由愛客來重新開通票券予以下載 店家待打烊之後回到有網路的環境, 再同步上傳到愛客來伺服器批次核銷
Offline Verification的成立 O2O再進化 - 更低的企業導入門檻 支援線上驗票模式,也支援離線驗票模式 連鎖店、獨立店,驗票當下再也不需要網路 平台能與更多元的企業用戶合作 學生辦活動,戶外室內都適用,支援0元免費活動票券 社群工作坊、黑客松入場 連鎖店、獨立店店內沒網路業者,各式路邊攤 任何企業架構業者都能賣電子票券,合作商家將爆炸性的成長
更高度的消費者保障 Email寄送的QRCode 票券商品資料 data : … RSA-2048綁定data的簽章 sign : … 信件QRCode本身就是購買證明,任何人都能驗證交易確實存在
更高度的消費者保障 聯合否認交易存在 電子票券平台 購買 核銷 消費者 店家 使用 只有購買商品資料導致: 票券本身缺乏舉證能力 消費者權益受影響 購買 核銷 消費者 店家 使用 內容 : Z6RS0C34213E3
更高度的消費者保障 聯合否認交易存在 愛客來 購買 核銷 消費者 店家 使用 利用RSA不可否認性 利用RSA完整性 利用備份的公鑰驗證 不能否認交易行為存在 購買 核銷 店家核銷票券不用擔心 具防偽性,不可能偽造 消費者 店家 使用 自我舉證的能力
愛客來O2O 電子票劵平台 - 總結 店內、展場銷售系統支援 電子票券送禮 – 新型態的送禮文化 Killer Feature – 離線驗證電子票券 更低的企業導入門檻 更多元的企業用戶 更高度的消費者保障
QRCode簽發的效率 單支排程系統中的Worker作業時間 : RSA簽章 + 產生QRCode圖檔
Q & A
Demo
RSA-2048簽章 愛客來API Server私鑰簽發 完整性 (Integrity) 防偽性,店家不需擔心偽造 不可否認性(Non-repudiation) 平台不能否認交易行為存在 3. 任何人都能利用公布在網路上的公鑰驗證簽章證實票券合法 RSA-2048常用在以下例子,具有相同安全等級 台灣工商憑證、自然人憑證
無網路核銷票券的困難 偽造票券 : 沒辦法即時向伺服器查詢是否有發行此票號的票券 複製票券 : 票券重複使用(Double-spending Attack),無法向後台查詢是否已使用
Killer Feature : Offline Verification 矛盾大對決 <最會鑽漏洞的駭客 V.S 最完善的離線驗證機制>
攻擊1 – 偽造票券 駭客沒有愛客來API Server私鑰 無法簽發符合格式的電子票券 店家可在開業進到沒有網路環境的店內前 登入店家App,同步伺服器最新活動 同時下載愛客來公布的公鑰來驗證所有消費者示出的電子票券
攻擊2 – 複製票券 驗證過的票券id存放在店家App內,紀錄本日已核銷的 電子票卷id,當重複票券使用時,就會被偵測出來 每次購買新的票券,待消費者App 第一次同步新票券之後,伺服器將不會再核發 資料將存在消費者App Local端,故 兩台裝置都登入消費者App,只有先同步的 會取得票券,若有誤刪Local資料的情形 需上傳Email發送的購買證明,待一定工作時數後 由愛客來重新開通票券予以下載 店家待打烊之後回到有網路的環境, 再同步上傳到愛客來伺服器批次核銷
企業註冊
消費者註冊
店家管理 新增店家 : 設定店名、地址、電話、店家App登入密碼、App運行模式 編輯店家 : 修改第一點內容 搜尋店家 : 快速根據關鍵字搜尋符合名稱、地址、電話的店家
活動管理 設定活動名稱 販售與使用票券時間 上傳活動宣傳圖 編輯活動內容 編輯販售的票券
活動推播
搜尋活動 根據 企業名稱 活動名稱 店家地址 票劵名稱 搜尋相關活動
活動頁面
購買票券 輕鬆購買多張電子票劵 購買票劵網頁回應快速,伺服器後端 擁有良好的排程系統,負責耗時的大 量產生票劵、發送購買通知信件任務
導航功能 透過消費者App或平台網站 輕鬆知道哪裡可以使用票券 立即導航
企業儀表板 良好的資料視覺化設計 Real-time 觀看活動人數 瀏覽次數統計 各式票劵賣出數量比例 各式票券占所得營收比例 每天消費票劵數量統計 提供Restful API查詢交易資料