[閒聊] 匯豐加密小精靈的原理?

作者: tnchangc ( )   2014-07-15 16:14:22
用了一次整合帳戶的加密小精靈覺得好神奇~
現在要登入匯豐網銀(手機和電腦版亦同),
打完帳號和密碼,接著會要求輸入認證碼,
於是拿加密小精靈打入另外一組自設密碼(打錯三次就會鎖住),
這個時候就會跑出一串數字,
再把這串數字打到匯豐網銀登入的認證碼,就可以成功登入了
我不能理解的地方在於加密小精靈沒有任何傳輸界面
(難道裡面有類似SIM卡概念的遠端介面?)
但是為什麼可以同時讓網銀知道手上這台沒啥質感的認證碼?
有版友知道原理嗎?
作者: alex1973 (alex1973)   2014-07-15 16:18:00
時間想了解原理的可以看這個 wiki: http://goo.gl/q0Fvx9簡單說就是靠時間以及不讓人知道的演算法, 以及每個加密精靈裡面唯一的一個內碼, 算出一個會隨時間一直變動的碼,server 有紀錄每個使用者加密精靈的內碼, 再用一樣的演算法以及時間值, 去檢查看你輸入的碼, 是不是符合該加密精靈產生出來的值, 確認你是不是真的持有該加密精靈這東西其實很多銀行都有採用, 我手上就有國泰世華, HSBCAdv, Citibank SG 三個這類型 OTP, 長的都一模一樣, 只是顏色不一樣, 操作流程也有一點小差別, 但是背後原理都是一樣是採用時間當演算法的其中一個輸入.
作者: biocim (放手是好的)   2014-07-15 17:52:00
其實不一定要隨身帶這台呀 你可以先產生十組 抄下來若要用時 一組一組用掉就可以了 其實就是符合機碼的數字沒什麼特別的原理 不然還真的隨時帶一台計算機 多麻煩呀就一次先產生幾組 抄在皮夾裡 有需要時拿來都可以用以前的渣打也有個小黑碟 我也是一次抄個幾組 不隨身帶那台
作者: alex1973 (alex1973)   2014-07-15 18:00:00
給樓上的: 用時間當輸入的機種你這方法行不通, 密碼是隨時間變化的. 你親自用過就知道了.
作者: biocim (放手是好的)   2014-07-15 18:01:00
所以抄下來後 過好幾天都可以用 所以根一樓說的"時間"無關是google那種驗證密碼app 才跟時間有關係請樓上自己試過就知道了 我渣打那時候就一次產生多組 可以用好幾天了
作者: alex1973 (alex1973)   2014-07-15 18:03:00
現在在說匯豐, 你在說以前的渣打 !?
作者: biocim (放手是好的)   2014-07-15 18:04:00
甚至用好幾個禮拜 所以跟 時間 一點關係也沒有 樓上可試試匯豐我是還沒試 但原理應該是一樣的 不會扯上時間的因為我的三次按錯被鎖住了 要等重寄來 沒辦法試其實要驗證就先產生密碼 過一段時間 再用該密碼登入如果可以登入 就是跟時間一點關係也沒有google的密碼驗證app 才是跟時間有關 每30秒都換一組密碼超過30秒該密碼就無用 要重新產生 那個才是跟 時間 有關因為小精靈跟手機不同 電源一不足 時間就會走慢 就完全不準所以不可能用 跟任何 時間 有關的 當做原理的
作者: tnchangc ( )   2014-07-15 19:32:00
樓上biocim的原理被我推翻掉了...剛剛我產生五組認證碼網銀登入網頁開著 一直重複按加密小精靈 大約每隔20秒就會產生一組新的認證碼 然後我開始逐一測試1~5組認證碼通通都登入失敗 接著再馬上用加密小精靈產生最新驗證碼這下才可以成功登入進去 所以有可能新版的不適用這招二來也推翻掉alex1973大所說的時間驗證 ...如果真的以時間驗證..不可能為了每個人一直在生成認證碼?
作者: alex1973 (alex1973)   2014-07-15 19:49:00
事實上他就是用時間當驗證碼運算的其中一個輸入, 你做的實驗不就已經驗證了, 你可以產生一組密碼, 試看看等多久以後去用就會失效, 一般是設定成一分鐘換一組, 但是為了怕 OTP device 跑久了時間跟 server 不同步, 這種演算法一般允許前後一組的密碼也會通過驗證.另外關於時間同步問題, 有些這類型的驗證機制還會在偵測到 OTP device 時間跟 server 差太多以後, 會在網銀認證畫面跳出不同的視窗, 要求拿著 OTP device 連續輸入很多組密碼, 全都驗證過以後, server 就會認可這個 OTP 沒問題, 並記錄下新的時間誤差值, 以後就不會再要求校正時間誤差.
作者: wispehly (天堂與地獄的分界)   2014-07-15 20:32:00
跟時間無關~我覺得兩位大大理論都是錯的~是密碼組合問題因為我把小精靈帶去美國~時間差了十二小時~一樣可登入呀!所以也推翻掉a大大所說的時間驗證
作者: alex1973 (alex1973)   2014-07-15 20:42:00
Wispehly: 你這推論有問題吧, 在美國雖然跟台灣有時差,但是 server 跟 device 又沒有連線, OTP device 是照著內部 RTC 不斷的推進時間, 所以無論你去到哪裡時差多少, 時間理論上都是大致上同步的.
作者: now99 (陳在天)   2014-07-15 20:44:00
這台 vasco的
作者: alex1973 (alex1973)   2014-07-15 20:45:00
我的回答到此為止, 不會再跟各位解釋. 不相信的人, 就盡量抄下一堆密碼, 然後看會發生甚麼事.
作者: now99 (陳在天)   2014-07-15 20:46:00
樓上很專業相信很懂 OTP
作者: pobynb (皮小邱)   2014-07-15 20:53:00
原則上alex說得沒錯啊
作者: gottsuan (ごっつぁんです)   2014-07-15 22:03:00
動態密碼 匯豐的是time based時間是以UTC為基準 所以沒有時差問題 系會自己修正時差想了解自己去找RFC文件看
作者: krishuang (五柳先生)   2014-07-15 22:27:00
推alex大
作者: louis561   2014-07-15 22:28:00
Alex是對的
作者: EthanBBS (90%時間idle)   2014-07-15 22:44:00
有兩種一種是時間的像匯豐..一種是裡面有密碼表,按下去照順序跑出來...像兆豐..這種就可以先記下來..但是通常銀行會跟你講不要一直按..因為如果超過密碼表的範圍太多的話是會認證失敗的..這時就要跟銀行同步密碼表的順序..
作者: now99 (陳在天)   2014-07-15 22:48:00
time based 和 event basedOATH HOTP TOTP OCRA
作者: diabloevagto (wi)   2014-07-15 23:21:00
alex 說的是對得,上面說推翻的太瞎了根本不管你現在人在那邊,他對應的時間是 server跟你卡片的時間兩邊透過同樣的時間透過演算法,正常來說兩邊要一樣
作者: gottsuan (ごっつぁんです)   2014-07-15 23:45:00
所謂的時間是和1970/1/1基準時間算到目前的timestep所以時差問題不會存在 TOTP標準 RFC6238以前新竹企銀用的是event based的 這個OTP產生和時間無關所以可以先產生記下 只要是還沒用過的都有效 當然產生太多 還是會發生和server端不同步問題 server上設有寬容差time based則是太久不用 token上的時間可能和server端有差異而發生不同步 精密手錶一年都會差幾秒了 便宜的token用的料沒那麼好 一年可能會差到好幾十分鐘大家手上的晶片金融卡也有OTP功能 只要搭配二代讀卡機也可以產生OTP 這是event based的
作者: royhsia (轉檔真是大哉問)   2014-07-16 00:24:00
看推文長知識 XDDD永豐的 Display Card 應該也是差不多算法吧
作者: alex1973 (alex1973)   2014-07-16 09:07:00
永豐的 display card 是 event based (跟以前渣打的一樣)不是 time based. 所以 display card 也可以抄很多組下來以後慢慢用.
作者: kedy (不要浪費每一刻)   2014-07-16 11:00:00
alex1973是正確的,我渣打,匯豐,永豐都用過,如alex所述 :)
作者: crazyghost ( )   2014-07-16 12:11:00
這篇釣出真多強者!! m起來~
作者: tnchangc ( )   2014-07-16 13:52:00
小弟才學疏淺m(_ _)m 大推alex1973的專業!長知識了!
作者: Go2 (勾兔)   2014-07-16 13:55:00
推推 這篇厲害!!!
作者: cppwu (肩膀痠痛 ..)   2014-07-16 19:27:00
http://tinyurl.com/ocs598k 生產商都跟你講內建 RTC 了 ..
作者: now99 (陳在天)   2014-07-16 20:53:00
emv cap 都是 event based 沒錯
作者: wtl (比特)   2014-07-17 22:14:00
最近玩event based密碼心得 event based每產生一組密碼裡面有一個計數器會加1 網站是你輸入密碼 網站的計數器也會加1 產生密碼 輸入到網站 兩邊一起加1 兩邊同步 但是只要網站輸入錯誤密碼 網站會加1 但是小精靈不會加1 兩邊就會不同步 看系統設定兩邊計數器的值能差多少 比如說10 就代表你只能輸入10次錯誤密碼的機會 超過之後小精靈就不能用了
作者: barbeilt (亨利)   2014-07-20 02:02:00
魔獸世界也是用類似的東西才能登入
作者: readonly (唯讀)   2014-07-21 23:16:00
有聽過 hash function 嗎?

Links booklink

Contact Us: admin [ a t ] ucptt.com