韓 帥,劉勝利,3,谷大武
1.上海交通大學 電子信息與電氣工程學院,上海200240
2.密碼科學技術全國重點實驗室,北京100878
3.成都衛士通信息產業股份有限公司 摩石實驗室,北京100070
功能加密(functional encryption,FE)[1-3]是一種靈活的加密模式,由Boneh 等人于2011 年[1]首次提出并給出正式定義.通過對傳統加密的推廣和擴展,功能加密支持密文上的精細化訪問控制.傳統的加密方案如公鑰加密方案(public-key encryption,PKE) 提供了“全有或全無” 的訪問控制,僅私鑰sk 的持有者能夠從密文中解密恢復出明文消息,而其他任何人都不能從密文中獲得關于明文的任何信息.而功能加密提供了更為精細的訪問控制.具體而言,功能加密的訪問控制能力由一個函數族F所刻畫.私鑰sk 的持有者可以為函數族F中的任一函數生成一個功能密鑰skf.持有功能密鑰skf者對一個加密消息x的密文ct 進行解密,僅能獲得函數值f(x),而對x的其它信息一無所知.
一般而言,根據支持的函數族F,功能加密可以分為兩類.第一類功能加密可以支持所有多項式時間可計算的函數[4-7].雖然這類功能加密支持的函數族非常大,但是其構造往往非常復雜,需要使用不可區分混淆[6]、多線性映射[8]等很強的密碼工具.因此,這類功能加密難以實際應用在現實場景中.第二類功能加密僅支持一些特殊的函數族,如內積函數族[9-14]、二次函數族[15-19]等.這類功能加密往往構造較為高效,無需使用不可區分混淆、多線性映射等復雜密碼工具,更適合應用于現實場景中.雖……