TWI695292B - 使用訊息盲化的密碼裝置及其密碼處理方法 - Google Patents

使用訊息盲化的密碼裝置及其密碼處理方法 Download PDF

Info

Publication number
TWI695292B
TWI695292B TW107147575A TW107147575A TWI695292B TW I695292 B TWI695292 B TW I695292B TW 107147575 A TW107147575 A TW 107147575A TW 107147575 A TW107147575 A TW 107147575A TW I695292 B TWI695292 B TW I695292B
Authority
TW
Taiwan
Prior art keywords
cryptographic
cryptographic processing
string
blinding
modulus
Prior art date
Application number
TW107147575A
Other languages
English (en)
Other versions
TW202026932A (zh
Inventor
陳冠華
陳順雄
Original Assignee
新唐科技股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 新唐科技股份有限公司 filed Critical 新唐科技股份有限公司
Priority to TW107147575A priority Critical patent/TWI695292B/zh
Priority to CN201911364338.4A priority patent/CN111385092B/zh
Application granted granted Critical
Publication of TWI695292B publication Critical patent/TWI695292B/zh
Publication of TW202026932A publication Critical patent/TW202026932A/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • H04L9/302Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the integer factorization problem, e.g. RSA or quadratic sieve [QS] schemes

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

本發明係提供一種使用訊息盲化的密碼裝置,包括:一訊息盲化電路,用以取得一輸入字串,並依據一隨機常數對該輸入字串進行訊息盲化處理以產生一盲化字串,其中該盲化字串為該輸入字串加上該隨機常數與一預定模數之乘積;以及一密碼處理電路,用以依據該預定模數對該盲化字串進行一密碼處理以產生一密碼處理結果。

Description

使用訊息盲化的密碼裝置及其密碼處理方法
本發明係有關於密碼裝置,特別是有關於一種使用訊息盲化的密碼裝置及其密碼處理方法。
隨著資訊科技的發展,使用密碼技術以保護資訊的重要性也愈來愈高。在密碼技術中,RSA演算法已被廣泛地使用。因為RSA演算法對於旁道攻擊(side-channel attack)相當脆弱,故需要對輸入至RSA演算法的明文或密文先進行訊息盲化以防止被旁道攻擊估算出RSA演算法所使用的金鑰。然而,傳統的訊息盲化技術的運算複雜度較高,例如需使用乘法、加法、除法、及指數運算,無論是採用硬體電路或軟體實現傳統的訊息盲化技術,均會造成較高的成本及運算負擔。
因此,需要一種使用訊息盲化的密碼裝置及其密碼處理方法以解決上述問題。
本發明係提供一種使用訊息盲化的密碼裝置,包括:一訊息盲化電路,用以取得一輸入字串,並依據一隨機常數對該輸入字串進行訊息盲化處理以產生一盲化字串,其中該盲化字串為該輸入字串加上該隨機常數與一預定模數之乘積;以及一密碼處理電路,用以依據該預定模數對該盲化字串進行一密碼處理以產生一密碼處理結果。
本發明更提供一種使用訊息盲化的密碼處理方法,用於一密碼裝置,該密碼處理方法包括:取得一輸入字串;依據一隨機常數對該輸入字串進行訊息盲化處理以產生一盲化字串,其中該盲化字串為該輸入字串加上該隨機常數與一預定模數之乘積;以及依據該預定模數對該盲化字串進行一密碼處理以產生一密碼處理結果。
為使本發明之上述目的、特徵和優點能更明顯易懂,下文特舉一較佳實施例,並配合所附圖式,作詳細說明如下。
第1圖為RSA演算法之加密/解密流程的示意圖。
如第1圖所示,RSA演算法10之流程可分為加密(方塊11)及解密(方塊12)。在方塊11,對明文M進行加密(encrypt)之計算方式如式(1)所示:
Figure 02_image001
其中(N,e)為公鑰(public key),N為RSA演算法之模數,C為加密後所產生的密文,e為加密指數。
在方塊12,對密文C進行解密(decrypt)的計算方式如式(2)所示:
Figure 02_image003
其中,(N,d)為私鑰(private key),d為解密指數。意即,解密方需使用其私鑰對所接收的密文C進行指數及模數運算以得到原本的明文M。
然而,RSA演算法對於旁道攻擊(side-channel attack)相當脆弱,因此,也發展出訊息盲化(message blinding)技術並整合至RSA演算法,使得輸入至RSA演算法的明文M及密文C可產生隨機且不可預測的變化,使得攻擊方無法用多筆已知的輸入來觀察運算或結果的差別以推測出金鑰,從而預防旁道攻擊,例如是差分電力分析攻擊(differential power analysis attack)。
然而,傳統的訊息盲化技術需搭配指數盲化(exponential blinding)技術,雖然可使用一隨機變數v i 對原本欲輸入至RSA演算法的明文或密文進行訊息盲化,但最後在訊息解盲化(unblinding)以獲得RSA演算法所對應輸出的密文或明文時需要計算出隨機變數v i 的模反元素(modulus inverse)v f 的e次方,其中e例如為公鑰,且v i v f ≡1(mod N)。模反元素v f 例如可用式(3)表示:
Figure 107147575-A0305-02-0006-1
其中k為自然數,N為RSA演算法所使用的模數(modulus)。意即,若使用傳統的訊息盲化技術以計算出模反元素v f ,需要使用乘法、加法、除法、及指數運算。無論使用硬體電路或軟體實現密碼裝置,均會造成相當大的運算負擔。
第2A圖為依據本發明一實施例中之密碼裝置的方塊圖。密碼裝置100例如可由積體電路(integrated circuit,IC)中的硬體邏輯電路所實現,且可用於解密或加密,其中加密之流程係在第2A圖之實施例進行說明,且解密之流程係在第2B圖之實施例進行說明。如第2A圖所示,密碼裝置100包括一隨機數產生電路120、一訊息盲化電路130、及一密碼處理電路140。
隨機數產生電路120例如可隨機產生一隨機變數 k(例如為一自然數),並傳送至訊息盲化電路130。訊息盲化電路130係用以對所取得的明文M進行訊息盲化,例如可產生一盲化明文M’。密碼處理電路140係用以對訊息盲化電路130所產生的盲化明文M’進行一密碼處理(cryptographic processing),例如可使用RSA演算法或相關的快速演算法實現。在一些實施例中,隨機數產生電路120可整合至訊息盲化電路130之中。
舉例來說,訊息盲化電路130例如可依據所接收的隨機變數k將明文M進行運算以得到盲化明文M’,其中明文M及盲化明文M’之關係如式(4)所示:M'=M+kN (4)
其中,k即為隨機數產生電路120隨機產生的自然數,N例如為一預定模數(modulus)。因為k為隨機變數,可使得明文M產生隨機且不可預測的變化,而且式(4)中僅包括加法及乘法運算,因此更容易由硬體電路或由軟體所實現。在一些實施例中,隨機變數k例如可為16~32位元的隨機變數,且可視所需的安全性強度進行調整。
詳細而言,訊息盲化之過程可利用式(4)所產生的盲化明文M’進行簡化。因為在有限場的關係(即模數N),做取餘數mod N之運算(映射),所以若在密碼處理電路140採用RSA演算法進行密碼處理,則密文C=M e mod N=(M') e mod N。若明文M=13、模數N=19、且公鑰e=1,則將明文M對模數N取餘數,則可計算出13 mod 19 = 13。
假設隨機數產生電路120所產生的隨機變數 k=3,若利用訊息盲化電路130將明文M進行訊息盲化,則
Figure 02_image013
。將明文M’對模數N取餘數,則可計算出70 mod 19 = 13。
舉例來說,若在RSA之運算過程的第一個遞迴運算(iteration)中是將明文M乘以一常數=5再對模數N取餘數,意即計算
Figure 02_image015
。類似地,若將盲化明文M’取代明文M,則需計算
Figure 02_image017
。需注意的是,若在密碼處理電路140仍採用相同的模數N,因為在RSA演算法之運算過程中仍然會執行多次計算mod N之結果,這會使得盲化明文M’之運算結果與未使用訊息盲化的明文M之運算結果相同。
因此,密碼處理電路140會將預定模數N轉換為一調整模數
Figure 02_image019
,使得有限場模數的數值可擴大,以使盲化明文M’在RSA運算的中間值可與明文M在RSA運算的中間值不同,進而達到訊息盲化之目的。在一實施例中,假設密碼處理電路140所使用的金鑰長度為4096位元,意即明文M、加密指數E、模數N皆為4096位元。若RSA演算法採用之基數為2 32,則調整模數
Figure 02_image019
則為4096+32位元之數值,且盲化明文M’亦為4096+32位元之數值。
在一實施例中,密碼處理電路140所使用的RSA演算法可用模組指數運算(modular exponentiation)之演算法所實現,例如為H演算法(H-algorithm)或L演算法(L-algorithm),但本發明並不限於此。
舉例來說,在H演算法中,可從最高位元(most significant bit,MSB)至最低位元(least significant bit,LSB)進行模組乘法運算。H演算法之虛擬程式碼如下所示: Algorithm: H-algorithm(M,E,N) 1.
Figure 02_image021
2. W=CS1(
Figure 02_image019
, R); 3. P=MM(M, W,
Figure 02_image019
); 4. Q=MM(1, W,
Figure 02_image019
); 5. for i=(k-1) to 0 { Q=MM(Q, Q,
Figure 02_image019
); if (E[i])=1) Q=MM(P,Q,
Figure 02_image019
); } 6. Q=MM(1, Q,
Figure 02_image019
); 7. return CS2(Q, N);
其中,模數
Figure 02_image019
可由函式N_Bar(N)計算而得,其中函式N_Bar(N)之細節將詳述於後。其中數值R=2 4096+64。函式CS1之為H演算法之預處理計算函式,函式CS2則為H演算法之後處理計算函式,例如可輸出Q mod N之結果,意即將4096+32位元之模組運算結果Q處理為4096位元之函式輸出結果。函式MM之功能為模組運算(modular multiplication),例如可使用蒙哥馬利模組乘法(Montgomery Modular Multiplication),但本發明並不限於此。需注意的是,在用於加密的此實施例中,H演算法之函式的輸入欄位分別為明文M、公鑰E、及模數N。當利用訊息盲化電路130對明文M進行盲化後所得到的盲化明文M’會取代明文M以做為H演算法之輸入。
簡單來說,在第2A圖之密碼處理電路140所執行的H演算法中所採用的模數
Figure 02_image019
是由原本的預定模數N利用函式N_Bar推導而得,可使得盲化明文M’對調整模數
Figure 02_image019
的取餘數的模組運算之中間結果與原本明文M對預定模數N的取餘數之模組運算之中間結果不同,進而防止旁道攻擊而達到保護資料之目的。需注意的是,當上述H演算法用於加密時,所產生的結果即為密文C,且與未採用訊息盲化的RSA演算法所產生的密文C相同。此外,調整模數
Figure 02_image019
之特性係根據在密碼處理電路140所執行的RSA演算法所採用的基數(radix),例如radix-2 r,且調整模數
Figure 02_image019
之最低r位元皆為1。
在此實施例中,函式N_Bar之流程例如可由下列的虛擬程式碼表示: Algorithm: N_Bar(N) { 1. Find
Figure 02_image023
;
Figure 02_image025
; 2.
Figure 02_image027
3.
Figure 02_image029
4.
Figure 02_image031
5.
Figure 02_image033
6.
Figure 02_image035
7.
Figure 02_image037
8.
Figure 02_image039
9.
Figure 02_image041
10.
Figure 02_image043
11. return
Figure 02_image045
}
需注意的是,上述虛擬程式碼係用於基數為radix-2 32的RSA演算法。此外,
Figure 02_image047
的數值是用4位元表示,意即
Figure 02_image047
從最高位元至最低位元分別為
Figure 02_image049
為了便於說明,在上述實施例中,假設RSA演算法的基數為radix-2 4,則主要考慮上述虛擬程式碼中的第1段的運算。舉例來說,N=19,以二進位表示為0001_0011,意即
Figure 02_image051
。接著,依據虛擬程式碼中的第1段以分別計算出
Figure 02_image053
,例如:α0=1
Figure 107147575-A0305-02-0012-2
由所計算出的α0、α1、α2、及α3之數值即可得到α=01012=510。因此,利用
Figure 107147575-A0305-02-0012-4
之方程式即可求得調整模數
Figure 107147575-A0305-02-0012-5
之數值,例如
Figure 107147575-A0305-02-0012-7
。若使用調整模數
Figure 107147575-A0305-02-0012-8
進行RSA演算法之運算,在給定M=13、k=3、N=19的前述實施例中,對盲化明文M’進行第一個遞迴運算時需計算:
Figure 107147575-A0305-02-0012-10
70×5 mod 95=350 mod 95=65。因此,可得知利用調整模數
Figure 107147575-A0305-02-0012-9
對盲化明文M’進行餘數運算時,會與利用預定模數N對明文M進行餘數運算的結果不同,因此可達到訊息盲化之目的。
第2B圖為依據本發明另一實施例中之加解密裝置的方塊圖。在另一實施例中,RSA演算法的解密過程亦可使用加解密裝置100。舉例來說,加解密裝置100之輸入可為密文C,如第2B圖所示。訊息盲化電路130係接收來自隨機數產生電路120所產生的隨機變數K,並依據隨機變數K對密文C進行訊息盲化以產生盲化密文C’。接著,密碼處理電路140可同樣依據上述H演算法進行解密運算。詳細而言,當加解密裝置100用於解密時,密碼處理電路140所執行的H演算法之輸入分別為盲化密文C’、私鑰D、及模數N,意即可執行函式H-algorithm(C’,D,N)。需注意的是,密碼裝置100之加密過程與解密過程是類似的,其差別僅在於密碼裝置100之輸入字串為明文M或密文C,以及加密過程所使用的公鑰E及解密過程所使用的私鑰D。簡單來說,在第2B圖之密碼處理電路140所執行的H演算法中所採用的模數
Figure 02_image019
是由原本的預定模數N利用函式N_Bar推導而得,可使得盲化密文C’對調整模數
Figure 02_image019
的取餘數的模組運算之中間結果與原本密文C對預定模數N的取餘數之模組運算之中間結果不同,進而防止旁道攻擊而達到保護資料之目的。意即,若在密碼處理電路140仍採用相同的模數N,因為在RSA演算法之運算過程中仍然會執行多次計算mod N之結果,這會使得盲化密文C’之運算結果與未使用訊息盲化的RSA演算法所產生的密文C之運算結果相同。
詳細而言,本發明第2A~2B圖中之密碼裝置100可用於加密處理或解密處理。舉例來說,密碼裝置100所接收的輸入字串可為明文M或密文C。無論輸入字串為明文M或密文C,訊息盲化電路130均是利用隨機數產生電路120所產生的隨機變數K對輸入字串進行訊息盲化以產生盲化字串,且密碼處理電路140則對盲化字串進行一密碼處理以產生一密碼處理結果。若輸入字串為明文M,則密碼處理電路140是使用盲化明文M’、公鑰E、及模數N以進行上述密碼處理以產生密文C。若輸入字串為密文C,則密碼處理電路140是使用盲化密文C’、私鑰D、及模數N以進行上述密碼處理以產生明文M。
第3A~3B圖為依據本發明另一實施例中之密碼裝置的方塊圖。如第3A~3B圖所示,在另一實施例中,密碼裝置300例如可由可程式化的處理器的軟體所實現。舉例來說,密碼裝置300可包括一處理器310、一記憶體單元320、及一儲存裝置330。
處理單元310例如可為中央處理器(CPU)、一般用途處理器(general-purpose processor)等等,但本發明並不限於此。
記憶體單元320為一隨機存取記憶體,例如是動態隨機存取記憶體(DRAM)或靜態隨機存取記憶體(SRAM),但本發明並不限於此。儲存裝置330為一非揮發性記憶體(non-volatile memory),例如可為一硬碟機(hard disk drive)、一固態硬碟(solid-state disk)、一快閃記憶體(flash memory)、或一唯讀記憶體(read-only memory),但本發明並不限於此。
舉例來說,儲存裝置330可儲存一密碼處理程式340及一作業系統350(例如可為Windows、Linux、MacOS、嵌入式作業系統等等),且處理單元310係將作業系統350及密碼處理程式340讀取至記憶體單元320並執行。
密碼處理程式340係用以執行RSA演算法或其快速演算法。密碼處理程式340例如包括一隨機數產生模組341、一訊息盲化模組342、及一密碼處理模組343,其中隨機數產生模組341、訊息盲化模組342、及密碼處理模組343之程式碼的功能係分別類似於第2A~2B圖之密碼裝置100中的隨機數產生電路120、訊息盲化電路130、及密碼處理電路140。本發明領域中具有通常知識者當可將隨機數產生電路120、訊息盲化電路130、及密碼處理電路140所執行之功能轉換為相應的程式碼,故其細節於此不再詳述。
第4圖為依據本發明一實施例中之使用訊息盲化的密碼處理方法的流程圖。
在步驟S410,取得一輸入字串。輸入字串例如可為明文M或密文C,明文M或密文C例如可為一預定長度(例如4096位元,非限定)的字串,若欲進行密碼處理的整個輸入字串長度大於預定長度,則可將輸入字串切割為一或多個符合預定長度的部分字串。舉例來說,密碼裝置100所接收的輸入字串可為明文M或密文C。無論輸入字串為明文M或密文C,訊息盲化電路130均是利用隨機數產生電路120所產生的隨機變數K對輸入字串進行訊息盲化以產生盲化字串,且密碼處理電路140則對盲化字串進行一密碼處理以產生一密碼處理結果。若輸入字串為明文M,則密碼處理電路140是使用盲化明文M’、公鑰E、及模數N以進行上述密碼處理以產生密文C。若輸入字串為密文C,則密碼處理電路140是使用盲化密文C’、私鑰D、及模數N以進行上述密碼處理以產生明文M。
在步驟S420,依據一隨機常數 k對輸入字串進行訊息盲化以產生盲化字串,其中該盲化字串為該輸入字串加上該隨機常數 k與一預定模數N之乘積。
在步驟S430,依據預定模數N對盲化字串進行一密碼處理以產生一密碼處理結果。舉例來說,上述密碼處理例如為RSA演算法或其快速演算法,且具有一預定基數(radix)。
第5圖為依據本發明第4圖之實施例中之步驟S430的流程的示意圖。
在第4圖之實施例中,步驟S430可包括下列步驟:
步驟S431:對該預定模數N進行一模數調整處理以得到一調整模數
Figure 02_image073
。舉例來說,上述模數調整處理例如為函式N_Bar所示。若在密碼處理電路140中之RSA演算法所採用的基數為radix-2 r,則調整模數
Figure 02_image073
的最低r位元均為1,其中r為自然數。
步驟S432:依據該調整模數
Figure 02_image073
對該盲化字串進行指數及餘數運算以得到該密碼處理結果。舉例來說,上述指數運算例如可採用模組指數運算之演算法,例如可使用H-演算法或L-演算法,或是其他類型之模組指數運算之演算法。
綜上所述,本發明係提供一種使用訊息盲化的加解密裝置及其加解密方法,其可降低訊息盲化之運算複雜度,故相較於習知的訊息盲化之演算法,本發明之加解密的運算速度較快。此外,因為運算成本降低,故可提昇本發明中之加解密裝置的運算效能並降低功耗。
本發明雖以較佳實施例揭露如上,然其並非用以限定本發明的範圍,任何所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可做些許的更動與潤飾,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。
10:RSA演算法 11、12:方塊 100:密碼裝置 120:隨機數產生電路 130:訊息盲化電路 140:密碼處理電路 300:密碼裝置 310:處理器 320:記憶體單元 330:儲存裝置 340:密碼處理程式 341:隨機數產生模組 342:訊息盲化模組 343:密碼處理模組 350:作業系統 S410-S430、S431-S432:步驟。
第1圖為RSA演算法之加密/解密流程的示意圖。 第2A圖為依據本發明一實施例中之密碼裝置的方塊圖。 第2B圖為依據本發明另一實施例中之密碼裝置的方塊圖。 第3A~3B圖為依據本發明另一實施例中之密碼裝置的方塊圖。 第4圖為依據本發明一實施例中之使用訊息盲化的密碼處理方法的流程圖。 第5圖為依據本發明第4圖之實施例中之步驟S430的流程的示意圖
100:密碼裝置
120:隨機數產生電路
130:訊息盲化電路
140:密碼處理電路

Claims (10)

  1. 一種使用訊息盲化的密碼裝置,包括:一訊息盲化電路,用以取得一輸入字串,並依據一隨機常數對該輸入字串進行訊息盲化處理以產生一盲化字串,其中該盲化字串為該輸入字串加上該隨機常數與一預定模數之乘積;以及一密碼處理電路,用以依據該預定模數對該盲化字串進行一密碼處理以產生一密碼處理結果。
  2. 如申請專利範圍第1項所述之使用訊息盲化的密碼裝置,其中該密碼處理為RSA演算法。
  3. 如申請專利範圍第2項所述之使用訊息盲化的密碼裝置,其中該輸入字串為一明文,且該密碼處理結果為一密文。
  4. 如申請專利範圍第2項所述之使用訊息盲化的密碼裝置,其中該輸入字串為一密文,且該密碼處理結果為一明文。
  5. 如申請專利範圍第2項所述之使用訊息盲化的密碼裝置,其中該密碼處理電路更對該預定模數進行一模數調整處理以得到一調整模數,並依據該調整模數對該盲化字串進行一指數及餘數運算以得到該密碼處理結果,其中該RSA演算法具有一基數2r,且該調整模數的最低r位元均為1,其中r為自然數。
  6. 如申請專利範圍第5項所述之使用訊息盲化的密碼裝置,其中該指數及餘數運算係依據H-演算法或L-演算法。
  7. 一種使用訊息盲化的密碼處理方法,用於一密碼裝置,該密碼處理方法包括:取得一輸入字串; 依據一隨機常數對該輸入字串進行訊息盲化處理以產生一盲化字串,其中該盲化字串為該輸入字串加上該隨機常數與一預定模數之乘積;以及依據該預定模數對該盲化字串進行一密碼處理以產生一密碼處理結果。
  8. 如申請專利範圍第7項所述之使用訊息盲化的密碼處理方法,其中該輸入字串為一明文,且該密碼處理結果為一密文。
  9. 如申請專利範圍第7項所述之使用訊息盲化的密碼處理方法,其中該輸入字串為一密文,且該密碼處理結果為一明文。
  10. 如申請專利範圍第7項所述之使用訊息盲化的密碼處理方法,其中該密碼處理為RSA演算法,其具有一基數2r,且該密碼處理所使用的一調整模數的最低r位元均為1,其中r為自然數。
TW107147575A 2018-12-28 2018-12-28 使用訊息盲化的密碼裝置及其密碼處理方法 TWI695292B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW107147575A TWI695292B (zh) 2018-12-28 2018-12-28 使用訊息盲化的密碼裝置及其密碼處理方法
CN201911364338.4A CN111385092B (zh) 2018-12-28 2019-12-26 使用信息盲化的密码装置及其密码处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW107147575A TWI695292B (zh) 2018-12-28 2018-12-28 使用訊息盲化的密碼裝置及其密碼處理方法

Publications (2)

Publication Number Publication Date
TWI695292B true TWI695292B (zh) 2020-06-01
TW202026932A TW202026932A (zh) 2020-07-16

Family

ID=71218518

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107147575A TWI695292B (zh) 2018-12-28 2018-12-28 使用訊息盲化的密碼裝置及其密碼處理方法

Country Status (2)

Country Link
CN (1) CN111385092B (zh)
TW (1) TWI695292B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI823223B (zh) * 2021-12-30 2023-11-21 新唐科技股份有限公司 安全資料傳輸的方法及裝置
CN114679281B (zh) * 2022-03-15 2023-12-01 北京宏思电子技术有限责任公司 一种基于rsa的联合签名生成方法及装置
CN114978641A (zh) * 2022-05-13 2022-08-30 北京紫光展锐通信技术有限公司 数据处理方法、装置及设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100223478A1 (en) * 2009-02-27 2010-09-02 Certicom Corp. System and method for performing exponentiation in a cryptographic system
TW201106198A (en) * 2009-08-06 2011-02-16 Phison Electronics Corp Data scramble and reverse-scranble method, data processing method, and controller and storage system thereof
TW201702864A (zh) * 2015-07-09 2017-01-16 華邦電子股份有限公司 加密計算方法、裝置以及電腦軟體產品

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103780386B (zh) * 2012-10-23 2017-02-15 航天信息股份有限公司 基于身份的盲签名方法和装置
US9584320B1 (en) * 2014-12-23 2017-02-28 EMC IP Holding Company LLC Blinding function in elliptic curve cryptography
US10594471B2 (en) * 2015-03-20 2020-03-17 Cryptography Research, Inc. Multiplicative blinding for cryptographic operations
CN105939191B (zh) * 2016-07-08 2019-04-16 南京理工大学 一种云存储中密文数据的客户端安全去重方法
CN107968999B (zh) * 2016-10-18 2021-04-20 华为技术有限公司 一种隐私保护方法及相关设备
CN107508666B (zh) * 2017-08-31 2021-01-19 华南理工大学 一种基于rsa和sha-512的低成本数字签名sopc设计方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100223478A1 (en) * 2009-02-27 2010-09-02 Certicom Corp. System and method for performing exponentiation in a cryptographic system
TW201106198A (en) * 2009-08-06 2011-02-16 Phison Electronics Corp Data scramble and reverse-scranble method, data processing method, and controller and storage system thereof
TW201702864A (zh) * 2015-07-09 2017-01-16 華邦電子股份有限公司 加密計算方法、裝置以及電腦軟體產品

Also Published As

Publication number Publication date
TW202026932A (zh) 2020-07-16
CN111385092A (zh) 2020-07-07
CN111385092B (zh) 2023-09-19

Similar Documents

Publication Publication Date Title
JP4875700B2 (ja) ランダム化されたモジュラー多項式のリダクション方法およびそのためのハードウェア
US8428252B1 (en) Using multiples above two with running totals in elliptic curve cryptography scalar multiplication acceleration tables
KR101610917B1 (ko) 암호 알고리즘의 복호 방법 및 그것을 포함하는 암호 시스템
CN109039640B (zh) 一种基于rsa密码算法的加解密硬件系统及方法
TWI695292B (zh) 使用訊息盲化的密碼裝置及其密碼處理方法
US20080240443A1 (en) Method and apparatus for securely processing secret data
US8976960B2 (en) Methods and apparatus for correlation protected processing of cryptographic operations
US9680647B2 (en) Method of using a token in cryptography
TW200822664A (en) Modular reduction using folding
US8548161B2 (en) Crytographically transforming data text
US20200344056A1 (en) Device and method for protecting execution of a cryptographic operation
JP2019515353A (ja) 暗号化べき乗アルゴリズムへのセーフ−エラーフォールトインジェクション攻撃に対する対策
US11206136B1 (en) Method for multiplying polynomials for a cryptographic operation
CN107896142B (zh) 一种执行模幂运算的方法及装置、计算机可读存储介质
US12052348B2 (en) Computation device using shared shares
US11444767B1 (en) Method for multiplying polynomials for a cryptographic operation
KR100737667B1 (ko) 암호 체계의 개인 키 저장 및 복원 방법과 장치
JP2004361969A (ja) 暗号化方法
CN111368317B (zh) 一种计算机数据加密系统及方法
Tan et al. High-performance ring-LWE cryptography scheme for biometric data security
JP4616169B2 (ja) モンゴメリ乗算剰余における変換パラメータの計算装置、方法およびそのプログラム
WO2019224676A1 (en) System and method for performing a fully homomorphic encryption on a plain text
US11847938B2 (en) Combining regular and symbolic NTTs using co-processors
CN114547645A (zh) 浮点数处理方法、装置、终端以及存储介质
JP2012242539A (ja) セキュリティシステム及びマイクロコンピュータ