
提高數據庫安全性的十一項技術
編輯:2021-07-30 09:25:27
數據庫(ku)不應(ying)成為危(wei)及(ji)安(an)(an)全和隱私的“切入口”,以下技術(shu)可以幫助降低數據庫(ku)安(an)(an)全風險(xian)并確保合(he)規性。
數(shu)(shu)據(ju)(ju)庫中含有大(da)量個人(ren)信息,甚至(zhi)包(bao)含一些敏(min)感信息,為管(guan)理這(zhe)些數(shu)(shu)據(ju)(ju)的(de)公司帶來了不少麻(ma)煩。現在(zai),復雜的(de)工(gong)具(ju)和技術使得(de)數(shu)(shu)據(ju)(ju)庫開發人(ren)員(yuan)可以通過保持信息的(de)私(si)密性來整(zheng)體提升數(shu)(shu)據(ju)(ju)庫的(de)安全性。
這些解決(jue)方案(an)主(zhu)要取決(jue)于對數(shu)學的巧妙(miao)應用。例如,一些最簡單(dan)的機制(zhi)看起來只(zhi)是現代版本的密碼,本質上是經(jing)典解碼輪(lun)的數(shu)字版本。其他更(geng)復雜的擴展(zhan),也(ye)進(jin)一步推動數(shu)學提(ti)供更(geng)多的靈活性(xing)和(he)功(gong)能性(xing)。許多在實驗(yan)室中試驗(yan)了幾(ji)十年的技術想(xiang)法最終得到了研發(fa)和(he)應用,成為了現實。
這(zhe)些(xie)算法(fa)(fa)正在成為鞏(gong)固業(ye)務(wu)(wu)關(guan)系和確保準(zhun)確“無欺詐(zha)”工(gong)作流(liu)程的基(ji)礎。這(zhe)些(xie)方法(fa)(fa)使公司可以更輕松地向客戶提供個性化服(fu)務(wu)(wu),同時保護他們的隱私。此外,這(zhe)些(xie)方法(fa)(fa)還能(neng)夠(gou)在不(bu)妨礙服(fu)務(wu)(wu)交付的情況下更好地遵(zun)守管理數(shu)據流(liu)的法(fa)(fa)規。
以(yi)下是讓數據庫變得(de)更安(an)全、更簡單的(de)11 種工具(ju)和(he)技術:
有時候,最簡單的解(jie)決方案就(jiu)足夠了(le)。現(xian)代加密(mi)算法用一把鑰(yao)匙加密(mi)數(shu)(shu)據(ju),因(yin)此(ci)只有擁有鑰(yao)匙的人才能讀取(qu)數(shu)(shu)據(ju)。許(xu)多數(shu)(shu)據(ju)庫可以(yi)使用AES等標準(zhun)加密(mi)數(shu)(shu)據(ju)。這些解(jie)決方案最能防止硬件丟(diu)失(也可能是被盜)的情況(kuang),因(yin)為如果(guo)沒有正確的加密(mi)密(mi)鑰(yao),數(shu)(shu)據(ju)仍然是安全的。
但是(shi),這種基礎加(jia)密(mi)并非(fei)一勞永逸的(de)方(fang)法。如(ru)果(guo)攻(gong)(gong)擊者(zhe)能(neng)夠(gou)侵入計算機,對稱加(jia)密(mi)算法對運行中的(de)計算機的(de)保護程度也(ye)是(shi)有(you)限的(de)。攻(gong)(gong)擊者(zhe)可以(yi)找到允許(xu)數(shu)據庫(ku)處理合法操作(zuo)的(de)相同(tong)密(mi)鑰(yao)。許(xu)多數(shu)據庫(ku)提供了(le)對“靜(jing)止”信息進行加(jia)密(mi)的(de)選項。
這(zhe)種技術以(yi)(yi)不同的方式部署數(shu)學。它(ta)沒有將信息鎖(suo)定在(zai)數(shu)字保險箱中,而是添加(jia)(jia)了精心調整(zheng)的噪音量,以(yi)(yi)使其難(nan)以(yi)(yi)確(que)定哪(na)條記錄對應哪(na)個(ge)特定的數(shu)據個(ge)體。如(ru)果(guo)噪聲(sheng)數(shu)值(zhi)(zhi)正常,那么便不會影響整(zheng)體統計數(shu)據,如(ru)平均(jun)(jun)值(zhi)(zhi)。也就(jiu)是說,如(ru)果(guo)您從數(shu)據集中的年(nian)齡隨機增加(jia)(jia)或(huo)減少幾(ji)年(nian),平均(jun)(jun)年(nian)齡將保持(chi)不變,但(dan)這(zhe)樣一來可能很難(nan)通過年(nian)齡尋(xun)找到特定個(ge)人。
該解(jie)決方案的(de)(de)效用各不相同。最好(hao)將數(shu)據(ju)集發布給(gei)想要研究數(shu)據(ju)的(de)(de)不受信任的(de)(de)合作伙伴,通常(chang)是通過計算(suan)數(shu)據(ju)平均值和數(shu)據(ju)集的(de)(de)大小。在某種程度上(shang)來說,許多算(suan)法添加噪(zao)聲做得很好(hao),因為他們不會扭曲許多聚合的(de)(de)統計數(shu)據(ju)。目前,了解(jie)哪些(xie)機器學習算(suan)法仍然可以很好(hao)地處(chu)理(li)失真位是一個非(fei)常(chang)活(huo)躍(yue)的(de)(de)研究領域。
這些計算有時(shi)被稱為(wei)“消息驗證代(dai)碼”或“單向(xiang)函數(shu)”,它將大文(wen)件(jian)歸(gui)結為(wei)較小的(de)數(shu)字(zi),從而使其實際上幾乎(hu)無法(fa)逆(ni)轉。給定(ding)一個特定(ding)的(de)結果(guo)或代(dai)碼,找到將生成該特定(ding)代(dai)碼的(de)文(wen)件(jian)將花費太長時(shi)間。
哈希函(han)數(shu)是區塊鏈的(de)(de)重要組成部(bu)分,它以一(yi)種可(ke)跟蹤和識別篡改的(de)(de)方式將它們應用(yong)于(yu)數(shu)據的(de)(de)所有(you)更新中(zhong)。這(zhe)可(ke)以防止加密貨幣交易中(zhong)的(de)(de)欺詐行(xing)為,并(bing)且(qie)許多人正在將這(zhe)些技術應用(yong)于(yu)需(xu)要確保數(shu)據一(yi)致的(de)(de)其他數(shu)據庫。添(tian)加哈希函(han)數(shu)可(ke)以幫助企業應對數(shu)據合規性挑戰(zhan)。
美國(guo)國(guo)家標準(zhun)與技(ji)術研(yan)究院(NIST)的安(an)全散(san)列算法(SHA)是(shi)廣泛使用的標準(zhun)集合。一些早(zao)期版本(如(ru)SHA-0和(he)(he)SHA-1)具有已知的漏洞,但較新的版本(如(ru)SHA-2和(he)(he)SHA-3)則被認為(wei)非常安(an)全。
像(xiang)RSA或DSA這樣(yang)的(de)(de)(de)數(shu)字簽名算(suan)法算(suan)是更為(wei)復雜的(de)(de)(de)計算(suan),它(ta)將散列函數(shu)的(de)(de)(de)篡改檢(jian)測特性(xing)與(yu)帶(dai)有(you)認(ren)證信息(xi)的(de)(de)(de)特定(ding)個(ge)人或機構相結合。它(ta)們依賴一個(ge)只有(you)責(ze)任方(fang)知道的(de)(de)(de)秘密(mi)密(mi)鑰(yao)。例(li)如,加密(mi)貨幣將財(cai)富(fu)的(de)(de)(de)所有(you)權與(yu)知道正確(que)密(mi)鑰(yao)的(de)(de)(de)人聯系起(qi)來。跟(gen)蹤個(ge)人責(ze)任的(de)(de)(de)數(shu)據庫可以包(bao)括驗證特定(ding)交易的(de)(de)(de)數(shu)字簽名。
簡明的(de)非(fei)交互式知識論證(zheng)(zheng)(SNARK)是一(yi)種(zhong)更為復(fu)雜的(de)數字簽(qian)名版本(ben),可以證(zheng)(zheng)明復(fu)雜的(de)個人信息而(er)不會泄露(lu)信息本(ben)身(shen)。這種(zhong)技巧依賴于更復(fu)雜的(de)數學,有時被(bei)稱為“零知識證(zheng)(zheng)明”(ZKP)。
包含SNARK和其(qi)他(ta)(ta)類(lei)似證明的數(shu)據庫可以保護用戶的隱(yin)私(si),同時確保自(zi)己合規性。例(li)如,一個非常簡單的例(li)子可能(neng)就是數(shu)字(zi)駕駛執照,它可以證明一個人(ren)的年(nian)齡能(neng)夠飲酒而(er)又不會透露他(ta)(ta)們具體(ti)的出(chu)生日(ri)期。一些人(ren)正在研究將該(gai)技術應用于疫(yi)苗護照。
SNARK和其他(ta)非交互式證明(ming)同樣(yang)屬(shu)于研究熱門(men)。使用(yong)各(ge)種編(bian)程(cheng)語言的數十(shi)種算(suan)法(fa)實現也為(wei)新(xin)項目奠定了(le)良好的基礎。
處理使(shi)用傳統加(jia)(jia)密(mi)算(suan)(suan)法(fa)鎖(suo)定(ding)的(de)(de)數據的(de)(de)唯一方法(fa)是對(dui)其(qi)進(jin)行解(jie)密(mi),這個(ge)(ge)過程可(ke)以(yi)將其(qi)暴露給任何有權訪問(wen)計算(suan)(suan)機進(jin)行工(gong)作的(de)(de)人(ren)。同態(tai)加(jia)(jia)密(mi)算(suan)(suan)法(fa)旨在使(shi)對(dui)加(jia)(jia)密(mi)信(xin)息(xi)進(jin)行計算(suan)(suan)而無需對(dui)其(qi)進(jin)行解(jie)密(mi)成(cheng)為可(ke)能。最簡單的(de)(de)算(suan)(suan)法(fa)允許進(jin)行一次算(suan)(suan)術運算(suan)(suan),例如將兩個(ge)(ge)加(jia)(jia)密(mi)數字相加(jia)(jia)。更復雜的(de)(de)算(suan)(suan)法(fa)可(ke)以(yi)進(jin)行任意計算(suan)(suan),但速度(du)通常要慢(man)得多。為特定(ding)問(wen)題尋找最有效(xiao)的(de)(de)方法(fa)也(ye)是一個(ge)(ge)熱門的(de)(de)研究領域。
一些開(kai)發(fa)人(ren)員將(jiang)他們的數(shu)據集拆分成(cheng)更小的部分,有時(shi)甚至(zhi)出奇得小,然(ran)后將(jiang)它們分發(fa)到許多獨立的計算機(ji)中。有時這些位置(zhi)會被打亂,因此無法(fa)預測(ce)哪臺計算機將保存(cun)哪條記錄。該(gai)解(jie)決方案主(zhu)要(yao)用于(yu)軟件(jian)包(bao),這些軟件(jian)包(bao)旨在通過(guo)并行(xing)運行(xing)搜(sou)索或(huo)分析算法來(lai)加速所謂的大數據工作。最(zui)初的(de)目(mu)的(de)是速(su)度,但也可能(neng)導(dao)致增加攻擊彈性(xing)的(de)副作(zuo)用。
如(ru)果將一(yi)個數據(ju)(ju)集拆分成幾(ji)塊可以保護隱私,那么(me)為什(shen)么(me)不是(shi)十億塊或更多(duo)塊呢?更常見的解決(jue)方(fang)案是(shi)將數據(ju)(ju)直接(jie)存(cun)儲(chu)在創建和(he)使用(yong)的位置。用(yong)戶的智能(neng)手機通常具有大量額外(wai)的計算力和(he)存(cun)儲(chu)空間。如(ru)果幾(ji)乎不需要集中(zhong)分析和(he)處理功能(neng),那么(me)避免將其傳送到云服務器處理速度會更快、更具成本效益。
一些(xie)研究人員正在(zai)通(tong)過隨(sui)機生(sheng)成(cheng)新(xin)值(zhi)來(lai)創(chuang)建純合(he)成(cheng)的數據(ju)集,但其方式遵循相同的模(mo)式并且在(zai)統(tong)計上基本相同。
一些研究人員(yuan)正在(zai)構建(jian)工具來限(xian)制數據收集(ji),并在(zai)存儲(chu)數據之前對數據進行預處(chu)理。
無狀態計算是(shi)大部(bu)分網絡的基礎,當以盡可能少(shao)的記錄(lu)保存方式重新構建工作時(shi),許(xu)多(duo)高效(xiao)驅動器都能夠發揮(hui)效(xiao)用。在某些(xie)極(ji)端情況下(xia),如果(guo)合(he)規性允許(xu),并(bing)且用戶愿意接受極(ji)少(shao)(甚至沒有)得個性化服務時(shi),刪(shan)除數據庫可以最大程度地保護用戶隱私(si)。


咨詢(xun)熱(re)線:0351-4073466?
地(di)址:(北區)山西(xi)省太原市迎(ying)澤區新建南路文源巷24號文源公務(wu)中心5層
? ? ? ? ? ?(南區(qu))太原市小店(dian)區(qu)南中環街529 號清控(kong)創新基地(di)A座4層
