當前位置:首頁 » 密碼管理 » 怎麼給漢字加密

怎麼給漢字加密

發布時間: 2025-01-18 20:49:44

① 怎麼用凱撒密碼加密一句中文

凱撒密碼作為一種最為古老的對稱加密體制,在古羅馬的時候都已經很流行,他的基本思想是:通過把字母移動一定的位數來實現加密和解密。明文中的所有字母都在字母表上向後(或向前)按照一個固定數目進行偏移後被替換成密文。例如,當偏移量是3的時候,所有的字母A將被替換成D,B變成E,以此類推X將變成A,Y變成B,Z變成C。由此可見,位數就是凱撒密碼加密和解密的密鑰。我對「怎麼用凱撒密碼加密一句中文」產生了疑問,實際上解決方法可以有很多種,例如用數組中不斷地「大、風、方……」這些詞的簡單位移,事實上經過搜索,我選擇了使用的變換來完成。即,可以用漢字對應的字元碼來進行變換操作,這樣出來的還是漢字。比如漢字「一」是0x4e00,凱撒移位為1的話0x4e00+1=0x4e01,對應的漢字是「丁」,如果移位為三,就是0x4e03,對應漢字是「七」。將漢字范圍內的整型轉換為16進制字元串作為後綴,前面加入u,形成對應的unicode值。這段代碼並不復雜,遇到的問題在於:當我在main函數調用時,注釋掉的該行(如下)不能夠實現我把轉義字元去掉,即最後輸出的是u593a這種形式,而非unicode值對應的「太」。只要把得到的報文中的「」換成「」,我想就能正常地將Unicode輸出成中文了,首先想到的是使用字元串的方法。使用(「\「,「「),但是發現輸出結果沒有任何變化。 解決方法是:查了下API文檔,方法的定義是:public String replaceAll( String regex,String replacement) 。

② 有什麼加密能把中文加密成只有字母和數字的加密演算法

可以用Base64編碼中文,但Base64里可能出現/和=這兩個符號.如果用漢字內碼的十六進製表示,可以達到只有數字和字母的效果,解碼也比較容易.

③ 如何用c語言加密和解密漢字

漢字應該是char類型的數據。你可以用強制類型轉換將其轉換為ASCII碼,加密的時候加上2,然後下次解密的時候減去2,在強制轉換為char類型的數據。代碼大概就像這樣:

int JiaMi(char s)
{
return (int)(s + 2);
}

char JieMi(int code)
{
return (char)(code - 2);
}

熱點內容
2012文件伺服器如何新建用戶 發布:2025-01-19 02:43:10 瀏覽:884
android復試 發布:2025-01-19 02:39:11 瀏覽:654
c獲取文件夾中 發布:2025-01-19 02:33:48 瀏覽:547
如何查看360瀏覽器保存的密碼 發布:2025-01-19 02:27:14 瀏覽:94
源碼分享站 發布:2025-01-19 01:21:26 瀏覽:911
安卓如何設置方向鎖定生效 發布:2025-01-19 01:21:25 瀏覽:72
iis上傳限制 發布:2025-01-19 01:14:52 瀏覽:16
我的世界寶可夢伺服器181 發布:2025-01-19 01:12:32 瀏覽:183
如何用雲伺服器掛游戲 發布:2025-01-19 01:09:19 瀏覽:211
電腦系統還原如何清除緩存 發布:2025-01-19 01:08:08 瀏覽:782