zoukankan      html  css  js  c++  java
  • javascript 字符串加密的几种方法

    8进制

     1 /*8进制加密*/
     2 function EnEight(){
     3     var monyer = new Array();var i,s;
     4     for(i=0;i<txt.value.length;i++)
     5         monyer+="\"+txt.value.charCodeAt(i).toString(8); 
     6     txt.value=monyer;
     7 }
     8 /*8进制解密*/
     9 function DeEight(){
    10     var monyer = new Array();var i;
    11     var s=txt.value.split("\");
    12     for(i=1;i<s.length;i++)
    13         monyer+=String.fromCharCode(parseInt(s[i],8));
    14     txt.value=monyer;
    15 }
    View Code

    10进制

     1 /*10进制加密*/
     2 function Encrypt(){
     3     var monyer = new Array();var i,s;
     4     for(i=0;i<txt.value.length;i++){
     5         s=txt.value.charCodeAt(i).toString(16); 
     6         if(Decimal1.checked) monyer+="&#"+txt.value.charCodeAt(i)+";";
     7         else if (Decimal2.checked) monyer+="&#"+new Array(7-String(s).length).join("0")+txt.value.charCodeAt(i);
     8         else monyer+=txt.value.charCodeAt(i)+",";
     9     }txt.value=monyer;
    10 }
    11 /*10进制解密*/
    12 function Decrypt(){
    13     var monyer = new Array();var i;
    14     if(Decimal1.checked){
    15         var s=txt.value.split(";");
    16         for(i=0;i<s.length;i++){
    17             s[i]=s[i].replace('&#','');
    18             monyer+=String.fromCharCode(s[i]);
    19         }
    20     }else if(Decimal2.checked){
    21         var s=txt.value.split("&");
    22         for(i=1;i<s.length;i++){
    23             s[i]=s[i].replace('#','');
    24             monyer+=String.fromCharCode(s[i]);
    25         }
    26     }else{
    27         var s=txt.value.split(",");
    28         for(i=0;i<s.length;i++)
    29             monyer+=String.fromCharCode(s[i]);
    30     }txt.value=monyer;
    31 }
    View Code

    16进制

     1 /*16进制加密*/
     2 function JavaEn(){
     3     var monyer = new Array();var i,s;
     4     for(i=0;i<txt.value.length;i++){
     5         s=txt.value.charCodeAt(i).toString(16); 
     6         if(hex1.checked) monyer+="\u"+new Array(5-String(s).length).join("0")+s;
     7         else if(hex2.checked) monyer+="&#x"+new Array(5-String(s).length).join("0")+s+";";
     8         else if(hex3.checked) monyer+="\x"+new Array(5-String(s).length).join("0")+s;
     9         else monyer+="\"+new Array(5-String(s).length).join("0")+s;
    10     }txt.value=monyer;
    11 }
    12 var p=document.documentElement.outerHTML.length;
    13 /*16进制解密*/
    14 function JavaDe(){
    15     if(hex1.checked){
    16         var monyer = new Array();var i;
    17         var s=txt.value.split("\");
    18         for(i=1;i<s.length;i++){
    19             s[i]=s[i].replace('u','');
    20             monyer+=String.fromCharCode(parseInt(s[i],16));
    21         }
    22     }else if(hex2.checked){
    23         var monyer = new Array();var i;
    24         var s=txt.value.split(";");
    25         for(i=0;i<s.length;i++){
    26             s[i]=s[i].replace('&#x','');
    27             monyer+=String.fromCharCode(parseInt(s[i],16));
    28         }
    29     }
    30     else if(hex3.checked){
    31         var monyer = new Array();var i;
    32         var s=txt.value.split("\");
    33         for(i=1;i<s.length;i++){
    34             s[i]=s[i].replace('x','');
    35             monyer+=String.fromCharCode(parseInt(s[i],16));
    36         }
    37     }else{
    38         var monyer = new Array();var i;
    39         var s=txt.value.split("\");
    40         for(i=1;i<s.length;i++)
    41             monyer+=String.fromCharCode(parseInt(s[i],16));
    42     }txt.value=monyer;
    43 }
    44 /*任意进制加密*/
    45 function EnChTo(h){
    46     var monyer = new Array();var i,s;
    47     for(i=0;i<txt.value.length;i++)
    48         monyer+=txt.value.charCodeAt(i).toString(h)+" "; 
    49     txt.value=monyer;
    50 }
    51 /*任意进制解密*/
    52 function DeChTo(h){
    53     var monyer = new Array();var i;
    54     var s=txt.value.split(" ");
    55     for(i=0;i<s.length;i++)
    56         monyer+=String.fromCharCode(parseInt(s[i],h));
    57     txt.value=monyer;
    58 }
    View Code

    URI加密

     1   function HtmlEncode(i)
     2                 {
     3                 if (i == 1)
     4                     txt.value
     5                         = txt.value.replace(/&/g, '&amp;').replace(/"/g, '&quot;').replace(/</g, '&lt;').replace(/>/g,
     6                                                                                                                   '&gt;');
     7 
     8                 if (i == 2)
     9                     txt.value
    10                         = txt.value.replace(/&amp;/g, '&').replace(/&quot;/g, '"').replace(/&lt;/g,
    11                                                                                             '<').replace(/&gt;/g, '>')
    12                 }
    13 
    14             var hex_chr = "0123456789abcdef";
    15 
    16             function rhex(num)
    17                 {
    18                 str = "";
    19 
    20                 for (j = 0; j <= 3; j++)
    21                     str += hex_chr.charAt((num >> (j * 8 + 4)) & 0x0F) + hex_chr.charAt((num >> (j * 8)) & 0x0F);
    22 
    23                 return str
    24                 }
    View Code

    base64

      1 var base64EncodeChars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
      2             var base64DecodeChars = new Array(-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
      3                                               -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
      4                                               -1, -1, -1, -1, -1, -1, -1, 62, -1, -1, -1, 63, 52, 53, 54, 55, 56, 57,
      5                                               58, 59, 60, 61, -1, -1, -1, -1, -1, -1, -1, 0,  1,  2,  3,  4,  5,  6,
      6                                               7,  8,  9,  10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
      7                                               25, -1, -1, -1, -1, -1, -1, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
      8                                               37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, -1, -1, -1,
      9                                               -1, -1);
     10 
     11             function base64encode(str)
     12                 {
     13                 var out, i, len;
     14                 var c1, c2, c3;
     15                 len = str.length;
     16                 i = 0;
     17                 out = "";
     18 
     19                 while (i < len)
     20                     {
     21                     c1 = str.charCodeAt(i++) & 0xff;
     22 
     23                     if (i == len)
     24                         {
     25                         out += base64EncodeChars.charAt(c1 >> 2);
     26                         out += base64EncodeChars.charAt((c1 & 0x3) << 4);
     27                         out += "==";
     28                         break
     29                         }
     30 
     31                     c2 = str.charCodeAt(i++);
     32 
     33                     if (i == len)
     34                         {
     35                         out += base64EncodeChars.charAt(c1 >> 2);
     36                         out += base64EncodeChars.charAt(((c1 & 0x3) << 4) | ((c2 & 0xF0) >> 4));
     37                         out += base64EncodeChars.charAt((c2 & 0xF) << 2);
     38                         out += "=";
     39                         break
     40                         }
     41 
     42                     c3 = str.charCodeAt(i++);
     43                     out += base64EncodeChars.charAt(c1 >> 2);
     44                     out += base64EncodeChars.charAt(((c1 & 0x3) << 4) | ((c2 & 0xF0) >> 4));
     45                     out += base64EncodeChars.charAt(((c2 & 0xF) << 2) | ((c3 & 0xC0) >> 6));
     46                     out += base64EncodeChars.charAt(c3 & 0x3F)
     47                     }
     48 
     49                 return out
     50                 }
     51 
     52             function base64decode(str)
     53                 {
     54                 var c1, c2, c3, c4;
     55                 var i, len, out;
     56                 len = str.length;
     57                 i = 0;
     58                 out = "";
     59 
     60                 while (i < len)
     61                     {
     62                     do
     63                         {
     64                         c1 = base64DecodeChars[str.charCodeAt(i++) & 0xff]
     65                         } while (i < len && c1 == -1);
     66 
     67                     if (c1 == -1)
     68                         break;
     69 
     70                     do
     71                         {
     72                         c2 = base64DecodeChars[str.charCodeAt(i++) & 0xff]
     73                         } while (i < len && c2 == -1);
     74 
     75                     if (c2 == -1)
     76                         break;
     77 
     78                     out += String.fromCharCode((c1 << 2) | ((c2 & 0x30) >> 4));
     79 
     80                     do
     81                         {
     82                         c3 = str.charCodeAt(i++) & 0xff;
     83 
     84                         if (c3 == 61)
     85                             return out;
     86 
     87                         c3 = base64DecodeChars[c3]
     88                         } while (i < len && c3 == -1);
     89 
     90                     if (c3 == -1)
     91                         break;
     92 
     93                     out += String.fromCharCode(((c2 & 0XF) << 4) | ((c3 & 0x3C) >> 2));
     94 
     95                     do
     96                         {
     97                         c4 = str.charCodeAt(i++) & 0xff;
     98 
     99                         if (c4 == 61)
    100                             return out;
    101 
    102                         c4 = base64DecodeChars[c4]
    103                         } while (i < len && c4 == -1);
    104 
    105                     if (c4 == -1)
    106                         break;
    107 
    108                     out += String.fromCharCode(((c3 & 0x03) << 6) | c4)
    109                     }
    110 
    111                 return out
    112                 }
    View Code

    utf8<--utf16

     1 function utf16to8(str)
     2                 {
     3                 var out, i, len, c;
     4                 out = "";
     5                 len = str.length;
     6 
     7                 for (i = 0; i < len; i++)
     8                     {
     9                     c = str.charCodeAt(i);
    10 
    11                     if ((c >= 0x0001) && (c <= 0x007F))
    12                         {
    13                         out += str.charAt(i)
    14                         }
    15 
    16                     else if (c > 0x07FF)
    17                         {
    18                         out += String.fromCharCode(0xE0 | ((c >> 12) & 0x0F));
    19                         out += String.fromCharCode(0x80 | ((c >> 6) & 0x3F));
    20                         out += String.fromCharCode(0x80 | ((c >> 0) & 0x3F))
    21                         }
    22 
    23                     else
    24                         {
    25                         out += String.fromCharCode(0xC0 | ((c >> 6) & 0x1F));
    26                         out += String.fromCharCode(0x80 | ((c >> 0) & 0x3F))
    27                         }
    28                     }
    29 
    30                 return out
    31                 }
    View Code

    utf8-->utf16

     1      function utf8to16(str)
     2                 {
     3                 var out, i, len, c;
     4                 var char2, char3;
     5                 out = "";
     6                 len = str.length;
     7                 i = 0;
     8 
     9                 while (i < len)
    10                     {
    11                     c = str.charCodeAt(i++);
    12 
    13                     switch (c >> 4)
    14                         {
    15                         case 0:
    16                         case 1:
    17                         case 2:
    18                         case 3:
    19                         case 4:
    20                         case 5:
    21                         case 6:
    22                         case 7:
    23                             out += str.charAt(i - 1);
    24 
    25                             break;
    26 
    27                         case 12:
    28                         case 13:
    29                             char2 = str.charCodeAt(i++);
    30 
    31                             out += String.fromCharCode(((c & 0x1F) << 6) | (char2 & 0x3F));
    32                             break;
    33 
    34                         case 14:
    35                             char2 = str.charCodeAt(i++);
    36 
    37                             char3 = str.charCodeAt(i++);
    38                             out += String.fromCharCode(((c & 0x0F) << 12) | ((char2 & 0x3F) << 6)
    39                                                            | ((char3 & 0x3F) << 0));
    40                             break
    41                         }
    42                     }
    43 
    44                 return out
    45                 }
    View Code

    md5

      1 function str2blks_MD5(str)
      2                 {
      3                 nblk = ((str.length + 8) >> 6) + 1;
      4                 blks = new Array(nblk * 16);
      5 
      6                 for (i = 0; i < nblk * 16; i++)
      7                     blks[i] = 0;
      8 
      9                 for (i = 0; i < str.length; i++)
     10                     blks[i >> 2] |= str.charCodeAt(i) << ((i % 4) * 8);
     11 
     12                 blks[i >> 2] |= 0x80 << ((i % 4) * 8);
     13                 blks[nblk * 16 - 2] = str.length * 8;
     14                 return blks
     15                 }
     16 
     17             function add(x, y)
     18                 {
     19                 var lsw = (x & 0xFFFF) + (y & 0xFFFF);
     20                 var msw = (x >> 16) + (y >> 16) + (lsw >> 16);
     21                 return (msw << 16) | (lsw & 0xFFFF)
     22                 }
     23 
     24             function rol(num, cnt)
     25                 {
     26                 return (num << cnt) | (num >>> (32 - cnt))
     27                 }
     28 
     29             function cmn(q, a, b, x, s, t)
     30                 {
     31                 return add(rol(add(add(a, q), add(x, t)), s), b)
     32                 }
     33 
     34             function ff(a, b, c, d, x, s, t)
     35                 {
     36                 return cmn((b & c) | ((~b) & d), a, b, x, s, t)
     37                 }
     38 
     39             function gg(a, b, c, d, x, s, t)
     40                 {
     41                 return cmn((b & d) | (c & (~d)), a, b, x, s, t)
     42                 }
     43 
     44             function hh(a, b, c, d, x, s, t)
     45                 {
     46                 return cmn(b ^ c ^ d, a, b, x, s, t)
     47                 }
     48 
     49             function ii(a, b, c, d, x, s, t)
     50                 {
     51                 return cmn(c ^ (b | (~d)), a, b, x, s, t)
     52                 }
     53 
     54             function calcMD5(str)
     55                 {
     56                 x = str2blks_MD5(str);
     57                 a = 1732584193;
     58                 b = -271733879;
     59                 c = -1732584194;
     60                 d = 271733878;
     61 
     62                 for (i = 0; i < x.length; i += 16)
     63                     {
     64                     olda = a;
     65                     oldb = b;
     66                     oldc = c;
     67                     oldd = d;
     68                     a = ff(a, b, c, d, x[i + 0], 7, -680876936);
     69                     d = ff(d, a, b, c, x[i + 1], 12, -389564586);
     70                     c = ff(c, d, a, b, x[i + 2], 17, 606105819);
     71                     b = ff(b, c, d, a, x[i + 3], 22, -1044525330);
     72                     a = ff(a, b, c, d, x[i + 4], 7, -176418897);
     73                     d = ff(d, a, b, c, x[i + 5], 12, 1200080426);
     74                     c = ff(c, d, a, b, x[i + 6], 17, -1473231341);
     75                     b = ff(b, c, d, a, x[i + 7], 22, -45705983);
     76                     a = ff(a, b, c, d, x[i + 8], 7, 1770035416);
     77                     d = ff(d, a, b, c, x[i + 9], 12, -1958414417);
     78                     c = ff(c, d, a, b, x[i + 10], 17, -42063);
     79                     b = ff(b, c, d, a, x[i + 11], 22, -1990404162);
     80                     a = ff(a, b, c, d, x[i + 12], 7, 1804603682);
     81                     d = ff(d, a, b, c, x[i + 13], 12, -40341101);
     82                     c = ff(c, d, a, b, x[i + 14], 17, -1502002290);
     83                     b = ff(b, c, d, a, x[i + 15], 22, 1236535329);
     84                     a = gg(a, b, c, d, x[i + 1], 5, -165796510);
     85                     d = gg(d, a, b, c, x[i + 6], 9, -1069501632);
     86                     c = gg(c, d, a, b, x[i + 11], 14, 643717713);
     87                     b = gg(b, c, d, a, x[i + 0], 20, -373897302);
     88                     a = gg(a, b, c, d, x[i + 5], 5, -701558691);
     89                     d = gg(d, a, b, c, x[i + 10], 9, 38016083);
     90                     c = gg(c, d, a, b, x[i + 15], 14, -660478335);
     91                     b = gg(b, c, d, a, x[i + 4], 20, -405537848);
     92                     a = gg(a, b, c, d, x[i + 9], 5, 568446438);
     93                     d = gg(d, a, b, c, x[i + 14], 9, -1019803690);
     94                     c = gg(c, d, a, b, x[i + 3], 14, -187363961);
     95                     b = gg(b, c, d, a, x[i + 8], 20, 1163531501);
     96                     a = gg(a, b, c, d, x[i + 13], 5, -1444681467);
     97                     d = gg(d, a, b, c, x[i + 2], 9, -51403784);
     98                     c = gg(c, d, a, b, x[i + 7], 14, 1735328473);
     99                     b = gg(b, c, d, a, x[i + 12], 20, -1926607734);
    100                     a = hh(a, b, c, d, x[i + 5], 4, -378558);
    101                     d = hh(d, a, b, c, x[i + 8], 11, -2022574463);
    102                     c = hh(c, d, a, b, x[i + 11], 16, 1839030562);
    103                     b = hh(b, c, d, a, x[i + 14], 23, -35309556);
    104                     a = hh(a, b, c, d, x[i + 1], 4, -1530992060);
    105                     d = hh(d, a, b, c, x[i + 4], 11, 1272893353);
    106                     c = hh(c, d, a, b, x[i + 7], 16, -155497632);
    107                     b = hh(b, c, d, a, x[i + 10], 23, -1094730640);
    108                     a = hh(a, b, c, d, x[i + 13], 4, 681279174);
    109                     d = hh(d, a, b, c, x[i + 0], 11, -358537222);
    110                     c = hh(c, d, a, b, x[i + 3], 16, -722521979);
    111                     b = hh(b, c, d, a, x[i + 6], 23, 76029189);
    112                     a = hh(a, b, c, d, x[i + 9], 4, -640364487);
    113                     d = hh(d, a, b, c, x[i + 12], 11, -421815835);
    114 
    115 
    116                     c = hh(c, d, a, b, x[i + 15], 16, 530742520);
    117                     b = hh(b, c, d, a, x[i + 2], 23, -995338651);
    118                     a = ii(a, b, c, d, x[i + 0], 6, -198630844);
    119                     d = ii(d, a, b, c, x[i + 7], 10, 1126891415);
    120                     c = ii(c, d, a, b, x[i + 14], 15, -1416354905);
    121                     b = ii(b, c, d, a, x[i + 5], 21, -57434055);
    122                     a = ii(a, b, c, d, x[i + 12], 6, 1700485571);
    123                     d = ii(d, a, b, c, x[i + 3], 10, -1894986606);
    124                     c = ii(c, d, a, b, x[i + 10], 15, -1051523);
    125                     b = ii(b, c, d, a, x[i + 1], 21, -2054922799);
    126                     a = ii(a, b, c, d, x[i + 8], 6, 1873313359);
    127                     d = ii(d, a, b, c, x[i + 15], 10, -30611744);
    128                     c = ii(c, d, a, b, x[i + 6], 15, -1560198380);
    129                     b = ii(b, c, d, a, x[i + 13], 21, 1309151649);
    130                     a = ii(a, b, c, d, x[i + 4], 6, -145523070);
    131                     d = ii(d, a, b, c, x[i + 11], 10, -1120210379);
    132                     c = ii(c, d, a, b, x[i + 2], 15, 718787259);
    133                     b = ii(b, c, d, a, x[i + 9], 21, -343485551);
    134                     a = add(a, olda);
    135                     b = add(b, oldb);
    136                     c = add(c, oldc);
    137                     d = add(d, oldd)
    138                     }
    139 
    140                 return rhex(a) + rhex(b) + rhex(c) + rhex(d)
    141                 }
    View Code
  • 相关阅读:
    read
    df,du,mount
    cat,tac,more
    Makefile内嵌函数
    PHP常量详解:define和const的区别
    微信小程序之this.setData
    二维码支付原理分析及安全性的探究
    php 原生文件下载
    php原生实现图片上传和查看
    php文件的处理和操作
  • 原文地址:https://www.cnblogs.com/sweetyu/p/4942662.html
Copyright © 2011-2022 走看看