使用jsencrypt在web前端對字符串進行Ras加密

話不多說,上代碼

實例代碼

下面方法,在網頁中先引入jsencrypt.min.js。然后調用ToEncrypt方法示例輸出加密,解密后的結果。

<script  src="/js/jsencrypt.min.js"></script>
//加密測試function ToEncrypt(){// 假設這是從服務器獲取的公鑰(通常是通過HTTPS)  var privateKey = `-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQEAtYlkBiWSjQ42TCzGVOfvJxap7aT/ODwf0tjqOeBNDQvjLzHI\noafjFk9McdyTgOpPx2gXRZuuRkjuVDVqdPRqMGKpM/YDU64IImNFBtkM7dUuufa0\njJNE/SRHy4Wb1ayvLW6/O6J471ZV7/hpKmDkUPCuVPADHa8z4bYpp0dalniNj1LL\nNOkbwyyxLFKGUwyaTk+RyXw5pn4jU2ZtnSfSANEOIOKP7pzLUztZx7f9dSw2tuMs\nWy91UFZHrtMdDU0vZjMbMZUR9DtQJsN6di2+1dMluWBHuHwf9+ydItVo2SGGgZ50\nDfw4N4vR7Vgh6fTF0oLanIB0fIe2m0piBVXsqwIDAQABAoIBAG16bNL0J7xfXMl1\nmyorMWPOXC5P+gaM49hBLog2x+DdUWXtzQQIfn++1Og50M7G/9PO53H4IBKM+wXX\nrNrZZ4zEgywt6fW2F3u9iCxIC28GyIYnzNyWF93d2lpXuhITcRWiGzu4kNwtoef1\nVF7VTfuuGkRo9kgZl91AAUC7XFsvVbEYS3rVHtJntZrIct6QkoLRuBZIFVl6UhVb\nUijQVX4bHs44uNNqSgYDD9TegTNCP4oCjF7KJYpmXy/0RMGdMOSCGtlKVBl8MIka\n5YliPLRVyEiFpn1U96vwQvQvrRsFtSCMeLrDHg2AcvToSaqGHzWLql0plVSfXOgC\nZC7STiECgYEAxoZqz1gH9dXTgz3Rp0d8Q32uGmvBSC43BwjoDASwvMRWa8QEyo68\nF/vnw+ZqwyfXBfg4NXoDdi40bv6WvooePiEXCoy7ElaNrC5wuIoIfQ2w0g1fsCjL\nHrJ3+mK+vKejt7Xa9v+EH+b+hW8fItSCjhGYtiTvFenDuOfqqZTvPtsCgYEA6hfj\nXKHIolALjLQVtsumaBZUsTA+9vpz+YecPOupgZxP9M2I1AF2+D56sIjNCu3Xpltb\nsy1hNiQYaxJr3mFirevrBFxMgCoaXgow8TEIT0HYQxaSomKHdb07sexydbB1o5dR\n69XTnp3B5cL/FGbO47AHfc1imb3XWsNljHoF6nECgYAfy2dPzcl4lcZKPpxVLh24\nsWgw0xEhfkVR2xtO0XF8yfUNTVd3GWUGclGsDjsLBlZpnldiOShUxRGgtSVvXq95\nQ9Ns3R0Y0sPdz5I9+91gKdEn0vyAOghN4kdU0nu5ux99TKLE7Cc89MHOnP1flqlS\nF39drIyd9dJiysHKZw/qAQKBgQDbKLongx9/NklZ1U9u74I/eIiZyn1oZFonhxpy\nvn7XZSxGGBa9xRFIn9XlaG3uiXWXvXhAa3/TXD+wHnL2o13rTi+cyXylkMVWvVvM\nswcAjLiXNo7ZkD0ZsawtixwtqqK4IXcEwA97NF7PaJu+0fFnoOmikaJ6JQ11X/G2\nbpcTQQKBgG1z+BLLed2uU6NK37UvdXLu03c9T12jEh0WyX0e4P6CjlteWt1NYDtq\nxQ/VnfQgdMoBb3NE9AEUUYUIiqCDyRtKlS5rolD4Ie0/FvnQlhjZ64uv6ptFvHFo\nGmT4f8YLqF+NdXaXcYgNHPDB43wCQ2GVeVvNEgIAItAw1TuRG7KC\n-----END RSA PRIVATE KEY-----\n`;var publicKey =`-----BEGIN RSA PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtYlkBiWSjQ42TCzGVOfv\nJxap7aT/ODwf0tjqOeBNDQvjLzHIoafjFk9McdyTgOpPx2gXRZuuRkjuVDVqdPRq\nMGKpM/YDU64IImNFBtkM7dUuufa0jJNE/SRHy4Wb1ayvLW6/O6J471ZV7/hpKmDk\nUPCuVPADHa8z4bYpp0dalniNj1LLNOkbwyyxLFKGUwyaTk+RyXw5pn4jU2ZtnSfS\nANEOIOKP7pzLUztZx7f9dSw2tuMsWy91UFZHrtMdDU0vZjMbMZUR9DtQJsN6di2+\n1dMluWBHuHwf9+ydItVo2SGGgZ50Dfw4N4vR7Vgh6fTF0oLanIB0fIe2m0piBVXs\nqwIDAQAB\n-----END RSA PUBLIC KEY-----\n`;// 實例化JSEncrypt對象  var encryptor = new JSEncrypt();  encryptor.setPublicKey(publicKey);  // 要加密的數據  var plaintext = "Hello, RSA234234!";  // 使用公鑰加密數據  var encrypted = encryptor.encrypt(plaintext);  // 將加密后的數據發送到服務器(例如,通過AJAX請求)  // ...  console.log('Encrypted:', plaintext);console.log(encrypted);console.log('Encrypted:', encrypted);// 實例化JSEncrypt對象并設置私鑰  var decryptor = new JSEncrypt();  decryptor.setPrivateKey(privateKey);  // 使用私鑰解密數據  var decrypted = decryptor.decrypt(encrypted);  // 輸出解密后的數據  console.log('Decrypted:', decrypted);  
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/44921.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/44921.shtml
英文地址,請注明出處:http://en.pswp.cn/web/44921.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

synchronized關鍵字詳解

文章目錄 synchronized使用示例實現原理鎖的升級synchronized與可見性synchronized與原子性synchronized與有序性 synchronized synchronized是Java提供的關鍵字譯為同步&#xff0c;是Java中用于實現線程同步的一種機制。它可以確保在同一時間只有一個線程能夠執行某段代碼&a…

【Python系列】數字的bool值

&#x1f49d;&#x1f49d;&#x1f49d;歡迎來到我的博客&#xff0c;很高興能夠在這里和您見面&#xff01;希望您在這里可以感受到一份輕松愉快的氛圍&#xff0c;不僅可以獲得有趣的內容和知識&#xff0c;也可以暢所欲言、分享您的想法和見解。 推薦:kwan 的首頁,持續學…

泌尿系統疾病病人的護理

一、泌尿系統疾病病人的一般護理要點 對于泌尿系統疾病的病人&#xff0c;護理是至關重要的。首先&#xff0c;要密切觀察病人的生命體征&#xff0c;包括體溫、脈搏、呼吸和血壓。 飲食方面&#xff0c;應根據病人的具體病情進行調整。例如&#xff0c;對于有水腫的病人&#…

js登陸驗證

當開始制作網頁時&#xff0c;就需要做一個判斷&#xff0c;不管在第幾頁進入&#xff0c;都要加一個登陸驗證&#xff0c;只有用戶有賬號&#xff0c;才能進入網頁&#xff0c;瀏覽網頁信息。下面就來看一下&#xff0c;使用JavaScript幾行代碼實現登陸驗證。 首先 登錄頁是i…

vue父組件樣式穿透修改子組件樣式

在 Vue 中&#xff0c;使用父組件樣式穿透到子組件通常不推薦&#xff0c;因為它破壞了樣式的作用域隔離&#xff0c;但如果你確實需要這樣做&#xff0c;可以使用深度選擇器。Vue 2 使用 ::v-deep&#xff0c;而 Vue 3 使用 /deep/ 或 ::v-deep 都可以。 以下是使用深度選擇器…

MVC之 IHttpModule管道模型《二》

》》》注意&#xff1a;在http請求的處理過程中&#xff0c;只能調用一個HttpHandler&#xff0c;但可以調用多個HttpModule。 HTTP Modules ASP.NET請求處理過程是基于管道模型的&#xff0c;這個管道模型是由多個HttpModule和HttpHandler組成&#xff0c;當請求到達HttpMod…

java-mysql-insert 操作

在 Java 中&#xff0c;使用 JDBC 插入數據到 MySQL 數據庫是非常常見的操作。以下是一個詳細的步驟&#xff0c;展示如何使用 JDBC 插入數據到 MySQL 數據庫。 ### 一、準備工作 #### 1. 下載并安裝 MySQL 如果您還沒有安裝 MySQL&#xff0c;可以從 MySQL 官方網站下載并安…

UART編程

Q:為什么使用串口前要先在電腦上安裝CH340驅動&#xff1f; 中斷的作用&#xff1f; 環形buffer的作用&#xff1f; static和valitate的作用 三種編程方式簡介 也可以通過DMA方式減小CPU資源的消耗 直接把數據在SRAM內存和UART模塊進行傳輸 &#xff0c;流程&#xff1a; …

玩家自行定制內存將古老的386 PC內存升級到64MB容量

比爾蓋茨曾說&#xff1a;“無論對誰來說&#xff0c;640K內存都足夠了。” 如果你是一個還停留在 30 針 SIMM 時代的老式電腦愛好者&#xff0c;那么你的內存升級選擇是相當有限的。不過&#xff0c;YouTube 上的一個頻道已經展示了如何將古老的 386 系統內存升級到令人"…

【AI應用探討】—對抗學習(AL)應用場景

目錄 一、圖像領域 二、自然語言處理&#xff08;NLP&#xff09; 三、安全領域 四、其他領域 五、醫療健康領域 六、游戲與娛樂領域 七、機器人與自動化領域 八、科研與教育領域 九、物聯網與邊緣計算 十、金融科技 十一、能源與環境 十二、社會科學與人文研究 十…

Linux內核編譯安裝 - Deepin,Debian系

為什么要自己編譯內核 優點 定制化&#xff1a;你可以根據自己的硬件和需求配置內核&#xff0c;去掉不必要的模塊&#xff0c;優化性能。性能優化&#xff1a;移除不需要的驅動程序和特性&#xff0c;減小內核體積&#xff0c;提高系統性能。最新特性和修復&#xff1a;獲取…

什么是開放最短路徑優先(OSPF)

OSPF是一種典型的鏈路狀態路由協議&#xff0c;一般在同一個路由域中使用。這里的路由域指的是一個自治系統&#xff08;AS&#xff09;&#xff0c;是指一組通過統一的路由策略或協議相互交換路由信息的網絡。在這個自治系統&#xff08;AS&#xff09;中&#xff0c;所有的OS…

【Leetcode】最小數字游戲

你有一個下標從 0 開始、長度為 偶數 的整數數組 nums &#xff0c;同時還有一個空數組 arr 。Alice 和 Bob 決定玩一個游戲&#xff0c;游戲中每一輪 Alice 和 Bob 都會各自執行一次操作。游戲規則如下&#xff1a; 每一輪&#xff0c;Alice 先從 nums 中移除一個 最小 元素&…

等保測評是做什么的

等保測評的定義和目的 等保測評&#xff0c;全稱為信息安全等級保護測評&#xff0c;是依據國家信息安全等級保護規范規定&#xff0c;由具有資質的測評機構對信息系統安全等級保護狀況進行檢測評估的活動。等保測評的目的是驗證網絡系統或應用是否滿足相應的安全保護等級要求…

【Linux】System V消息隊列 System V信號量

&#x1f466;個人主頁&#xff1a;Weraphael ?&#x1f3fb;作者簡介&#xff1a;目前正在學習c和算法 ??專欄&#xff1a;Linux &#x1f40b; 希望大家多多支持&#xff0c;咱一起進步&#xff01;&#x1f601; 如果文章有啥瑕疵&#xff0c;希望大佬指點一二 如果文章對…

前端 JS 經典:小數運算不精確

原因&#xff1a;計算機對小數的存儲是二進制的&#xff0c;有限位數的二進制做算法得到的是有限位數&#xff0c;無限位數的二進制做運算&#xff0c;得到的是無限位數。 如下&#xff1a;0.5 和 0.25 轉二進制是有限位數&#xff0c;0.3 和 0.2 轉二進制是無限位數。 (0.5)…

Spark調度底層執行原理詳解(第35天)

系列文章目錄 一、Spark應用程序啟動與資源申請 二、DAG&#xff08;有向無環圖&#xff09;的構建與劃分 三、Task的生成與調度 四、Task的執行與結果返回 五、監控與容錯 六、優化策略 文章目錄 系列文章目錄前言一、Spark應用程序啟動與資源申請1. SparkContext的創建2. 資…

力扣1111.有效括號的嵌套深度

力扣1111.有效括號的嵌套深度 棧模擬 對于每個括號求出深度 奇數深度存入A&#xff0c;偶數深度存入B這樣最大程度降低最大深度 class Solution {public:vector<int> maxDepthAfterSplit(string s) {//因為棧中只會存(的數量 所有用一個變量即可int d 0;vector<i…

Python | Leetcode Python題解之第233題數字1的個數

題目&#xff1a; 題解&#xff1a; class Solution:def countDigitOne(self, n: int) -> int:# mulk 表示 10^k# 在下面的代碼中&#xff0c;可以發現 k 并沒有被直接使用到&#xff08;都是使用 10^k&#xff09;# 但為了讓代碼看起來更加直觀&#xff0c;這里保留了 kk,…

C語言內存管理深度解析面試題及參考答案(2萬字長文)

在嵌入式面試時,C語言內存管理是必問面試題,也是難點,相關知識點可以參考: C語言內存管理深度解析??????? 下面整理了各種類型的C語言內存管理的面試題: 目錄 全局變量和局部變量在內存中分別存儲在哪個區域? 靜態變量和全局變量有什么區別? 什么是作用域?…