[發明專利]一種基于屬性密碼的選課系統在審
| 申請號: | 201910810257.6 | 申請日: | 2019-08-29 |
| 公開(公告)號: | CN110599376A | 公開(公告)日: | 2019-12-20 |
| 發明(設計)人: | 闞海斌;莫偉琦;張亮;劉百祥;吳小川 | 申請(專利權)人: | 復旦大學 |
| 主分類號: | G06Q50/20 | 分類號: | G06Q50/20;G06F21/60;G06F21/62;G06F16/22;G06F16/25 |
| 代理公司: | 31200 上海正旦專利代理有限公司 | 代理人: | 陸飛;陸尤 |
| 地址: | 200433 *** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 登陸管理單元 教師單元 課程信息 學生單元 教師管理模塊 學生管理模塊 查詢 功能操作 結構要求 課程管理 課程數據 身份信息 身份驗證 時間成本 屬性組合 信息解密 選課模塊 學生模塊 加密方 隱私性 組屬性 教學設備 公鑰 加密 訪問 教師 學生 | ||
1.一種基于密碼屬性的選課系統,其特征在于,包括:登陸管理單元、教師單元、學生單元和教務員單元;其中,教師單元包括查看選課學生模塊、修改課程信息模塊;學生單元包括查詢課程信息模塊、選課模塊、退課模塊和查詢本人修讀情況模塊;教務員單元包括課程管理模塊、學生管理模塊、教師管理模塊;
登陸管理單元負責進行學生、教師、管理員的身份驗證;如果驗證成功,則根據身份進入教師單元、學生單元或教務員單元,并進行相應的功能操作;
教師單元主要用于教師查看自己所開課程的選課情況以及修改課程信息;其中,教師通過查看選課學生模塊可以查看當前選課人數,選課學生信息,包括學生姓名、學號、專業、性別、年級等個人信息;通過修改課程信息模塊可以修改課程的教學相關信息,包括課程資源、課程安排、評分依據;
學生單元主要用于學生進行選課、退課、查詢選課情況;其中,學生通過選課模塊可以查詢當前開設課程信息,包括開課時間、開課教室、任課教師、選課限制等信息,然后決定是否選擇修讀該課程;通過查詢本人修讀情況來查看當前已選擇課程的信息;同時也可以通過退課模塊退出已經選擇的課程;
教務員單元主要用于教務員對課程、教師和學生的管理;其中,通過課程管理模塊,教務員可以添加課程,刪除課程以及修改課程信息;通過學生管理模塊,教務員可以添加學生,刪除學生以及修改學生信息;通過教師管理模塊,教務員可以添加學生、刪除學生以及修改學生信息;
系統所需的學生、教師、教務員、課程信息存儲在信息數據庫中;其中,學生信息包括:姓名、學號、密碼、性別、專業、學院、年級、所在室驗室、權限密鑰、選課列表;課程信息包括:序號、名稱、開課時間、開課教師、開課院系、授課教師、人數上限、選課限制描述、學生名冊、課程資源、課程安排、評分依據、選課權限;教師信息包括:姓名、工號、密碼、性別、專業、學院、職務、權限密鑰;教務員信息包括:姓名、工號、密碼、性別、學院、權限密鑰;
系統密碼屬性的構建包括四個階段,具體如下:
(一)系統初始化階段:輸入安全參數,產生公共參數PK和主密鑰MK;
(1)該階段首先選擇一個階為素數p,生成元為g的雙線性群G0;然后隨機選擇兩個小于p的非負整數α,β作為指數;e為雙線性映射:G0×G0→G1,其中G1為雙線性群;
公鑰發布如下:
主密鑰如下:
MK=(β,gα)
(2)將總屬性集即身份、性別、專業、學院、職務、年級、所在實驗室的每個屬性用二進制字符串s表示,然后通過哈希函數H將二進制字符串s隨機映射為G0中的一個元素H(s);
(3)最后隨機生成一個字符串sc作為驗證選課權限的密鑰;
(二)密鑰生成階段
該階段輸入為屬性集S;輸出密鑰SK;
其中,α、β、r、H、g取自初始化階段;
(三)加密階段:加密明文并設置權限
該階段的輸入為明文M以及具有解密權限的屬性要求,包括屬性以及他們的組合;
輸出為包含訪問控制樹的密文CT;
(1)構造訪問控制樹T:
1)將屬性映射為葉子結點;
每個葉子結點x包含一個值H(s),其中H即為系統初始化階段的屬性映射函數,s為表示某個屬性的字符串;
2)根據屬性的組合關系構造內部結點;
每個內部結點x包含兩個值:子結點數numx、門限值kx;
構造方法是:根據屬性的組合關系設置numx、kx;其中kx表示在numx個子結點中至少有kx個子結點為真時,x才為真;當根結點為真時,才能解出密文;
3)構造每個結點的多項式
按高度從高到低為每個結點x選擇一個多項式qx;對于每個結點的多項式,首先決定它的常數項:將根結點記為R,隨機選擇一個小于等于p的非負整數s作為其多項式的常數項;其他結點的常數項為該結點的序號index(x),序號index(x)為從左至右計數順序下父結點的第幾個子結點,代入父結點parent(x)的多項式所得的常數,即qparent(x)(index(x));然后決定多項式的最高次冪dx,為kx-1;
4)加密密文,所得結果如下:
其中,Y為葉子結點的集合,M為明文,T為訪問樹;α,h,g,e,H取自系統初始化階段,S為根結點R對應多項式的qR(0);att(y)為葉子結點y對應的屬性;
(四)解密階段:
該階段的輸入為用戶密鑰SK,密文CT;
若解密成功,輸出明文M;否則輸出無權限信息;
解密過程如下:葉子結點通過雙線性映射及生成元的性質進行解密,如公式(1);內部結點可以通過子結點解出的秘密值,利用拉格朗日插值法進行解密,如公式(2);根結點解出的秘密值可以結合公式來(3)來對密文進行解密;
其中,i=att(x),即屬性x對應葉子結點i,Di,D′i為密文CT中內容,Cx,C′x為密鑰SK中內容,e為初始化階段的雙線性函數;
其中,i=index(z),S′x={index(z):z∈Sx},Sx是值為真的子結點的子集且:|Sx|=kx;若Sx不存在,則x為假;index及kx的含義同樹的構造過程;
代入公式(1)后得:
其中,
其中,R為根結點,r為C為CT中內容,D為SK中內容,DecryptNode函數見公式(1)。
2.根據權利要求1所述的基于密碼屬性的選課系統,其特征在于,系統的工作流程如下:
(1)用戶登陸
用戶進入登陸管理單元,輸入賬號和密碼;系統從信息數據庫中查找對應的賬號和密碼,如果不存在或不匹配,則提示賬號或密碼錯誤;如果賬號和密碼正確,則根據用戶身份進入不同單元;
(2)教務員單元
教務員登陸后進入教務員單元,選擇進入課程管理模塊、學生管理模塊或教師管理模塊;
當進入學生或教師管理模塊后,可以選擇添加、刪除或修改功能;
當選擇了添加功能后,輸入學生的姓名、學號、密碼、性別、專業、學院、年級、所在室驗室或者教師的姓名、工號、密碼、性別、專業、學院、職務等信息;系統將對以上信息進行如下處理:
1)生成用戶的權限密鑰;將每個用戶屬性集即個人信息,作為密鑰生成階段的輸入,得到權限密鑰SK;
2)將學生的姓名、學號、密碼、性別、專業、學院、年級、所在室驗室、權限密鑰或教師的姓名、工號、密碼、性別、專業、學院、職務、權限密鑰存儲入信息數據庫;
當選擇了刪除功能后,通過學號或姓名搜索學生、通過工號或姓名搜索教師來選擇需要刪除的用戶,然后將該用戶信息從數據庫中刪除;
當選擇了修改的功能后,通過學號或姓名搜索學生、通過工號或姓名搜索教師來選擇需要修改的用戶,并輸入需要修改的信息,系統將修改數據庫的相應信息,并且重新生成該用戶的權限密鑰;
當選擇了添加功能后,輸入序號、名字、開課時間、開課教室、院系、教師、人數上限、課程資源、課程安排、學生名單、評分依據,并可以設置每種信息是否公開,如果不公開,可以設置訪問者所需具備的屬性集;最后輸入該課程的選課限制,即選課者需具備的屬性集;
系統將對以上信息作如下處理:
1)對于公開信息包括序號、名字、開課時間、開課教室等,以明文形式存儲入數據庫;
2)對于非公開信息包括課程資源、課程安排、學生名單等,以明文和訪問者所需具備的屬性集作為加密階段的輸入,得到密文CT1,將其存儲入數據庫;
3)對于選課限制,以系統初始化階段生成的選課密鑰sc作為明文和選課者所需具備的屬性集作為加密階段的輸入,得到密文CT2,將其存儲入數據庫中;
當選擇了刪除功能后,通過課程公開信息包括為序號、名字,來檢索課程,然后選擇需要刪除的課程,系統將該課程的所有信息從數據庫中刪除;
當選擇了修改的功能后,通過課程公開信息包括序號、名字,來檢索課程,然后選擇需要更改的課程,并輸入需要修改的信息,系統將修改數據庫的相應信息;如修改的是非公開信息,則重新加密后存儲入數據庫;
(3)學生單元
學生進入選課系統后,進入查詢課程信息模塊、選課模塊、退課模塊、查看修讀情況模塊;
當進入查詢課程信息模塊時,需輸入課程的序號或名字;系統根據輸入查找數據庫得到相應課程信息,并將公開信息顯示;對于非公開信息,系統先從數據庫得到該學生的權限密鑰,然后以權限密鑰和非公開信息即教務元模塊的CT1作為輸入,進行解密階段;如果解密成功,則顯示相應信息,否則不顯示;
當查詢課程信息后,對課程進行選課操作;系統先從數據庫得到該學生的權限密鑰,然后以權限密鑰和課程的選課限制即教務元模塊的CT2作為輸入,進行解密階段;如果將CT2解密為sc,則該學生能夠選擇該課程,系統將該生加入該課程的學生名單中并更新數據庫,并將該課程加入該生的課程列表并更新數據庫;否則提示選課不成功;
當選擇課程修讀情況功能時,系統從數據庫中得到學生已選課程列表并顯示;在顯示界面可以進行退課操作,退課后該課程將會從該生的課程集合中刪除,該生將從該課程的學生名單中刪除;
(4)教師單元
教師進入選課系統后,可以選擇查看選課學生模塊和修改課程信息模塊;
當選擇查看所開課程的學生信息時,系統用教師密鑰解密課程的學生名單,如果滿足要求,則可以解密出明文從而查看到信息,反之則不能;
當選擇修改課程信息時,輸入需修改的信息,系統將更新數據庫中的信息。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于復旦大學,未經復旦大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910810257.6/1.html,轉載請聲明來源鉆瓜專利網。





