誠邀您參加全球知名外匯經紀商OANDA的自營交易(Prop Trader)
報名OANDA自營交易(Prop Trader),並通過我們的考核,您就可以使用OANDA提供的資金進行交易,獲得高達90%的交易利潤分成。
全面升級——更多功能、更大靈活性!
優化了“固定最大虧損”,“每日虧損限制”等。查看詳情全新「Boost」計劃
500,000美元交易資金
您可以使用最高500,000美元的資金進行交易。
豐富的交易商品
您可以交易包括外匯、黃金、原油、股票指數等多種商品。
什麼是公鑰加密?說明結構與RSA的計算方法
在前述章節中,以傳送者與接收者持有相同密鑰的加密方式為前提,說明了替換式密碼。
上回文章:加密技術入門!替換式密碼與加密方式結構的初步解說
此原理即是當文字轉變為密碼的時候,只要雙方持有相同的密鑰,便可將密碼正確破解恢復。
但是其中存在著一個問題,即是一旦不慎洩漏密鑰,第三者就能夠解讀密碼。
由於至少會將密鑰資訊以普通文字(尚未加密的文字)傳送給對方一次,因此傳送時就有可能遭到竊聽導致密鑰外流。
另外,當發生戰爭時,若載有密碼表與密鑰的船隻或飛機落入敵方手中,敵人便可藉此破解密碼。
公鑰加密的方式即是為了解決這樣的問題而被研發誕生,在現代也廣泛運用於各種場合。
在區塊鏈的技術領域中,公鑰加密的角色亦被視為相當重要的技術。
加密公鑰雖然公開,但奇怪的是不能被第三者解讀
公鑰加密的使用方式如圖1所示。接收密碼的人會準備自己專屬的公鑰(a,b)與密鑰(p,q),並使用電腦先行計算,公鑰會公佈於網站頁面等處,密鑰則作為自己的機密資訊。
公鑰與密鑰為配對組合,如未使用相符的密鑰,就無法透過公鑰破解加密的文字。
如欲製作密碼並傳送給對方,就必須複製並利用對方公開的公鑰(a,b)製作密碼,再將該密碼傳送給對方。
對方在接收訊息之後,可透過自己才有的密鑰(p,q)進行計算,進而將密碼破解恢復成原本的文字來閱讀。
既然已經得知了密鑰,那麼是否可以使用該密鑰來做反向計算並破解密碼呢?
若能夠如此,第三者便能夠輕易破解密碼,因此發明了被稱為RSA的不可思議演算法,此方法將無法進行反向計算。
其基本的原理在於,雖然對兩個質數(1以及其他除了該數字本身以外無法除盡的整數)進行乘法相當簡單,但無論如何嘗試,卻都無法透過反向計算得出「乘法的結果數值」(因需要耗費龐大的計算時間,故難以實際計算完成)。
多虧此一發明,用於解密的密鑰洩漏給他人的可能性能降至為零,即使密碼被竊聽也無需擔心內容遭到破解。
公鑰加密「RSA」的計算方式示意圖
有鑒於RSA密碼的計算方式極為複雜,以下將以圖解加以說明。(針對計算方式的細節,建議可參考網站上的其他說明頁面。)
利用RSA密碼將原文的文字編碼(整數值)進行多次乘法,再將除不盡的數值(餘數)除以適當數值,並以此作為密碼的文字編碼。
圖2即是對原文的文字編碼直接透過餘數計算來進行加密。
整數值文字65代表文字「A」,除以29後得出餘數7。
若使用其他的數值、例如41作為除數,則A的餘數就會變成24。
當同時出現餘數8的時候,將29的餘數以文字「B」表示,而41的餘數則是文字「Z」。
如此運用餘數之後,將無法確認進行除法之前的數值為何。
此處還有一個更有趣的特質,即是在每次計算餘數時,若將文字編碼的數值進行多次乘法,就會恢復成原本的數字。
由於恢復成原本文字的條件極為複雜,因此將於其它的文獻資料中加以說明,在此將先以f代表成立此特質的「某種計算方式」,並在圖3解釋加密演算的流程。
此特質便是將原文A透過f算法重複計算N次,就會恢復成原文A。
雖然N的次數取決於對f進行餘數計算時所使用的數值b,但因b來自於兩個質數的乘法結果,故只要不知道這兩個質數,就無法算出N的次數。
若兩個質數為非常龐大的數值,便會如同先前所述地難以透過b來破解質數。
如此一來N就變成了機密。
(a,b)的兩個數字雖然作為公鑰而公諸於世,但是b會在f的算式中用於餘數計算,而a則是代表重複進行f的次數。
將f算法重複N次就會恢復成原本的文字,但重複a次卻會變成雜亂無章的數值而難以理解。
如此也就完成了密碼B。
由於無法進行f的反向計算,因此如欲破解密碼B,便需要確認計算的次數,並執行共計N次的f算法。
公鑰出現的時候也會同時產生密鑰(p,q),並能透過此p,q的數值算出剩餘的次數。
因為p,q只有密碼接收者才會知道,所以第三者無法破解密碼。
公鑰加密的方式最初是由RSA研發而生,但如今亦有被稱為橢圓曲線密碼學的其他方式可用。
其目前被廣泛運用於網站的SSH連線與IC卡電子證書等領域中。
本文來源OANDA日本官網上野 仁(Hitoshi Ueno)撰寫的文章。
上野 仁(Hitoshi Ueno),工程師(資訊工程),博士(工程)。
1984年在山梨大學完成碩士課程(主修計算機科學)後加入日立製作所。主要在系統程式開發實驗室、企業伺服器事業部等從事計算機體系結構和基礎軟體的研發工作。
2015年起任第一工業大學東京上野校區信息電子系統工學系教授。並且對生物訊號處理相關的程式開發和各種先進軟體的研究深感興趣。
虛擬貨幣(加密貨幣)教學
誠邀您參加全球知名外匯經紀商OANDA的自營交易(Prop Trader)
報名OANDA自營交易(Prop Trader),並通過我們的考核,您就可以使用OANDA提供的資金進行交易,獲得高達90%的交易利潤分成。
全面升級——更多功能、更大靈活性!
優化了“固定最大虧損”,“每日虧損限制”等。查看詳情全新「Boost」計劃
500,000美元交易資金
您可以使用最高500,000美元的資金進行交易。
豐富的交易商品
您可以交易包括外匯、黃金、原油、股票指數等多種商品。