A. 資料庫加密的最小粒度
就是通常我們所說的鎖級別。
資料庫引擎具有多粒度鎖定,允許一個事務鎖定不同類型的資源。 為了盡量減少鎖定的開銷,資料庫引擎自動將資源鎖定在適合任務的級別。 鎖定在較小的粒度(例如行)可以提高並發度,但開銷較高,因為如果鎖定了許多行,則需要持有更多的鎖。 鎖定在較大的粒度(例如表)會降低了並發度,因為鎖定整個表限制了其他事務對表中任意部分的訪問。 但其開銷較低,因為需要維護的鎖較少。
資料庫引擎通常必須獲取多粒度級別上的鎖才能完整地保護資源。 這組多粒度級別上的鎖稱為鎖層次結構。 例如,為了完整地保護對索引的讀取,資料庫引擎實例可能必須獲取行上的共享鎖以及頁和表上的意向共享鎖。
MySQL有三種鎖的級別:頁級、表級、行級。
MyISAM和MEMORY存儲引擎採用的是表級鎖(table-level locking);BDB存儲引擎採用的是頁面鎖(page-level
locking),但也支持表級鎖;InnoDB存儲引擎既支持行級鎖(row-level locking),也支持表級鎖,但默認情況下是採用行級鎖。
MySQL這3種鎖的特性可大致歸納如下:
表級鎖:開銷小,加鎖快;不會出現死鎖;鎖定粒度大,發生鎖沖突的概率最高,並發度最低。
行級鎖:開銷大,加鎖慢;會出現死鎖;鎖定粒度最小,發生鎖沖突的概率最低,並發度也最高。
頁面鎖:開銷和加鎖時間界於表鎖和行鎖之間;會出現死鎖;鎖定粒度界於表鎖和行鎖之間,並發度一般。
每種鎖可以在網上查詢詳細說明。主要看你用什麼存儲引擎。
B. 恆隆加密軟體用的是什麼加密技術
一、eKey即插即用、實時透明地對數據進行加密保護
使用USB介面,DG系統把USB介面的即插即用特性擴展到保密文檔上。用戶只需要插上eKey,保密的文檔無需解密就可以正常使用;拔掉eKey,保密的文檔就地消失。這一特性源於DG系統採用了業界領先的實時加解密技術。實時加解密技術加密時不需要搬動文件的位置,使用時也不需要事先解密。
二、可以實現對任意類型的文件進行加密保護
既可加密各種應用系統(如ERP、CAD、MIS、OA、財務軟體等)的程序和資料庫文件,也可加密與用戶個人相關的電子郵件、即時聊天記錄、上網歷史記錄、通訊錄、網上銀行客戶端等。
三、可以以文件、文件夾或邏輯盤符(驅動器)為單位進行加密
DG加密對象的最小單位是單個文件,最大可以是驅動器。在DG環境中,未授權的用戶不能進入加密的驅動器和文件夾,也不能存取加密文件;在DG環境外(如:自主卸載DG系統、拆卸數據硬碟進行暴力性攻擊)時,加密文件以密文形式存在,攻擊者無法獲得加密文件的內容。
四、自動加密操作員新建和保存的文件
DG加密的文件夾或驅動器具有保密繼承屬性,任何在加密文件夾或驅動器下生成的文件或文件夾都會保持加密狀態。管理員只需要進行一次加密,以後操作員新生成的文件都會自動加密。這一特性使保密可靠性與實際操作員無關,不會因為操作員的操作失誤或操作員的保密能力意識欠缺等原因導致機密數據的流失。
五、高強度分組加密技術
DG採用了符合AES標準的高強度分組加密技術,採用128分組和256位密鑰對數據進行全程編碼加密。
六、增強了系統的安全性
強制eKey登錄認證,拔離eKey鎖屏;拔離eKey後加密的文件或文件夾自動隱藏;可啟用eKey持有人身份認證功能。
C. druid資料庫密碼加密原理
現針對資料庫密碼加密方面,利用druid進行資料庫加密,實現項目配置文件中資料庫密碼密文存儲,一定程度上保證了數據安全。
配置方法:
1、數據源配置[spring-mybatis.xml文件]
<!-- 配置數據源 -->
<bean name="dataSource" class="com.alibaba.druid.pool.DruidDataSource"
init-method="init" destroy-method="close">
<property name="driverClassName" value="${jdbc.driver}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
<!-- 配置初始化大小、最小、最大 -->
<property name="initialSize" value="${jdbc.pool.init}" />
<property name="minIdle" value="${jdbc.pool.minIdle}" />
<property name="maxActive" value="${jdbc.pool.maxActive}" />
<!-- 配置獲取連接等待超時的時間 -->
<property name="maxWait" value="60000" />
<!-- 配置間隔多久才進行一次檢測,檢測需要關閉的空閑連接,單位是毫秒 -->
<property name="timeBetweenEvictionRunsMillis" value="60000" />
<!-- 配置一個連接在池中最小生存的時間,單位是毫秒 -->
<property name="minEvictableIdleTimeMillis" value="300000" />
<property name="validationQuery" value="${jdbc.validation.query}" />
<property name="testWhileIdle" value="true" />
<property name="testOnBorrow" value="false" />
<property name="testOnReturn" value="false" />
<!-- 打開PSCache,並且指定每個連接上PSCache的大小(Oracle使用)
<property name="poolPreparedStatements" value="true" />
<property name="" value="20" /> -->
<!-- 配置監控統計攔截的filters -->
<!--<property name="filters" value="stat" /> -->
<property name="filters" value="${jdbc.filters}" />
<property name="connectionProperties"
value="${jdbc.connectionProperties}"/>
</bean>
D. 電子商務的安全保密技術包括哪些方面
電子商務安全技術包括備份技術、加密技術、認證技術、安全電子商務協議SET以及訪問控制技術等。
1.備份技術。
所謂資料庫備份與恢復方案,目的是在資料庫系統故障並且短時間內難以恢復時,用存儲在備份介質中的數據將資料庫還原到備份時的狀態。數據備份根據資料庫管理系統類型的不同,有多種備份實施計劃。比如對SQLServer而言,有資料庫備份、事務日誌備份、增量備份和文件及文件組備份。電子商務信息系統的資料庫管理系統中必須建立詳細的備份與恢復策略。可以把電子商務資料庫的故障或障礙分為以下三類:系統故障、事務故障以及介質故障。當發生某種類型的故障時,為了把企業的損失減少到最低,必須在最短的時間內恢復數據,因此,根據企業的實際情況和數據類型與特點,制定出一套合理而經濟的備份和恢復策略是必要的。
2.認證技術。
認證技術可以阻止不擁有系統授權的用戶非法破壞敏感機密的數據,是資料庫管理系統為防止各種假冒攻擊安全策略。口令的識別是資料庫管理系統進行身份認證的一種方式,每個具體用戶都被系統事先分配一個固定的用戶名與密碼,電子商務系統的許多數據具有開放性特徵,因此必須對每個訪問系統的用戶的身份進行認證。在用戶對敏感關鍵的數據進行存取時,必須在客戶與資料庫管理系統之間進行身份認證。
3.訪問控制技術。訪問控制方案有三種,分別叫做自主存取控制(DAC)、強制存取控制(MAC)和基於角色的存取控制(RBAC)。當用戶對資料庫進行訪問時,系統會根據用戶的級別與許可權來判定此操作是允許的或者禁止的,從而達到保護敏感數據不被泄露或者篡改的目的。在資料庫管理系統中,不同的用戶擁有不同的許可權。因此必須保證某個用戶只能訪問或者存取與自己許可權相應的數據范圍。用戶所擁有的許可權包括兩方面的內容:一是用戶可以訪問資料庫中什麼樣的數據對象,二是用戶可以對這些數據對象進行什麼樣的操作。 4.加密技術。
資料庫管理系統的加密以欄位為最小單位進行,加密和解密通常是通過對稱密碼機制的密鑰來實現。數據加密時,資料庫管理系統把明文數據經過密鑰轉換為密文數據,資料庫中數據的存儲狀態都是密文數據,而在得到許可權的用戶查詢時,再將密文數據取出並解密,從而恢復明文數據。使資料庫的安全性得到進一步提升。電子商務系統中的一些商業機密數據是不允許普通用戶進行隨意訪問的。加密方案的目的是控制以上這些機密數據只能被得到相應授權的特定人群所訪問和存取。
5.安全電子商務協議SET。
SET(Secure Electronic Transaction)是實現在開放的網路(Internet或公眾多媒體網)上使用的付款卡(信用卡、借記卡和取款卡等)支付的安全事務處理協議。該協議是由Visa和MasterCard兩大信用卡組織牽頭,聯合GET、IBM、Microsoft、RSA、VeriS- ign等大公司一起開發的。SET協議的實現不需要對現有的銀行支付網路進行大的改造。
SET的目的是為了安全地在網上使用付款卡進行交易。因此SET制定了敏感信息的保密,支付的完整性,對商家、持卡者和收卡銀行的身份認證等安全技術要求。