整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          網頁的加密解密,JS完整代碼

          網頁的加密解密,JS完整代碼

          們可以針對不同的訪問者,隱藏部分內容,這時候就用到客戶端的網頁加密解密技術,用作選擇性隱蔽展示。當然客戶端的加密安全度是不能與服務器相提并論,肯定不能用于密碼這類內容的加密,但對于一般級別的內容用作展示已經夠了。

          主要學習的是:

          string 對象的charCodeAt()方法和fromCharCode()方法對字符的ASCII編碼進行獲取和修改。

          下面是完整代碼:

          頁頭

          <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

          "http://www.w3.org/TR/html4/loose.dtd">

          <html>

          <head>

          <title>網頁加密及解密</title>

          <meta http-equiv="Content-Type" content="text/html; charset=gb2312">

          </head>

          <body>

          內容

          <p><textarea id="text1" name="textfield" cols="50" rows="5">錢莊王員外這個人怎么樣?</textarea></p>

          <input type="button" name="Button1" value="加密" onClick="Encrypt(text1.value)">

          <input type="button" name="Button2" value="解密" onClick="unEncrypt(text1.value)">

          <script language="JavaScript">

          var p=0;

          加密

          function Encrypt(Text) {

          p=p+1;

          output=new String;

          alterText=new Array();

          varCost=new Array();

          TextSize=Text.length;

          for (i=0; i < TextSize; i++) {

          idea=Math.round(Math.random() * 111) + 77;

          alterText[i]=Text.charCodeAt(i) + idea;

          varCost[i]=idea;

          }

          for (i=0; i < TextSize; i++) {

          output +=String.fromCharCode(alterText[i], varCost[i]);

          }

          text1.value=output;

          }

          解密

          function unEncrypt(Text) {

          if (p>0){

          p=p-1;

          output=new String;

          alterText1=new Array();

          varCost1=new Array();

          TextSize=Text.length;

          for (i=0; i < TextSize; i++) {

          alterText[i]=Text.charCodeAt(i);

          varCost[i]=Text.charCodeAt(i + 1);

          }

          for (i=0; i < TextSize; i=i+2) {

          output +=String.fromCharCode(alterText[i] - varCost[i]);

          }

          text1.value=output;

          }

          }

          頁尾

          </script>

          </body>

          </html>

          案列視頻演示:

          JS案例演示,網頁的加密解密

          (科技自媒體原創作者:錢莊王員外)

          標站點:

          aHR0cHMlM0EvL2subS5hdXRvaG9tZS5jb20uY24vZGV0YWlsL3NoYXJlXzAxZG1xeThmYTE2OHZrYWU5aDYwdmcwMDAwLmh0bWw=

          該地址經過base64加密,可以通過如下地址進行解密:

          https://base64.supfree.net
          

          準備工具:

          chome瀏覽器,python3.7語言環境,pycharm,百度字體編輯器:http://fontstore.baidu.com/static/editor/index.html
          

          破解方法:

          1、打開chrome瀏覽器,在瀏覽器地址欄中輸入目標地址,打開網頁后,在頁面中點擊鼠標右鍵,選擇檢查,可以看到相關文字已被加密。

          文字被加密

          2、可以通過復制,來驗證文字是否被加密。如復制:

          老朋友的推薦

          復制出的文字為:

          老朋友?推薦

          3、此類現象為文字被CSS樣式加密,破解步驟如下:

          1、通過瀏覽器開發者模式,找到頁面中文字所使用的css樣式
          2、通過抓包等方法找到加載的css文件,通過正則表達式取出字體文件URL
          3、通過百度字體編輯器解析woff文件:http://fontstore.baidu.com/static/editor/index.html
          4、使用fontTools處理字體文件,得出對應關系
          5、通過對應關系解析加密字體
          

          4、首先使用python的request模塊請求該頁面,通過正則表達式獲取字體文件URL,請求該URL,獲取到字體文件,寫入到本地。

          5、通過百度字體編輯器,解析ttf文件

          6、通過百度字體編輯器,可以看到,"的"對應的字體編碼為"$EC2A",接下來通過python下的fontTools模塊讀取該TTF文件,并建立文字對應關系,保存為字典。

          7、通過for循環遍歷該文字對應關系字典,對原網頁返回進行替換,即可得到正常數據。

          老朋友的推薦,去看了一幾個牌子,頭都看暈了,沒有結果,決定不了買哪個牌子,九了女兒意見,準備在榮威里面選盤款。性價上最高的就是I5了,看中這款的原因,并不是因為配置高,也不是養力強,而是囊中羞澀,預算控有那么電啊?,而榮威這個品牌過硬,質量可靠,故障率低,朋友買了都說挺一的。暫時沒有,還是覺外有點說不過去啊!買車看車子做這個決定,是和女兒共同商量決定的,我看中的是這個牌子的知名度,品質這些方面,女兒的話是喜歡這款車型的十觀,女孩子嘛,都是十貌協會,兩廂車上較炫酷,十形時尚養感,適合年輕妹子。女兒盤看就中意了。

          代碼參考:

          https://github.com/freedom-wy/js-reverse/tree/master/autohome/koubei
          

          歡迎交流,一起學習,一起進步。

          另外,我在慕課網上主講課程:

          《Python爬蟲工程師必學——App數據抓取實戰》,還請各位大神多多支持。課程地址:

          我們最近遇到了一些文件被惡意下載的情況。如果不及時處理,OSS的每日流量費用將超過1000元。為了解決這個緊急問題,我們不得不暫時下架這些文件。

          今晚,發現了一個有趣的項目:Staticrypt。它可以給靜態HTML頁面加上密碼保護,非常實用。

          Staticrypt

          安全加密并密碼保護你的公共靜態HTML文件的內容,這些文件將在瀏覽器中解密,無需任何后端支持,因此可以通過Netlify、GitHub Pages等靜態托管服務進行發布。

          StatiCrypt使用AES-256和WebCrypto技術,以你的長密碼加密HTML文件,并返回一個靜態HTML頁面,該頁面會顯示一個密碼提示,現在你可以安全地上傳這個頁面,其中包含了你的加密內容,解密過程在客戶端的JavaScript中進行。

          StatiCrypt是怎么工作的呢?

          StatiCrypt 能在沒有后端的情況下保護 HTML 頁面密碼。

          StatiCrypt 使用 WebCrypto 技術來生成一個靜態的、受密碼保護的頁面,頁面會在瀏覽器中解密。

          你可以將生成的頁面上傳到一個靜態內容托管的平臺(比如 GitHub Pages)。

          這樣,用戶訪問頁面時會看到一個密碼輸入框,輸入正確的密碼后,JavaScript 就會在瀏覽器中解密并加載你的 HTML 內容。

          簡單來說,它就是加密你的頁面,并把密碼輸入界面做成一個用戶友好的方式放在新的文件里。

          StatiCrypt 采用的AES-256 加密,雖然 AES-256 是最先進的加密技術之一,但在面對暴力破解(brute-force)或字典攻擊(dictionary attack)時,若密碼短語不夠長或不夠復雜,依然有可能被攻破。因此,還需要使用一個長且不尋常的密碼短語以提高安全性。

          幾個名詞解釋:

          1. AES-256 (高級加密標準-256位): 一種對稱加密算法,使用 256 位的密鑰來加密和解密數據,被廣泛認為是非常安全的加密標準。

          2. 暴力破解 (brute-force attack): 一種攻擊方法,攻擊者嘗試所有可能的密碼組合,直到找到正確的密碼。由于密碼的復雜性越高,暴力破解所需的時間就越長。

          3. 字典攻擊 (dictionary attack): 一種攻擊方法,攻擊者使用一個預先定義的密碼字典(包含常見密碼或密碼組合)來嘗試破解密碼。與暴力破解不同,字典攻擊利用了密碼的常見性來提高破解效率。

          CLI

          Staticrypt通過npm作為CLI提供,使用npm install -g staticrypt進行安裝,并按如下方式使用:

          Usage: staticrypt <filename><passphrase>[options]
          
          Options:
          --help               顯示幫助信息[boolean]
          --version            顯示版本號[boolean]
          -e,--embed          是否在頁面中嵌入 crypto-js(或者使用外部 CDN)[boolean][default:true]
          -o,--output         生成的加密文件的文件名/路徑[string][default:null]
          -t,--title          輸出 HTML 頁面的標題[string][default:"Protected Page"]
          -i,--instructions   顯示給用戶的特別說明[string][default:null]
          -f,--file-template自定義 HTML 模板的路徑,包含密碼提示框[string][default:"[...]/cli/password_template.html"]

          使用示例

          • ? staticrypt test.html mysecretpassword->創建test_encrypted.html文件
          • ? find . -type f -name "*.html" -exec staticrypt {} mypassword \;->為目錄中的所有HTML文件創建加密文件

          完整入門

          1、cd 靜態文件夾

          2、輸入:staticrypt example.html -p leadsoft,對當前頁面進行加密。

          3、輸入:http-server

          4、訪問http://127.0.0.1:8080/example.html

          5、輸入密碼:leadsoft

          6、現在可以愉快的訪問頁面了。

          文件大小,也從1K增加到了35k

          7、當然,你可以可以自定義HTML以使加密頁面符合您的風格


          主站蜘蛛池模板: 亚洲电影国产一区| 一区二区三区中文字幕| 国产一区二区影院| 大香伊人久久精品一区二区| 中文无码一区二区不卡αv| 天堂Av无码Av一区二区三区| 亚洲美女高清一区二区三区| 中文字幕一区二区三区乱码| 日韩中文字幕精品免费一区| 日韩AV无码一区二区三区不卡毛片| 国产一区视频在线| 成人精品一区久久久久| 高清国产AV一区二区三区| 波多野结衣电影区一区二区三区| 国产一区二区三区在线2021| 中文字幕精品一区二区| 亚洲AV综合色一区二区三区| 精品福利一区二区三区| 国产成人av一区二区三区在线| 任你躁国语自产一区在| 国产综合精品一区二区三区| 日本一区二区高清不卡| 无码aⅴ精品一区二区三区| 亚洲日本久久一区二区va| 色久综合网精品一区二区| 日本欧洲视频一区| 午夜影视日本亚洲欧洲精品一区 | 国产精品福利一区二区久久| 国产午夜精品一区二区三区| 无码人妻精品一区二区蜜桃百度 | 国产午夜精品片一区二区三区| 国产剧情国产精品一区| 国产精品无码一区二区三区电影| 亚洲国产综合无码一区二区二三区 | 亲子乱av一区区三区40岁| 无码一区二区波多野结衣播放搜索 | 久久精品无码一区二区三区| 国产一区二区三区高清在线观看| 亚洲乱码国产一区三区| 日本视频一区在线观看免费 | 日本一区二区在线不卡|