一種密碼生成方法
2023-07-15 05:10:36
專利名稱:一種密碼生成方法
技術領域:
本發明涉及物理領域,尤其信息傳遞技術,特別涉及信息的加密技術, 具體是一種密碼生成方法。
背景技術:
現有技術中,密碼均保存在介質上。如,密碼數據固定依託在密碼卡 等有形載體上,或者由電子設備動態產生後傳輸到終端,如密碼發生器、 動態生成的校驗碼圖片等,或者由人工設定並保存在人體大腦中,如個人銀 行卡密碼。需要用戶自行設置。保存在有形載體上的密碼,因為是在投入 使用以前就預先設定,所以在製作、印刷、運輸、存放的各個環節中容易 洩露。而由電子設備動態產生的密碼,因為電子設備可以被監控,此外傳 輸途徑中也能被截取,所以也有洩露可能性。而由人工設定並人工保存的 密碼,需要設定人和使用人為同一人時才能防止洩漏,所以使用並不方便。
發明內容
本發明的目的是提供一種密碼生成方法,所述的這種密碼生成方法要 解決密碼保存方式不理想的技術問題。
本發明的這種密碼生成方法包括一個在信息載體中存貯密碼信息的過 程,其中,所述的信息載體包括一個服務端和至少一個客戶端,所述的服 務端和任意一個客戶端均分別為獨立的介質,在服務端中以矩陣方式存放 服務端密碼信息表,所述的服務端密碼信息表的行數從1到無窮大,服務
端密碼信息表的列數從2到無窮大,在服務端密碼信息表中至少預先放置
一列服務端密碼元素,將一個矩陣方式的客戶端密碼信息表分布放置在全 體客戶端中,全體客戶端按行數的遞增順序排列,任意一個客戶端均具有
一行客戶端密碼信息,任意一行客戶端密碼信息中均預先至少設置有明文狀態的客戶端密碼元素和一個隱蔽狀態的客戶端密碼元素,在服務端密碼 信息表矩陣中的任意一個坐標和客戶端密碼信息表矩陣中的任意一個坐標 之間均設立一個唯一對應關係,並將任意一個所述的唯一對應關係存儲在 服務端的介質中,由任意一個客戶端向服務端傳遞一個客戶端密碼元素和 該客戶端密碼元素的坐標,在服務端密碼信息表中根據存儲的坐標對應關 系找出其對應的服務端密碼元素及其坐標,在該服務端密碼元素所在行中 設置一個新服務端密碼元素,然後根據所述的新服務端密碼元素的坐標在 存儲的坐標對應關係進行運算獲得一個新客戶端密碼元素,再將所述的新 客戶端密碼元素傳遞到該客戶端,利用新客戶端密碼元素與客戶端中均置 的客戶端密碼元素組合構成密碼。
進一步的,通過數學運算、或者隨機產生、或者順序分配、或者變換 方式在服務端設定所述的新的服務端密碼元素。
進一步的,所述的服務端由計算機資料庫構成。
進二步的,所述的服務端密碼元素、或者客戶端密碼元素均由數字、 或者字母、或者圖形、或者聲音組成,或者由數字、字母、圖形和聲音的 任意組合形成。
進一步的,由客戶端向服務端傳遞的客戶端密碼元素中包含該客戶端 密碼元素的坐標信息。
本發明與已有技術相對照,其效果是積極和明顯的。本發明利用兩個 分離的二維矩陣動態數組分別存放服務端和客戶端的密碼信息表,在兩個 分離的二維矩陣動態數組中的元素的坐標之間設立密鑰並保存在服務端, 客戶端在投入使用之前不記載密碼,而在使用的時刻通過向服務端傳遞其 記載的客戶端密碼元素和在二維矩陣動態數組中的坐標來申請密碼,經過 服務端的密鑰運算之後才獲得密碼的組成元素並進一步生成最終密碼。在 製作、印刷、運輸、存放客戶端介質的各個環節中最終密碼並未完成,所 以沒有洩露密碼的可能性,而且密碼的組成元素在傳輸途徑中也不能單獨還原成最終密碼,所以安全性能大大增強。
圖1是本發明的密碼生成方法的一個實施例中的原理示意圖。
圖2是本發明的密碼生成方法的一個實施例中的另一個原理示意圖。
圖3是本發明的密碼生成方法的一個實施例中的另一個原理示意圖。
圖4是本發明的密碼生成方法的一個實施例中的另一個原理示意圖。 圖5是本發明的密碼生成方法的一個實施例中的另一個原理示意圖。 圖6是本發明的密碼生成方法的一個實施例中的另一個原理示意圖。 圖7是本發明的密碼生成方法的一個實施例中的另一個原理示意圖。 圖8是本發明的密碼生成方法的一個實施例中的另一個原理示意圖。 圖9是本發明的密碼生成方法的一個實施例中的另一個原理示意圖。 圖10是本發明的密碼生成方法的一個實施例中的另一個原理示意圖。
具體實施例方式
本發明的密碼生成方法包括一個在信息載體中存貯密碼信息的過程, 其中,所述的信息載體包括一個服務端和至少一個客戶端,所述的服務端 和任意"個客戶端均分別為獨立的介質,在服務端中以矩陣方式存放服務 端密碼信息表,所述的服務端密碼信息表的行數從1到無窮大,服務端密 碼信息表的列數從2到無窮大,在服務端密碼信息表中至少預先放置一列 服務端密碼元素,將一個矩陣方式的客戶端密碼信息表分布放置在全體客 戶端中,'全體客戶端按行數的遞增順序排列,任意一個客戶端均具有一行 客戶端密碼信息,任意一行客戶端密碼信息中均預先至少設置有明文狀態 的客戶端密碼元素和一個隱蔽狀態的客戶端密碼元素,在服務端密碼信息 表矩陣中的任意一個坐標和客戶端密碼信息表矩陣中的任意一個坐標之間 均設立一個唯一對應關係,並將任意一個所述的唯一對應關係存儲在服務 端的介質中,由任意一個客戶端向服務端傳遞一個客戶端密碼元素和該客 戶端密碼元素的坐標,在服務端密碼信息表中根據存儲的坐標對應關係找出其對應的服務端密碼元素及其坐標,在該服務端密碼元素所在行中設置 一個新服務端密碼元素,然後根據所述的新服務端密碼元素的坐標在存儲 的坐標對應關係進行運算獲得一個新客戶端密碼元素,再將所述的新客戶 端密碼元素傳遞到該客戶端,利用新客戶端密碼元素與客戶端中預置的客 戶端密碼元素組合構成密碼。
進一步的,通過數學運算、或者隨機產生、或者順序分配、或者變換 方式在服務端設定所述的新的服務端密碼元素。
進一步的,所述的服務端由計算機資料庫構成。
進一步的,所述的服務端密碼元素、或者客戶端密碼元素均由數字、 或者字母、或者圖形、或者聲音組成,或者由數字、字母、圖形和聲音的 任意組合形成。
進一步的,由客戶端向服務端傳遞的客戶端密碼元素中包含該客戶端 密碼元素的坐標信息。
在如圖l所示的實施例中,設A端為服務端,B端為客戶端。A (MXN) 和B (MXN)兩表中的各元素可以為數字、字母、圖形、聲音或其組合等。 M表示服務端密碼信息表的行,N表示密碼信息表的列,M、 N均可以趨向無 窮大。其中A表的每一位置的元素和B表每一位置的元素存在對應關係, 這些對應關係可以各個不同,也可以是統一的。如元素(Au)與元素(Bu) 兩者之間最簡單對應關係就是相同,即Au與Bu完全相同。
A表和B表制定好之後分別存放於A端與B端。A端可以為資料庫、存 儲器、數據表格等形式。B端的每一行的數據可以被承載在具體某個介質上, 如紙張、塑料卡片等,每個介質上承載的是還沒有完成的口令內容,只是 預製好的一部分。預製的數據可以明文顯示,也可以採用其它手段進行覆 蓋不顯現,需要以破壞性的方式解開。在本實施例中,預製的數據中,一 部分是明文的,另有一部分是被覆蓋的。
由此AB兩端已完成預先製作數據的過程。如圖2所示,在這個實施例中,完整口令產生的步驟如下
A表和B表制定好之後,A、 B端每行已經有兩個數據,B端的第三行數 據呈現在某個介質上,如圖3所示,其中Bw是明文顯示的,B32是被覆蓋 的(不可見)。
第一步由B端發起指令,對B中某一行數據需要產生口令,同時傳輸這 一行的某一個元素到A端。(通常要求這個元素在B端介質上是明文顯 示的。)比如按上圖要求對B3產生口令,B端傳輸元素(B31)至A端;
第二步A端得到B端傳來的信息(B31),如圖4所示,通過原始A、 B 兩端這一位置的對應關係(對應關係FO,找到A端的相應位置(A31), 即也找到了 A端的相應行Ar,
第三步如圖5所示,A端在元素(A31)所在行產生元素(A33),產生 方式可以通過數學運算、隨機產生、順序分配、變換等;
第四步如圖6所示,將八33通過A、 B兩端的對應關係F3,生成B33,並且 傳輸給B端的對應位置,並記錄在B端的相應介質上;
第五步同時,如圖7所示,A端指定B端對應行中的元素與B33配對使 用,至少需要一個,最多不限,並且這個元素要與最早第一步傳輸到A 端的元素(B31)不相同,通常要求這個(些)元素中至少有一個在B端
介質上不是明文顯示的,需要是隱蔽的。如上述的模型就是元素B32。也 就是指定最終口令所包含的組成元素,此時的口令元素就是B32與B33; 如圖8所示,B3的介質上此時應記錄了 B33。
以上是B端第三行數據的口令生成過程。口令的組成元素中, 一部分是 介質上原先預製產生的,並且被保護,便於預製好的介質在流通環節中不 存在安全隱患;另一部分組成元素是實時製作上去的,也可以說是動態產 生的。兩者相結合的使用保證了安全性。避免預製數據遺失或動態數據傳 輸過程中洩露帶來的不安全性。增強安全級別,並且可以安全地流通。
除了口令的生成,同時還可以對這組口令賦予其它屬性,也就是說這對口令不僅代表數據的正確性,還可以代表具體內容。比如可以賦予內容、 價值、價格、有效期、製作點等欄位屬性。這些屬性在A端產生並記錄, 同時傳輸到B端,並且記錄在對應介質上。我們稱為口令內容的後定義。
此時B端的這個具體介質上內容完整,不僅有完整的口令信息,而且承載
其它屬性內容。
口令的使用
由以上過程可見,此時B3這行的口令組成就是B32與B33。使用的時候, 將B33和解除覆蓋後得到的B32傳輸送往A端進行校驗,由B32通過對應關係 F2與A32對比,由B33通過對應關係F3與A33對比,兩組數據都要核對正確
時,如圖9所示,說明口令正確。如果口令還承載其它內容屬性,此時可
以執行其它內容的操作。 上述傳輸的方式,可以利用網際網路、電話、傳真、書信等,如果有必要
在傳輸過程中可以進行加密。記錄到B端介質上的形式可以是電子數據、
書寫、列印、蓋章等。
以上表述中A端與B端元素置換(行列互換)等變化,不影響表述方案
的成立。
上述表述中列舉為一個簡單模式,實際實現方案中表中元素多少不限,
動態生成的元素個數不限,口令組成的元素個數不限。如圖10所示,動態
生成的元素個數可以為兩個Bm(。+D和Bm(n+2), 口令組成的元素個數為四個
Bm2、 Bm3、 Bm(n+1, Bm(n+2),使用時必須傳輸這四個B端的元素進行校驗, 都驗證通過才說明口令正確。
權利要求
1.一種密碼生成方法,包括一個在信息載體中存貯密碼信息的過程,其特徵在於所述的信息載體包括一個服務端和至少一個客戶端,所述的服務端和任意一個客戶端均分別為獨立的介質,在服務端中以矩陣方式存放服務端密碼信息表,所述的服務端密碼信息表的行數從1到無窮大,服務端密碼信息表的列數從2到無窮大,在服務端密碼信息表中至少預先放置一列服務端密碼元素,將一個矩陣方式的客戶端密碼信息表分布放置在全體客戶端中,全體客戶端按行數的遞增順序排列,任意一個客戶端均具有一行客戶端密碼信息,任意一行客戶端密碼信息中均預先至少設置有明文狀態的客戶端密碼元素和一個隱蔽狀態的客戶端密碼元素,在服務端密碼信息表矩陣中的任意一個坐標和客戶端密碼信息表矩陣中的任意一個坐標之間均設立一個唯一對應關係,並將任意一個所述的唯一對應關係存儲在服務端的介質中,由任意一個客戶端向服務端傳遞一個客戶端密碼元素和該客戶端密碼元素的坐標,在服務端密碼信息表中根據存儲的坐標對應關係找出其對應的服務端密碼元素及其坐標,在該服務端密碼元素所在行中設置一個新服務端密碼元素,然後根據所述的新服務端密碼元素的坐標在存儲的坐標對應關係進行運算獲得一個新客戶端密碼元素,再將所述的新客戶端密碼元素傳遞到該客戶端,利用新客戶端密碼元素與客戶端中均置的客戶端密碼元素組合構成密碼。
2. 如權利要求1所述的密碼生成方法,其特徵在於通過數學運算、或者 隨機產生、或者順序分配、或者變換方式在服務端設定所述的新的服務端 密碼元素。
3. 如權利要求1所述的密碼生成方法,其特徵在於所述的服務端由計算 機資料庫構成。
4. 如權利要求1所述的密碼生成方法,其特徵在於所述的服務端密碼元 素、或者客戶端密碼元素均由數字、或者字母、或者圖形、或者聲音組成, 或者由數字、字母、圖形和聲音的任意組合形成。
5.如權利要求1所述的密碼生成方法,其特徵在於由客戶端向服務端傳 遞的客戶端密碼元素中包含該客戶端密碼元素的坐標信息。
全文摘要
一種密碼生成方法,包括一個在信息載體中存貯密碼信息的過程,信息載體包括一個服務端和至少一個客戶端,服務端和任意一個客戶端均分別為獨立的介質,在服務端中以矩陣方式存放服務端密碼信息表,將一個矩陣的客戶端密碼信息表分布放置在全體客戶端中,全體客戶端按行數的遞增順序排列,任意一個客戶端均具有一行客戶端密碼信息。在服務端密碼信息表矩陣中的任意一個坐標和客戶端密碼信息表矩陣中的任意一個坐標之間均設立一個唯一對應關係,並存儲在服務端的介質中。客戶端在投入使用之前不記載密碼,最終口令由密碼元素組成,密碼元素的一部分是預製的,另一部分動態生成,採用不同介質的載體和傳輸方式,沒有同時洩露的可能性,增強了安全性。
文檔編號H04L9/00GK101304307SQ20071004051
公開日2008年11月12日 申請日期2007年5月10日 優先權日2007年5月10日
發明者周葉明 申請人:上海恩方信息科技有限公司