发明名称 基于矩阵变换算法的隐私匹配方法
摘要 本发明公开了一种基于矩阵变换算法的隐私匹配方法,主要解决现有社交网中关于隐私匹配中的未能高效的寻求最佳好友的缺陷,其实现步骤为:(1)建立用户与证书管理机构CA的通信系统框架;(2)证书管理机构CA为用户提交的属性进行验证,为用户属性产生证书并进行相应证书管理;(3)经证书管理机构CA验证的用户,相互验证身份信息,利用基于矩阵变换算法实施用户两两之间的匹配。本发明同时考虑共同属性数目和个人偏好两个方面,通过计算两两用户之间的最大匹配值,实现了用户之间的最佳匹配,并用简单的矩阵变换代替以往算法中复杂的加解密计算,提高了移动用户的匹配效率,可用于移动社交网络中。
申请公布号 CN103826220A 申请公布日期 2014.05.28
申请号 CN201410091049.2 申请日期 2014.03.12
申请人 西安电子科技大学 发明人 朱晓妍;刘洁;师双双;雷小三;池浩田;陈增宝;姜顺荣;曹磊;苏阳;高曼飞
分类号 H04W12/02(2009.01)I;H04L9/32(2006.01)I 主分类号 H04W12/02(2009.01)I
代理机构 陕西电子工业专利中心 61205 代理人 王品华;朱红星
主权项 1.一种基于矩阵变换算法的隐私匹配方法,包括如下步骤:(1)建立用户与证书管理机构CA的通信系统框架,即任意一个用户通过蓝牙网络或者WiFi与其临近用户进行通信,通过3G或4G蜂窝网与证书管理机构CA进行通信,证书管理机构CA,用于为用户提交的属性进行验证,为用户属性产生证书并进行相应证书管理;(2)在用户与证书管理机构CA的通信系统框架中,利用基于矩阵变换算法进行隐私匹配:(2a)服务运营商预先设定常用属性并进行排序,得到公共属性集合I=<I<sub>1</sub>,I<sub>2</sub>,…,I<sub>i</sub>,…,I<sub>n</sub>>,并设定l个等级用来表示用户对不同属性的感兴趣的程度和权值矩阵W<sub>l×l</sub>,其中,I<sub>i</sub>为公共属性集合中的第i个属性,i∈(1,…,n),n为公共属性集合中元素的个数,l为正整数,W<sub>l×l</sub>用来表示用户对各属性的不同程度的偏好,W=(w<sub>ij</sub>)<sub>l×n</sub>,i∈(1,l),j∈(1,n),w<sub>ij</sub>是权值矩阵中的元素,通过下式计算得出:<maths num="0001"><![CDATA[<math><mrow><msub><mi>w</mi><mi>ij</mi></msub><mo>=</mo><mfenced open='{' close=''><mtable><mtr><mtd><mi>i</mi></mtd><mtd><mi>i</mi><mo>=</mo><mi>j</mi></mtd></mtr><mtr><mtd><mi>i</mi><mo>-</mo><mo>|</mo><mi>i</mi><mo>-</mo><mi>j</mi><mo>|</mo></mtd><mtd><mrow><mo>(</mo><mi>i</mi><mo>-</mo><mo>|</mo><mi>i</mi><mo>-</mo><mi>j</mi><mo>|</mo><mo>)</mo></mrow><mo>></mo><mn>1</mn></mtd></mtr><mtr><mtd><mn>1</mn></mtd><mtd><mrow><mo>(</mo><mi>i</mi><mo>-</mo><mo>|</mo><mi>i</mi><mo>-</mo><mi>j</mi><mo>|</mo><mo>)</mo></mrow><mo>&le;</mo><mn>1</mn></mtd></mtr></mtable></mfenced><mo>;</mo></mrow></math>]]></maths>(2b)用户根据运营商设定的公共属性集合和各个属性的不同偏好,创建个人属性特征信息矩阵U=(u<sub>ij</sub>)<sub>l×n</sub>,并将该特征信息矩阵U发送给证书管理机构CA,其中,u<sub>ij</sub>为属性特征信息矩阵中的元素,i表示属性的权值,i∈(1,l),j表示公共属性集合元素序号,j∈(1,n),若用户对公共属性集合中第j个属性设置的权值为i,则u<sub>ij</sub>=1,u<sub>xj</sub>=0,其中,x∈(1,l)且x≠i;(2c)证书管理机构CA收到用户的个人属性特征信息U后,对用户特征信息U进行初始化,为用户发放证书,并使用公钥加密算法对用户证书及相关信息进行公钥加密,并将加密信息发送给用户;(2d)对于发起交友请求的用户A,使用其私钥sk<sub>A</sub>将证书管理机构CA发送的加密信息利用公钥加密算法进行解密,并广播其属性信息和证书<img file="FDA0000475721090000021.GIF" wi="774" he="92" />等待临近用户响应其交友请求,其中,ID<sub>A</sub>为用户A身份标识,p<sub>A</sub>是由证书管理机构CA随机产生的质数,<img file="FDA0000475721090000022.GIF" wi="82" he="78" />经证书管理机构CA初始化的个人属性特征信息,<img file="FDA0000475721090000023.GIF" wi="428" he="88" />是证书管理机构CA用自己私钥sk<sub>CA</sub>对用户信息<img file="FDA0000475721090000024.GIF" wi="272" he="81" />进行的RSA签名,sk<sub>A</sub>和sk<sub>CA</sub>为由可信机构生成密钥长度为1024位的公钥加密算法私钥,||表示字符连接符;(2e)设B为其中一个响应用户A请求的临近用户,其个人属性特征信息矩阵为B<sub>l×n</sub>,在收到用户A的广播信息后,利用用户A的公钥pk<sub>A</sub>将用户A广播的信息利用公钥加密算法进行解密验证,验证成功后,得到矩阵:D=(d<sub>ij</sub>)<sub>l×n</sub>,并将矩阵D和用户B的个人信息发送给用户A,其中,d<sub>ij</sub>为矩阵D中的元素,<maths num="0002"><![CDATA[<math><mrow><msub><mi>d</mi><mi>ij</mi></msub><mo>=</mo><mfenced open='{' close=''><mtable><mtr><mtd><munderover><mi>&Sigma;</mi><mrow><mi>x</mi><mo>=</mo><mn>1</mn></mrow><mi>n</mi></munderover><msub><mi>p</mi><mi>B</mi></msub><mo>&CenterDot;</mo><msubsup><mi>a</mi><mi>ix</mi><mo>*</mo></msubsup></mtd><mtd><msub><mi>b</mi><mi>ij</mi></msub><mo>=</mo><mn>1</mn></mtd></mtr><mtr><mtd><munderover><mi>&Sigma;</mi><mrow><mi>x</mi><mo>=</mo><mn>1</mn></mrow><mi>n</mi></munderover><msubsup><mi>a</mi><mi>ix</mi><mo>*</mo></msubsup></mtd><mtd><msub><mi>b</mi><mi>ij</mi></msub><mo>=</mo><mn>0</mn></mtd></mtr></mtable></mfenced><mo>,</mo></mrow></math>]]></maths>pk<sub>A</sub>是由可信机构利用公钥加密算法生成的公钥,其密钥长度为1024位,p<sub>B</sub>是由证书管理机构CA随机产生的质数,<img file="FDA0000475721090000026.GIF" wi="56" he="78" />是用户A经初始化的个人属性特征信息<img file="FDA0000475721090000027.GIF" wi="78" he="78" />中的元素,i∈(1,l),x、j∈(1,n),l、n分别为矩阵D的最大行和最大列;(2f)根据用户B发送的矩阵D=(d<sub>ij</sub>)<sub>l×n</sub>及用户B的个人属性信息,用户A首先利用用户B的公钥pk<sub>B</sub>将其个人属性信息利用公钥加密算法进行解密验证,验证成功后,进行矩阵加法运算得到矩阵T=(t<sub>ij</sub>)<sub>l×n</sub>,进而得出中间矩阵<img file="FDA0000475721090000028.GIF" wi="242" he="93" />最后根据矩阵点乘运算得出最终矩阵H=(h<sub>ij</sub>)<sub>l×l</sub>,其中,t<sub>ij</sub>为矩阵T中的元素,t<sub>ij</sub>=(d<sub>ij</sub>+k<sub>i</sub>)modq<sub>A</sub>,<img file="FDA0000475721090000029.GIF" wi="49" he="90" />为矩阵T<sup>*</sup>中的元素,<img file="FDA00004757210900000210.GIF" wi="474" he="157" />h<sub>xy</sub>为最终矩阵H中的元素,<img file="FDA00004757210900000211.GIF" wi="267" he="92" />w<sub>xy</sub>是权值矩阵W<sub>l×l</sub>中的元素,i、x、y∈(1,l),j∈(1,n),l、n分别为矩阵T、T*的最大行和最大列,q<sub>A</sub>是由证书管理机构CA随机产生的质数,pk<sub>B</sub>是由可信机构利用公钥加密算法生成的公钥,其密钥长度为1024位;(2g)根据最终矩阵H=(h<sub>ij</sub>)<sub>l×l</sub>,用户A计算得出最终匹配值M<sub>A→B</sub>,并将匹配值M<sub>A→B</sub>发送给用户B,其中<img file="FDA0000475721090000031.GIF" wi="419" he="150" />l为正整数。
地址 710071 陕西省西安市太白南路2号