鄭元順先生從事固態(tài)硬盤控制芯片工作超過(guò)10年,帶領(lǐng)過(guò)眾多與各家閃存原廠合作專案,熟悉閃存產(chǎn)業(yè)的發(fā)展,以及各種固態(tài)存儲(chǔ)的應(yīng)用規(guī)格?,F(xiàn)任職于慧榮科技股份有限公司,負(fù)責(zé)固態(tài)硬盤芯片的市場(chǎng)策略佈局,以及產(chǎn)品規(guī)格制定。
在主題為《固態(tài)硬盤的加密技術(shù)》的演講中,鄭元順提到,資料安全一向是優(yōu)先的課題,隨著大數(shù)據(jù)的蓬勃發(fā)展,固態(tài)硬盤的加密技術(shù)更顯得重要, 演講核心基于實(shí)務(wù)上的應(yīng)用, 探討這些技術(shù)的使用現(xiàn)況。
以下為演講實(shí)錄:
這兩天大家都在說(shuō)SDD快、大、穩(wěn)。類似這樣加密題目講的比較少,讓大家聽一聽不一樣的東西。
我想問(wèn)大家一個(gè)問(wèn)題,有沒(méi)有比數(shù)據(jù)丟失更可怕的事情?我們做存儲(chǔ)的里面的東西更重要,但是還沒(méi)有比數(shù)據(jù)丟失更可怕的事情?我覺得有,因?yàn)楫?dāng)數(shù)據(jù)到了不該到的地方比丟失更可怕。
安全其實(shí)是數(shù)據(jù)里面最頂級(jí)的需求,為什么這么重要的事情好像大家比較少講這樣的事情?其實(shí)因?yàn)榘踩@個(gè)概念很困難。它抽象了,買東西是安全,只要不被拿出去、摸到就是安全,有人說(shuō)甚至密碼,明明很安全,為什么還要講安全。
安全其實(shí)是很困難的事情,分類從四個(gè)方向講這個(gè)密碼安全。從權(quán)限管理、數(shù)據(jù)安全、安全架構(gòu)。
一開始從輸入密碼這個(gè)概念切入,因?yàn)槊刻煲斎朊艽a。這個(gè)概念不難,但是實(shí)際做難不難?說(shuō)難不難,說(shuō)簡(jiǎn)單也不簡(jiǎn)單。
以前用電腦的時(shí)候設(shè)一點(diǎn)密碼,或者有些人沒(méi)設(shè)置,那就很不安全。設(shè)密碼的時(shí)候,輸入一個(gè)字串,這個(gè)時(shí)候到硬盤里面會(huì)找到這八個(gè)字嗎?不會(huì)的。處理過(guò)程很復(fù)雜,這個(gè)密碼絕對(duì)是加密過(guò)、改過(guò)。就算是工程師,看到這個(gè)字也沒(méi)有辦法。
數(shù)據(jù)加密,是足夠安全的。加密這個(gè)概念說(shuō)難不難,說(shuō)簡(jiǎn)單也不簡(jiǎn)單。他的關(guān)鍵點(diǎn)在KEY這邊,但是這個(gè)KEY不知道它關(guān)鍵在什么地方,以及它跟加密有什么關(guān)系。這邊舉一個(gè)例子,左邊是原始資料,右邊存到密文。這兩個(gè)中間有什么關(guān)系,這個(gè)關(guān)系就是KEY。就算今天用暴力的方法一顆顆拆走,實(shí)際上讀出來(lái)的密文只要不知道這個(gè)KEY,不知道意思,右邊是阿拉伯文。如果大家有認(rèn)識(shí)阿拉伯文,這兩個(gè)字是不一樣的。我只是找一個(gè)類似的。
第三,密碼跟AESKEY是不同的觀點(diǎn),意思是什么?就是說(shuō)這個(gè)KEY本身也不是明文,存進(jìn)去當(dāng)然是經(jīng)過(guò)再一次的編碼過(guò)的,再加一次防護(hù)。而且SMI再用密碼去保護(hù)這個(gè)ESKEY,這樣你的雙重保護(hù)你的KEY不可能泄露出去。
TCG的部分,這個(gè)安全架構(gòu)不只是TCG做這件事情而已,其實(shí)做安全加工比較多。只是因?yàn)門CG大家比較常用,所以拿TCG這個(gè)安全規(guī)范來(lái)介紹。其實(shí)概念差不多,做的東西不一樣。TCG它的功能很多。TCG定義多個(gè)使用者來(lái)做安全控制,以前的ATA沒(méi)有定多個(gè)使用者,他只有一個(gè)使用者,一個(gè)密碼而已。用的TCG這個(gè)比較復(fù)雜、安全、豐富的架構(gòu),它定義多個(gè)使用者。
Tables,這個(gè)意義就是說(shuō)有權(quán)限的控制。權(quán)限聽起來(lái)不太對(duì),應(yīng)該是可以替這個(gè)工作,Key的就只有一個(gè)。但是有了TCGOPPO,你可以對(duì)不同的范圍設(shè)不一樣的Key?;蛘哒f(shuō)做比率和速度的控制。這個(gè)在原本ATA里面其實(shí)也沒(méi)有這個(gè)東西。
第三,LBA幅度。原本的ATASK Hynix里面也沒(méi)有幅度。但是TCG可以幫把這個(gè)切八個(gè),每個(gè)幅度可以獨(dú)立設(shè)權(quán)限,設(shè)不一樣的NESSK Hynix。
這是原本沒(méi)有AES就是一塊白白的,一整個(gè)全局范圍,但是你有TCG以后幫它分開,這些切入可以八個(gè)范圍做獨(dú)立的控制。所以剛才對(duì)應(yīng)到剛才三個(gè)里面。他可以做這個(gè)所有的操作,包含設(shè)定這些幅度。你制定出來(lái)的,你家里可能像大兒子給自己賬號(hào),小女兒有自己的賬號(hào)。公司里面可能這個(gè)部門IT部門理所當(dāng)然是ADM,可能是這個(gè)部門你們是一個(gè),另外一個(gè)部門是技術(shù)的。
ADM它可以去控制改變,他可以每一個(gè)各自制定一個(gè)。AESK在全球是對(duì)整個(gè)范圍,這個(gè)就是只對(duì)這個(gè)范圍里面。我可以對(duì)這個(gè)范圍讀鎖定、寫鎖定類似這樣的操作。當(dāng)然TCG很復(fù)雜,還有其他一些功能。因?yàn)檫@些都是抽象,我們短短的時(shí)間不容易理解。
我想替大家介紹一個(gè)有趣,眼睛看到有感覺的功能。PSID,當(dāng)你去買了一個(gè)東西之后,它資源TCG功能通常都會(huì)貴一點(diǎn)。你買這個(gè)東西善用他的功能,而且通常是像比較貴的產(chǎn)品線。
密碼安全是沒(méi)有辦法破解,當(dāng)你買一個(gè)東西設(shè)了密碼,AESK,這些功能的啟動(dòng)以后,有一天忘了密碼怎么辦?手機(jī)密碼忘記了怎么辦?沒(méi)有辦法。ATA是這樣子的,但是TCG還幫你留了一路,他可以幫你恢復(fù)成出廠的樣子。出廠的樣子,里面的資料當(dāng)然沒(méi)了,因?yàn)椴豢赡茏層幸粋€(gè)字把那些字救回來(lái)不可能,但是至少提供了一個(gè)途徑幫你回收這個(gè)功能,讓你繼續(xù)用。
接下來(lái)講Verification,剛才講的安全架構(gòu),有了這些就安全了?你的文件夠萬(wàn)無(wú)一失。世界上有很多的壞人,壞人就是要搶你的資料,偷看你的照片。他們還有什么辦法?我們剛才不是定義的好多安全的途徑?他們還有辦法嗎?所有這些安全機(jī)制的核心都在哪里?都在這個(gè)里面,所有的運(yùn)作分開做。所有的安全機(jī)制的核心都在這個(gè)里面,所以當(dāng)然壞人會(huì)想到去攻擊這個(gè)安全機(jī)制的核心,像剛才荷蘭的教授攻擊也是攻擊這個(gè)分位。分位本來(lái)就要留下一個(gè)更新的途徑,你的分位總是有BUG要解,所以原本規(guī)范里面就有定好怎么去更新你的分位。
留下了更新范圍的途徑,更好可以拿來(lái)做壞人攻擊的一個(gè)途徑。他們有可能去了一個(gè)不知道上網(wǎng)改一改放進(jìn)你的系統(tǒng)里面,讓你跳開你原本設(shè)計(jì)的所有安全路徑,這是有可能做到。我們?cè)趺醋瞿??一個(gè)普通的固件更新就這么簡(jiǎn)單,你到網(wǎng)站上去下載更新包,一鍵按下去就跑。這樣是不是很沒(méi)有保證?SMI的數(shù)位簽章固位更新流程有點(diǎn)不一樣,大家可以看到我們現(xiàn)在看這個(gè)原本的分位只有這個(gè)而已,沒(méi)有下面這兩個(gè)。有的SMI簽章分位以后,當(dāng)你已經(jīng)寫好一個(gè)更新的分位會(huì)發(fā)生什么事情。我現(xiàn)在用一個(gè)流程圖跟大家解釋,大概會(huì)發(fā)生什么事情。
我們把這個(gè)公開密鑰通過(guò)TB分給各個(gè)客戶,所以這個(gè)其實(shí)SMI自己不知道,所以你要過(guò)這一關(guān)SMI沒(méi)有辦法,只有客戶有辦法。
我們回到原本的更新途徑,當(dāng)客戶有了公開密鑰之后,下一步是什么?這個(gè)當(dāng)分位跟公開密鑰去生成一個(gè)署名,這個(gè)是原汁原味的。SIM提供客戶認(rèn)可的這個(gè)分位依據(jù)。你拿著這個(gè)要來(lái)更新這個(gè)。
第三步公開密鑰對(duì)比原本系統(tǒng)密鑰。
第四步他會(huì)生成一個(gè)哈希值跟更新分位,對(duì)比當(dāng)這兩個(gè)都MICH了,這個(gè)原廠出來(lái)的,原始廠商出來(lái)的。他才會(huì)讓你更新到這個(gè)系統(tǒng)里面去。
有了這個(gè)步驟就可以保證壞人偷改過(guò)的分位,絕對(duì)沒(méi)有辦法當(dāng)做到你的系統(tǒng)里面去,這樣子就可以杜絕被偷換分位的風(fēng)險(xiǎn)。只有這樣嗎?不。SIM還支持更安全的開機(jī),我們把剛才檢查的這個(gè)步驟做到IC里面去。每一次開機(jī),這個(gè)系統(tǒng)都會(huì)去檢查里面分位是不是安全的?檢查的這個(gè)步驟就比原本的分位。為什么要這樣做?因?yàn)閯偛胚@個(gè)只防止更新,但是我有可能拿著一個(gè)東西偷偷用其他方法,用電子箱偷改。讓這一次開機(jī)跳過(guò)檢查流程,所以SMI支援更安全開機(jī)。合起來(lái)這個(gè)系統(tǒng)非常安全,我們甚至可以說(shuō)這個(gè)系統(tǒng)是市面上最安全的之一。以后夠安全了,但是我們還持續(xù)打造更安全的固態(tài)硬盤。
(以上內(nèi)容僅根據(jù)速記整理,如有紕漏,歡迎指正。)