Gathering detailed insights and metrics for @linlabs/encryptlong
Gathering detailed insights and metrics for @linlabs/encryptlong
Gathering detailed insights and metrics for @linlabs/encryptlong
Gathering detailed insights and metrics for @linlabs/encryptlong
npm install @linlabs/encryptlong
Typescript
Module System
Node Version
NPM Version
JavaScript (87.08%)
TypeScript (10.9%)
HTML (1.49%)
CSS (0.5%)
Shell (0.02%)
Ruby (0.01%)
Total Downloads
0
Last Day
0
Last Week
0
Last Month
0
Last Year
0
NOASSERTION License
1 Stars
193 Commits
1 Branches
1 Contributors
Updated on Jun 10, 2025
Latest Version
3.1.14
Package Id
@linlabs/encryptlong@3.1.14
Unpacked Size
621.87 kB
Size
137.80 kB
File Count
13
NPM Version
10.8.2
Node Version
20.18.1
Published on
Feb 28, 2025
Cumulative downloads
Total Downloads
Last Day
0%
NaN
Compared to previous day
Last Week
0%
NaN
Compared to previous week
Last Month
0%
NaN
Compared to previous month
Last Year
0%
NaN
Compared to previous year
http://travistidwell.com/jsencrypt
基于 jsencrypt 扩展长文本分段加解密功能
npm 安装:
1npm i encryptlong -S
浏览器使用:
1<script src="./bin/jsencrypt.js"></script>
修复长文本加密概率失败问题
这里只扩展了长文本的分段加解密,其它 api 请查看官网 http://travistidwell.com/jsencrypt
encryptLong()
长文本加密decryptLong()
长文本解密1let startTime = new Date(); 2//公钥 3const PUBLIC_KEY = ` 4-----BEGIN PUBLIC KEY----- 5MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDKX1Fs2JUD25zrAEwPnjnZC0az 6rl1XjGzGrJ64eb1lr9QVVOO2zGKZdqDLZD4Ut4Mp6GHMaqqFXKm+zN7IAXu+mqZb 7UrqUziHE5YGC02wObiZEzfa6V9a8ZvqpB+Z8KO+hAkkjzjMl+E+hDORpZmez3SMz 8etn7mcCeLw8/vmxz3QIDAQAB 9-----END PUBLIC KEY-----`; 10//私钥 11const PRIVATE_KEY = ` 12-----BEGIN PUBLIC KEY----- 13MIICXgIBAAKBgQDKX1Fs2JUD25zrAEwPnjnZC0azrl1XjGzGrJ64eb1lr9QVVOO2 14zGKZdqDLZD4Ut4Mp6GHMaqqFXKm+zN7IAXu+mqZbUrqUziHE5YGC02wObiZEzfa6 15V9a8ZvqpB+Z8KO+hAkkjzjMl+E+hDORpZmez3SMzetn7mcCeLw8/vmxz3QIDAQAB 16AoGBAJBr6b4V6nJwXdHPyngy4PGl/HTqcK60BkTamALqzmEtU9tNU5z2yz7dy+6a 17wTsjo7Vao8CwNrUp5fHGXw65EEc1/3Iu2Fiix0XF7RP4NFSoxbBmzQW1nUK/5DFi 184VR1uhEmdbgLwGabsdqzeUqhRKkRGAPVCotBjaDBOu0J3Mu5AkEA+SM7Ctu7evOv 19ZwjWrp9a5MGxJ9yLLabbIuWL+420jr2G6ojaTZ2ROA2DWWQPx4JqWxDHttomrb38 20dk2emP2WAwJBAM/yU58YRQ+dTeuTzNYC1JdWcs35n9+hoVP7y+x29CmcqDTPp3nR 21Bbbq88yMb2nZdlwthWi7BurNHsRJFqj0GJ8CQF5gJCuW1UxcJ2PGi1yW7R2e6fcJ 22qoden8B2aDKgmXdBAGyz7s5cE/jB1bH1H60aECPzFVSFCwXh5FMEUEHwPfUCQQC7 23JqZ57lbhebrSRcA58GwzFFvY40wu8gIHWvwqgti2xsZgWW+qZCPXf9gSBWaUhmJP 24Da0fGAxesGN7VyhswNuTAkEAzCFNqL/zwHXcwh9YyHTdk/bRWIJq49jTA+vbgGv0 25szKIvGRKoRbub3NEUiI80TDsCAvbJ6R80J7RjnpmShOwcA== 26-----END PUBLIC KEY-----`; 27 28// 使用设置公私钥 29const enc = new JSEncrypt(); 30enc.setPublicKey(PUBLIC_KEY); 31enc.setPublicKey(PRIVATE_KEY); 32 33// 一段长文本json 34let data = { 35 code: 200, 36 result: { 37 timestamp: 1572321851823, 38 inter1: ["123123123", "123123123", "123123123", "123123123", "123123123"], 39 inter2: ["123123123", "123123123", "123123123", "123123123", "123123123"], 40 inter3: ["123123123", "123123123", "123123123", "123123123", "123123123"], 41 inter4: ["123123123", "123123123", "123123123", "123123123", "123123123"], 42 inter5: ["123123123", "123123123", "123123123", "123123123", "123123123"], 43 inter6: ["123123123", "123123123", "123123123", "123123123", "123123123"], 44 stream: {}, 45 caton: {}, 46 card: [] 47 } 48}; 49data = JSON.stringify(data); 50let encrypted = enc.encryptLong(data); 51let endTime = new Date(); 52console.log("加密后数据:%o", encrypted); 53console.log("加密时间" + (endTime - startTime) + "ms"); 54//使用私钥解密 55let uncrypted = enc.decryptLong(encrypted); 56console.log("解密后数据:%o", uncrypted);
这个库应该与 openssl 一起使用
1openssl genrsa -out rsa_1024_priv.pem 1024
1cat rsa_1024_priv.pem
1openssl rsa -pubout -in rsa_1024_priv.pem -out rsa_1024_pub.pem
1cat rsa_1024_pub.pem
1<!DOCTYPE html> 2<html> 3 <head> 4 <meta charset="UTF-8" /> 5 <title>使用jsencrypt执行长文本加密,解密</title> 6 </head> 7 8 <body> 9 <div>长文本加解密</div> 10 </body> 11 <script src="./jquery.js"></script> 12 <script src="./bin/jsencrypt.js"></script> 13 <script type="text/javascript"> 14 let startTime = new Date(); 15 //公钥 16 const PUBLIC_KEY = ` 17 -----BEGIN PUBLIC KEY----- 18 MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDKX1Fs2JUD25zrAEwPnjnZC0az 19 rl1XjGzGrJ64eb1lr9QVVOO2zGKZdqDLZD4Ut4Mp6GHMaqqFXKm+zN7IAXu+mqZb 20 UrqUziHE5YGC02wObiZEzfa6V9a8ZvqpB+Z8KO+hAkkjzjMl+E+hDORpZmez3SMz 21 etn7mcCeLw8/vmxz3QIDAQAB 22 -----END PUBLIC KEY-----`; 23 //私钥 24 const PRIVATE_KEY = ` 25 -----BEGIN PUBLIC KEY----- 26 MIICXgIBAAKBgQDKX1Fs2JUD25zrAEwPnjnZC0azrl1XjGzGrJ64eb1lr9QVVOO2 27 zGKZdqDLZD4Ut4Mp6GHMaqqFXKm+zN7IAXu+mqZbUrqUziHE5YGC02wObiZEzfa6 28 V9a8ZvqpB+Z8KO+hAkkjzjMl+E+hDORpZmez3SMzetn7mcCeLw8/vmxz3QIDAQAB 29 AoGBAJBr6b4V6nJwXdHPyngy4PGl/HTqcK60BkTamALqzmEtU9tNU5z2yz7dy+6a 30 wTsjo7Vao8CwNrUp5fHGXw65EEc1/3Iu2Fiix0XF7RP4NFSoxbBmzQW1nUK/5DFi 31 4VR1uhEmdbgLwGabsdqzeUqhRKkRGAPVCotBjaDBOu0J3Mu5AkEA+SM7Ctu7evOv 32 ZwjWrp9a5MGxJ9yLLabbIuWL+420jr2G6ojaTZ2ROA2DWWQPx4JqWxDHttomrb38 33 dk2emP2WAwJBAM/yU58YRQ+dTeuTzNYC1JdWcs35n9+hoVP7y+x29CmcqDTPp3nR 34 Bbbq88yMb2nZdlwthWi7BurNHsRJFqj0GJ8CQF5gJCuW1UxcJ2PGi1yW7R2e6fcJ 35 qoden8B2aDKgmXdBAGyz7s5cE/jB1bH1H60aECPzFVSFCwXh5FMEUEHwPfUCQQC7 36 JqZ57lbhebrSRcA58GwzFFvY40wu8gIHWvwqgti2xsZgWW+qZCPXf9gSBWaUhmJP 37 Da0fGAxesGN7VyhswNuTAkEAzCFNqL/zwHXcwh9YyHTdk/bRWIJq49jTA+vbgGv0 38 szKIvGRKoRbub3NEUiI80TDsCAvbJ6R80J7RjnpmShOwcA== 39 -----END PUBLIC KEY-----`; 40 41 // 使用设置公私钥 42 const enc = new JSEncrypt(); 43 enc.setPublicKey(PUBLIC_KEY); 44 enc.setPublicKey(PRIVATE_KEY); 45 46 // 一段长文本json 47 let data = { 48 code: 200, 49 result: { 50 timestamp: 1572321851823, 51 inter1: ["123123123", "123123123", "123123123", "123123123", "123123123"], 52 inter2: ["123123123", "123123123", "123123123", "123123123", "123123123"], 53 inter3: ["123123123", "123123123", "123123123", "123123123", "123123123"], 54 inter4: ["123123123", "123123123", "123123123", "123123123", "123123123"], 55 inter5: ["123123123", "123123123", "123123123", "123123123", "123123123"], 56 inter6: ["123123123", "123123123", "123123123", "123123123", "123123123"], 57 stream: {}, 58 caton: {}, 59 card: [] 60 } 61 }; 62 data = JSON.stringify(data); 63 let encrypted = enc.encryptLong(data); 64 let endTime = new Date(); 65 console.log("加密后数据:%o", encrypted); 66 console.log("加密时间" + (endTime - startTime) + "ms"); 67 //使用私钥解密 68 let uncrypted = enc.decryptLong(encrypted); 69 console.log("解密后数据:%o", uncrypted); 70 </script> 71</html>
sign
方法提供散列类型。可能的值有:md2
, md5
, sha1
, sha224
, sha256
, sha384
, sha512
, ripemd160
.1-----BEGIN RSA PRIVATE KEY----- 2MIICXgIBAAKBgQDHikastc8+I81zCg/qWW8dMr8mqvXQ3qbPAmu0RjxoZVI47tvs 3kYlFAXOf0sPrhO2nUuooJngnHV0639iTTEYG1vckNaW2R6U5QTdQ5Rq5u+uV3pMk 47w7Vs4n3urQ6jnqt2rTXbC1DNa/PFeAZatbf7ffBBy0IGO0zc128IshYcwIDAQAB 5AoGBALTNl2JxTvq4SDW/3VH0fZkQXWH1MM10oeMbB2qO5beWb11FGaOO77nGKfWc 6bYgfp5Ogrql4yhBvLAXnxH8bcqqwORtFhlyV68U1y4R+8WxDNh0aevxH8hRS/1X5 7031DJm1JlU0E+vStiktN0tC3ebH5hE+1OxbIHSZ+WOWLYX7JAkEA5uigRgKp8ScG 8auUijvdOLZIhHWq7y5Wz+nOHUuDw8P7wOTKU34QJAoWEe771p9Pf/GTA/kr0BQnP 9QvWUDxGzJwJBAN05C6krwPeryFKrKtjOGJIniIoY72wRnoNcdEEs3HDRhf48YWFo 10riRbZylzzzNFy/gmzT6XJQTfktGqq+FZD9UCQGIJaGrxHJgfmpDuAhMzGsUsYtTr 11iRox0D1Iqa7dhE693t5aBG010OF6MLqdZA1CXrn5SRtuVVaCSLZEL/2J5UcCQQDA 12d3MXucNnN4NPuS/L9HMYJWD7lPoosaORcgyK77bSSNgk+u9WSjbH1uYIAIPSffUZ 13bti+jc1dUg5wb+aeZlgJAkEAurrpmpqj5vg087ZngKfFGR5rozDiTsK5DceTV97K 14a3Y+Nzl+XWTxDBWk4YPh2ZlKv402hZEfWBYxUDn5ZkH/bw== 15-----END RSA PRIVATE KEY-----
No vulnerabilities found.
No security vulnerabilities found.