⑴ C語言數字加密
/*
輸入1個四位數,將其加密後輸出。
方法是將該數每一位上的數字加9,然後除以10取余,做為該位上的新數字,最後將第1位和第3位上的數字互換,第2位和第4位上的數字互換,組成加密後的新數。
例:括弧內是說明
輸入
1257
輸出
The encrypted number is 4621(每一位上的數字加9除以10取余後,得0146,交換後得到4601)
*/
#include <stdio.h>
int main( )
{
int number, digit1, digit2, digit3, digit4, newnum;
scanf("%d", &number);
digit1 = number/1000;
digit2 = (number - 1000 * digit1)/100;
digit3 = (number - 1000 * digit1 - 100 * digit2)/10;
digit4 = number - 1000 * digit1 - 100 * digit2 - 10 * digit3;
digit1 += 9;
digit1 %= 10;
digit2 += 9;
digit2 %= 10;
digit3 += 9;
digit3 %= 10;
digit4 += 9;
digit4 %= 10;
//第三位數是1的情況不做考慮
newnum = digit3 * 1000 + digit4 * 100 + digit1 * 10 +digit2;
printf("The encrypted number is %d\n", newnum);
return 0;
}
⑵ 數字簽名與數字加密
數字簽名主要經過以下幾個過程:
信息發送者使用一單向散列函數(HASH函數)對信息生成信息摘要;
信息發送者使用自己的私鑰簽名信息摘要;
信息發送者把信息本身和已簽名的信息摘要一起發送出去;
信息接收者通過使用與信息發送者使用的同一個單向散列函數(HASH函數)對接收的信息本身生成新的信息摘要,再使用信息發送者的公鑰對信息摘要進行驗證,以確認信息發送者的身份和信息是否被修改過。
數字加密主要經過以下幾個過程:
當信息發送者需要發送信息時,首先生成一個對稱密鑰,用該對稱密鑰加密要發送的報文;
信息發送者用信息接收者的公鑰加密上述對稱密鑰;
信息發送者將第一步和第二步的結果結合在一起傳給信息接收者,稱為數字信封;
信息接收者使用自己的私鑰解密被加密的對稱密鑰,再用此對稱密鑰解密被發送方加密的密文,得到真正的原文。
數字簽名和數字加密的過程雖然都使用公開密鑰體系,但實現的過程正好相反,使用的密鑰對也不同。數字簽名使用的是發送方的密鑰對,發送方用自己的私有密鑰進行加密,接收方用發送方的公開密鑰進行解密,這是一個一對多的關系,任何擁有發送方公開密鑰的人都可以驗證數字簽名的正確性。數字加密則使用的是接收方的密鑰對,這是多對一的關系,任何知道接收方公開密鑰的人都可以向接收方發送加密信息,只有唯一擁有接收方私有密鑰的人才能對信息解密。另外,數字簽名只採用了非對稱密鑰加密演算法,它能保證發送信息的完整性、身份認證和不可否認性,而數字加密採用了對稱密鑰加密演算法和非對稱密鑰加密演算法相結合的方法,它能保證發送信息保密性。
⑶ Java編程如何給數字加密
最簡單的,用異或運算。
你也可以自己寫個加密方法啊。
比如說:利用unicode字元加密啊。假設一個數字a它的unicode值是1234,你自己設計個函數,比如說y=2x^3+3,得到一個新的unicode字元,然後把這個unicode字元轉換為字母,這個字母可能是漢字,但更可能是外國符文,反正一般人不會認出來的。你解密的時候,倒推一下就行了。
⑷ 簡單的數字加密
簡單加密,很簡單啊,
比如說,+6, 乘以3
得到的肯定是兩位數是把,
然後,在前面任意加兩位數,組成一個四位數,全部數據以四位數排列,
你自己要寫清楚,
這樣的話,直接破解,就麻煩多了,如果不知道,前面兩位是多餘的,呵呵
還可以採取,一定的規律, 比如 1 3 4 ,自己寫一組數據記錄下來,
然後, 前面加數據的時候,奇數,任意加,在前面,偶爾加在後面,
難道又增加了 呵呵~~
⑸ 如何數字簡單加密
比如多少乘多少除多少,這個就簡單啊,不就是反過來就可以了么。怎麼還不會哦。
⑹ 請簡述數字加密的過程
在對稱加密中,數據發送方將明文(原始數據)和加密密鑰一起經過特殊加密演算法處理後,使其變成復雜的加密密文發送出去。
接收方收到密文後,若想解讀原文,則需要使用加密密鑰及相同演算法的逆演算法對密文進行解密,才能使其恢復成可讀明文。在對稱加密演算法中,使用的密鑰只有一個,發收信雙方都使用這個密鑰對數據進行加密和解密。
(6)對數字進行加密擴展閱讀:
數字加密注意事項:
通過TCP三次握手進行連接,然後客戶端發送hello包到服務端,服務端回應一個hello包,如果客戶端需要再次發送數字證書, 則發送數字證書到客戶端。
客戶端得到伺服器的證書後通過CA服務驗證真偽、驗證證書的主體與訪問的主體是否一致,驗證證書是否在吊銷證書列表中。如果全部通過驗證則與伺服器端進行加密演算法的協商。
用證書中伺服器的公鑰加密對稱秘鑰發送給伺服器端,對稱秘鑰只能用伺服器的私鑰進行解密,當伺服器通過私鑰解密對稱秘鑰後。使用對稱秘鑰將客戶端請求的數據發送到客戶端,客戶端在用對稱秘鑰進行解密,從而得到想要的數據。