1. 程式人生 > >java前的部分了解(計算機小白)

java前的部分了解(計算機小白)

個數字 安全 密鑰 消息摘要 des 特點 沖突 aes 單向

一、加密

對稱加密: des 3des AES rc4 (數據加密) 會話密鑰

非對稱加密(成對:公鑰/私鑰(一個加密一個解密)):RSA DSA 密鑰交換

/ 數字簽名
(用私鑰加密摘要算法出的一串數字符號 得到密文,這個數字符號對應著一個文件之類的。
別人拿公鑰解開密文得到摘要計算出的數字符號再和通過摘要計算文件內容得到數字符號
一比對 如果一樣 就代表是你)---↓

{[一個文件。。。。]後面+(【比如用md5算法算這個文件】<- 私鑰加密)}用公鑰解 === 把文件用md5,
一致 則是你;

散列計算、消息摘要:MD5 sha1 sha256


二、
ubuntu下用 openssl(ssl安全套接層) 可以生成RSA密鑰對,


三、數據結構

1、數組:
增刪(有開銷:刪除添加要移位保證數據連續)慢、讀取快

2、鏈表:
添加 刪除 較快、讀取查詢 較慢

分為:單向鏈表(尾部指向下個地址)、雙向鏈表(頭部指向上一個地址、尾部指向下一個地址)

3、棧:
後進先出,先進後出;
遞歸、逆排序

4、隊列:
先進先出;後進後出
消息隊列

5、樹:
根節點、子節點(子節點..右節點...)、葉子節點
比他小放左邊 比他大放右邊------要查找時依次比較小就找左邊...
(前序排列、中序排列、後序排列)

6、哈希表:
哈希函數計算數據的地址
鍵值對---(K,V)key,value;由k值通過哈希計算出數據地址 然後存取數據V;
特點:存取速度快、無序、但容易發生哈希沖突(哈希計算出相同地址)--->解決:鏈表、再哈希算法

java前的部分了解(計算機小白)