① idea 如何查看方法被調用
idea全稱IntelliJ IDEA,是java語言開發的集成環境,是JetBrains公司的產品。 idea提倡的是智能編碼,目的是減少程序員的工作,其特色功能有智能的選取、豐富的導航模式、歷史記錄功能等,最突出的功能是調試(Debug),可以對Java代碼、JavaScript、JQuery等技術進行調試。
加密演算法
是旅居瑞士中國青年學者來學嘉和著名密碼專家J.Massey於1990年提出的。它在1990年正式公布並在以後得到增強。這種演算法是在DES演算法的基礎上發展出來的,類似於三重DES,和DES一樣IDEA也是屬於對稱密鑰演算法。發展IDEA也是因為感到DES具有密鑰太短等缺點,已經過時。IDEA的密鑰為128位,這么長的密鑰在今後若干年內應該是安全的。
類似於DES,IDEA演算法也是一種數據塊加密演算法,它設計了一系列加密輪次,每輪加密都使用從完整的加密密鑰中生成的一個子密鑰。與DES的不同處在於,它採用軟體實現和採用硬體實現同樣快速。
由於IDEA是在美國之外提出並發展起來的,避開了美國法律上對加密技術的諸多限制,因此,有關IDEA演算法和實現技術的書籍都可以自由出版和交流,可極大地促進IDEA的發展和完善。
IDEA曾今也是AES演算法標準的主要競爭者,其安全性已經在國際密碼年會上被證明。
在PGP(pretty good privacy)中,IDEA演算法被採用。
64-位數據分組被分成4個16-位子分組:xl,X2,x3,x4。這4個子分組成為演算法的第一輪的輸入,總共有8輪。在每一輪中,這4個子分組相列相異或,相加,相乘,且與6個16-位子密鑰相異或,相加,相乘。在輪與輪間,第二和第:個子分組交換。最後在輸出變換中4個子分組與4個子密鑰進行運算。
在每一輪中,執行的順序如下:(以下表述中的相加指的是兩個數mod 2^256 相加,例如:(a + b) mod p,其結果是a+b算術和除以p的余數,也就是說,(a+b) = kp +r,則 (a+b) mod p =r,又例如對於下列表述中的「(2)X2和第二個子密鑰相加」就是指用X2與第二個子密鑰的和除以2^16(即65536)後的余數。對於以下表述中的相乘,指的是:(a × b) mod p,其結果是 a × b算術乘法除以p的余數,又例如對於下列表述中的「(1)X1和第一個子密鑰相乘。」就是指用X1和第一個子密鑰相乘後的積除於(2^16+1)(即65537)後的余數。異或指的是不進位加法。)
(1)X1和第一個子密鑰相乘。
(2)X2和第二個子密鑰相加。
(3)X3和第三個子密鑰相加。
(4)X4和第四個子密鑰相乘。
(5)將第(1)步和第(3)步的結果相異或。·
(6)將第(2)步和第(4)步的結果相異或。
(7)將第(5)步的結果與第五個子密鑰相乘。
(8)將第(6)步和第(7)步的結果相加。
(9)將第(8)步的結果與第六個子密鑰相乘。
(10)將第(7)步和第(9)步的結果相加。
(11)將第(1)步和第(9)步的結果相異或。
(12)將第(3)步和第(9)步的結果相異或。
(13)將第(2)步和第(10)步的結果相異或。
(14)將第(4)步和第(10)步的結果相異或。
每一輪的輸出是第(11)、(12)、(13)和(14) 步的結果形成的4個子分組。將中間兩個分組分組交換(最後一輪除外)後,即為下一輪的輸入。
經過8輪運算之後,有一個最終的輸出變換:
(1) X1和第一個子密鑰相乘。
(2) X2和第二個子密鑰相加。
(3) X3和第三個子密鑰相加。
(4) X4和第四個子密鑰相乘。
最後,這4個子分組重新連接到一起產生密文。
產生子密鑰也很容易。這個演算法用了52個子密鑰(8輪中的每一輪需要6個,其他4個用與輸出變換)。首先,將128-位密鑰分成8個16-位子密鑰。這些是演算法的第一批8個子密鑰(第一輪六個,第二輪的頭兩個)。然後,密鑰向左環移25位後再分成8個子密鑰。開始4個用在第二輪,後面4個用在第三輪。密鑰再次向左環移25位產生另外8個子密鑰,如此進行D演算法結束。
解密過程基本上一樣,只是子密鑰需要求逆且有些微小差別,解密子密鑰要麼是加密子密鑰的加法逆要麼是乘法逆。(對IDEA而言,對於模256十1乘,全0子分組用256=-l來表示,因此0的乘法逆是0)。計運算元密鑰要花點時間,但對每一個解密密鑰,只需做一次。
關於IDEA中運用的很多概念,需要參考數論中的知識,如有疑問,可以參考以下資料:計算機密碼學(盧開澄著清華大學出版社出版),計算機密碼學及其應用,初等數論,數論導引(華羅庚著)等。關於IDEA運用的數學原理,均可在以上資料中獲得答案。
② idea怎麼查看jar里的類調用鏈
你要有這個jar對應的sources.jar才行,我這里以google的guava.jar為例,在maven倉庫中,有:
對於沒有相應的sources.jar的jar包,則看不到,jar包對應的sources.jar一般大公司的都會一起發布在網上。
③ IntelliJ IDEA中怎麼查看方法說明
clipse快捷鍵還是知道的,
在eclipse上看方法的文檔說明的時候,直接滑鼠放上去,就可以直接顯示出來方法說明文檔。
但是在新換的IntelliJ IDEA編輯器中就不好;
④ 用intelij IDEA 怎麼顯示一個類的所有方法
1、首先打開intelij IDEA應用程序,進入到編輯頁面中。
⑤ idea怎麼查看方法在哪裡調用
IntelliJ IDEA中可以在主菜單中選擇Navigate | Call Hierarchy命令查看一個Java方法調用樹(caller和callee兩個方向),但是不像Eclipse那樣可以查看類成員變數的調用樹。