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

怎麼給漢字加密

發布時間: 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);
}

熱點內容
三星伺服器黑屏怎麼回事 發布:2025-05-09 03:25:23 瀏覽:348
杭州上門換密碼鎖要多少錢 發布:2025-05-09 03:25:13 瀏覽:76
sqltracesqlserver 發布:2025-05-09 03:18:11 瀏覽:123
小學編程步驟 發布:2025-05-09 03:11:46 瀏覽:139
androidstudio格式 發布:2025-05-09 03:06:32 瀏覽:421
區域網ftp驗證下載技術 發布:2025-05-09 03:06:25 瀏覽:211
pythonstring 發布:2025-05-09 03:00:45 瀏覽:881
奧比編程下載 發布:2025-05-09 02:59:25 瀏覽:844
mysqlsql優化 發布:2025-05-09 02:49:49 瀏覽:268
索光存儲 發布:2025-05-09 02:20:39 瀏覽:544