亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? crypto-aes.js

?? linux下開源瀏覽器WebKit的源碼,市面上的很多商用瀏覽器都是移植自WebKit
?? JS
?? 第 1 頁 / 共 2 頁
字號:
  // convert the nonce to a string to go on the front of the ciphertext  var ctrTxt = '';  for (var i=0; i<8; i++) ctrTxt += String.fromCharCode(counterBlock[i]);  ctrTxt = escCtrlChars(ctrTxt);  // use '-' to separate blocks, use Array.join to concatenate arrays of strings for efficiency  return ctrTxt + '-' + ciphertext.join('-');}/*  * Use AES to decrypt 'ciphertext' with 'password' using 'nBits' key, in Counter mode of operation * *   for each block *   - outputblock = cipher(counter, key) *   - cipherblock = plaintext xor outputblock */function AESDecryptCtr(ciphertext, password, nBits) {  if (!(nBits==128 || nBits==192 || nBits==256)) return '';  // standard allows 128/192/256 bit keys  var nBytes = nBits/8;  // no bytes in key  var pwBytes = new Array(nBytes);  for (var i=0; i<nBytes; i++) pwBytes[i] = password.charCodeAt(i) & 0xff;  var pwKeySchedule = KeyExpansion(pwBytes);  var key = Cipher(pwBytes, pwKeySchedule);  key = key.concat(key.slice(0, nBytes-16));  // key is now 16/24/32 bytes long  var keySchedule = KeyExpansion(key);  ciphertext = ciphertext.split('-');  // split ciphertext into array of block-length strings   // recover nonce from 1st element of ciphertext  var blockSize = 16;  // block size fixed at 16 bytes / 128 bits (Nb=4) for AES  var counterBlock = new Array(blockSize);  var ctrTxt = unescCtrlChars(ciphertext[0]);  for (var i=0; i<8; i++) counterBlock[i] = ctrTxt.charCodeAt(i);  var plaintext = new Array(ciphertext.length-1);  for (var b=1; b<ciphertext.length; b++) {    // set counter (block #) in last 8 bytes of counter block (leaving nonce in 1st 8 bytes)    for (var c=0; c<4; c++) counterBlock[15-c] = ((b-1) >>> c*8) & 0xff;    for (var c=0; c<4; c++) counterBlock[15-c-4] = ((b/0x100000000-1) >>> c*8) & 0xff;    var cipherCntr = Cipher(counterBlock, keySchedule);  // encrypt counter block    ciphertext[b] = unescCtrlChars(ciphertext[b]);    var pt = '';    for (var i=0; i<ciphertext[b].length; i++) {      // -- xor plaintext with ciphered counter byte-by-byte --      var ciphertextByte = ciphertext[b].charCodeAt(i);      var plaintextByte = ciphertextByte ^ cipherCntr[i];      pt += String.fromCharCode(plaintextByte);    }    // pt is now plaintext for this block    plaintext[b-1] = pt;  // b-1 'cos no initial nonce block in plaintext  }  return plaintext.join('');}/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -  */function escCtrlChars(str) {  // escape control chars which might cause problems handling ciphertext  return str.replace(/[\0\t\n\v\f\r\xa0'"!-]/g, function(c) { return '!' + c.charCodeAt(0) + '!'; });}  // \xa0 to cater for bug in Firefox; include '-' to leave it free for use as a block markerfunction unescCtrlChars(str) {  // unescape potentially problematic control characters  return str.replace(/!\d\d?\d?!/g, function(c) { return String.fromCharCode(c.slice(1,-1)); });}/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -  *//* * if escCtrlChars()/unescCtrlChars() still gives problems, use encodeBase64()/decodeBase64() instead */var b64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function encodeBase64(str) {  // http://tools.ietf.org/html/rfc4648   var o1, o2, o3, h1, h2, h3, h4, bits, i=0, enc='';      str = encodeUTF8(str);  // encode multi-byte chars into UTF-8 for byte-array   do {  // pack three octets into four hexets      o1 = str.charCodeAt(i++);      o2 = str.charCodeAt(i++);      o3 = str.charCodeAt(i++);            bits = o1<<16 | o2<<8 | o3;            h1 = bits>>18 & 0x3f;      h2 = bits>>12 & 0x3f;      h3 = bits>>6 & 0x3f;      h4 = bits & 0x3f;            // end of string? index to '=' in b64      if (isNaN(o3)) h4 = 64;      if (isNaN(o2)) h3 = 64;            // use hexets to index into b64, and append result to encoded string      enc += b64.charAt(h1) + b64.charAt(h2) + b64.charAt(h3) + b64.charAt(h4);   } while (i < str.length);      return enc;}function decodeBase64(str) {   var o1, o2, o3, h1, h2, h3, h4, bits, i=0, enc='';   do {  // unpack four hexets into three octets using index points in b64      h1 = b64.indexOf(str.charAt(i++));      h2 = b64.indexOf(str.charAt(i++));      h3 = b64.indexOf(str.charAt(i++));      h4 = b64.indexOf(str.charAt(i++));            bits = h1<<18 | h2<<12 | h3<<6 | h4;            o1 = bits>>16 & 0xff;      o2 = bits>>8 & 0xff;      o3 = bits & 0xff;            if (h3 == 64)      enc += String.fromCharCode(o1);      else if (h4 == 64) enc += String.fromCharCode(o1, o2);      else               enc += String.fromCharCode(o1, o2, o3);   } while (i < str.length);   return decodeUTF8(enc);  // decode UTF-8 byte-array back to Unicode}function encodeUTF8(str) {  // encode multi-byte string into utf-8 multiple single-byte characters   str = str.replace(      /[\u0080-\u07ff]/g,  // U+0080 - U+07FF = 2-byte chars      function(c) {         var cc = c.charCodeAt(0);        return String.fromCharCode(0xc0 | cc>>6, 0x80 | cc&0x3f); }    );  str = str.replace(      /[\u0800-\uffff]/g,  // U+0800 - U+FFFF = 3-byte chars      function(c) {         var cc = c.charCodeAt(0);         return String.fromCharCode(0xe0 | cc>>12, 0x80 | cc>>6&0x3F, 0x80 | cc&0x3f); }    );  return str;}function decodeUTF8(str) {  // decode utf-8 encoded string back into multi-byte characters  str = str.replace(      /[\u00c0-\u00df][\u0080-\u00bf]/g,                 // 2-byte chars      function(c) {         var cc = (c.charCodeAt(0)&0x1f)<<6 | c.charCodeAt(1)&0x3f;        return String.fromCharCode(cc); }    );  str = str.replace(      /[\u00e0-\u00ef][\u0080-\u00bf][\u0080-\u00bf]/g,  // 3-byte chars      function(c) {         var cc = (c.charCodeAt(0)&0x0f)<<12 | (c.charCodeAt(1)&0x3f<<6) | c.charCodeAt(2)&0x3f;         return String.fromCharCode(cc); }    );  return str;}function byteArrayToHexStr(b) {  // convert byte array to hex string for displaying test vectors  var s = '';  for (var i=0; i<b.length; i++) s += b[i].toString(16) + ' ';  return s;}/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -  */var plainText = "ROMEO: But, soft! what light through yonder window breaks?\n\It is the east, and Juliet is the sun.\n\Arise, fair sun, and kill the envious moon,\n\Who is already sick and pale with grief,\n\That thou her maid art far more fair than she:\n\Be not her maid, since she is envious;\n\Her vestal livery is but sick and green\n\And none but fools do wear it; cast it off.\n\It is my lady, O, it is my love!\n\O, that she knew she were!\n\She speaks yet she says nothing: what of that?\n\Her eye discourses; I will answer it.\n\I am too bold, 'tis not to me she speaks:\n\Two of the fairest stars in all the heaven,\n\Having some business, do entreat her eyes\n\To twinkle in their spheres till they return.\n\What if her eyes were there, they in her head?\n\The brightness of her cheek would shame those stars,\n\As daylight doth a lamp; her eyes in heaven\n\Would through the airy region stream so bright\n\That birds would sing and think it were not night.\n\See, how she leans her cheek upon her hand!\n\O, that I were a glove upon that hand,\n\That I might touch that cheek!\n\JULIET: Ay me!\n\ROMEO: She speaks:\n\O, speak again, bright angel! for thou art\n\As glorious to this night, being o'er my head\n\As is a winged messenger of heaven\n\Unto the white-upturned wondering eyes\n\Of mortals that fall back to gaze on him\n\When he bestrides the lazy-pacing clouds\n\And sails upon the bosom of the air.";var password = "O Romeo, Romeo! wherefore art thou Romeo?";var cipherText = AESEncryptCtr(plainText, password, 256);var decryptedText = AESDecryptCtr(cipherText, password, 256);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
樱花草国产18久久久久| 亚洲精品一区二区三区精华液| 国产欧美中文在线| 国产成人免费网站| 亚洲欧美日韩综合aⅴ视频| 日本伦理一区二区| 日本不卡123| 欧美精品一区二区三区很污很色的 | 亚洲成人av一区| 日韩三级在线观看| 国产盗摄视频一区二区三区| 18欧美乱大交hd1984| 欧美体内she精视频| 五月天久久比比资源色| 精品国产乱子伦一区| 成人免费视频播放| 午夜精品爽啪视频| 国产视频一区在线播放| 色综合天天视频在线观看| 日韩av一二三| 国产精品久久一卡二卡| 欧美猛男男办公室激情| 国产精品一卡二| 亚洲一二三四在线观看| www亚洲一区| 欧美专区日韩专区| 国产一区二区在线观看视频| 亚洲人成网站精品片在线观看| 日韩三级在线观看| 91福利在线播放| 国内成人免费视频| 亚洲成人激情av| 国产精品视频yy9299一区| 欧美美女一区二区三区| 国产成人av影院| 日韩精彩视频在线观看| 国产精品久久久久三级| 欧美一区二区人人喊爽| 99精品视频在线观看| 精品亚洲免费视频| 曰韩精品一区二区| 国产精品美女久久久久久久久久久| 欧美性猛交xxxx乱大交退制版| 国产精品夜夜嗨| 日韩—二三区免费观看av| 一区二区中文字幕在线| 欧美r级在线观看| 欧美私模裸体表演在线观看| 高清av一区二区| 久久国产精品72免费观看| 亚洲午夜精品网| 亚洲欧美另类小说| 中文字幕不卡的av| 久久欧美一区二区| 欧美电影免费观看高清完整版在 | 欧美日韩亚洲综合在线 | 欧美性一二三区| 99这里只有久久精品视频| 国产一区在线不卡| 久久国产三级精品| 日韩av一区二区三区四区| 亚洲国产一二三| 亚洲精品国产无天堂网2021| 亚洲国产经典视频| 国产精品免费久久久久| 久久久亚洲高清| 欧美精品一区视频| 亚洲精品一区二区三区影院| 精品久久久久99| 日韩欧美在线网站| 日韩欧美一区二区免费| 日韩写真欧美这视频| 日韩三级高清在线| 欧美videossexotv100| 91精品福利在线一区二区三区 | 91精品国产品国语在线不卡| 欧美日韩免费观看一区三区| 欧美色视频在线| 欧美日韩亚州综合| 欧美丰满少妇xxxxx高潮对白| 欧美日韩一二三区| 欧美一区二区三区免费视频| 欧美一区日本一区韩国一区| 欧美精品久久99久久在免费线 | 色偷偷88欧美精品久久久| 91丨九色丨国产丨porny| zzijzzij亚洲日本少妇熟睡| 亚洲成va人在线观看| 日韩av电影免费观看高清完整版 | 日韩午夜在线观看视频| 日韩欧美成人一区二区| 2欧美一区二区三区在线观看视频 337p粉嫩大胆噜噜噜噜噜91av | 在线观看日韩一区| 欧美揉bbbbb揉bbbbb| 欧美人成免费网站| 日韩三级视频中文字幕| 国产日本欧美一区二区| 亚洲免费观看高清完整版在线| 亚洲国产成人av| 久久国产日韩欧美精品| 成人一区二区三区视频在线观看| 91麻豆视频网站| 欧美一区二区三区公司| 国产色产综合色产在线视频| 亚洲精品五月天| 卡一卡二国产精品| 成人一区二区在线观看| 欧美日韩久久久久久| 久久日一线二线三线suv| 日韩理论片一区二区| 日本vs亚洲vs韩国一区三区二区| 国产精品911| 欧美剧情片在线观看| 国产日韩成人精品| 亚洲成人免费影院| 国产夫妻精品视频| 欧美日韩一区三区| 国产精品麻豆网站| 蜜桃视频免费观看一区| 91香蕉视频在线| 精品日韩欧美在线| 亚洲欧美国产毛片在线| 久久成人综合网| 日本高清不卡视频| 欧美国产精品一区二区| 丝袜美腿亚洲综合| 成人黄色电影在线| 日韩视频免费观看高清完整版| 中文字幕一区二区在线播放| 另类欧美日韩国产在线| 色哦色哦哦色天天综合| 久久久蜜桃精品| 日韩精品乱码av一区二区| 99久久精品国产观看| 精品国产乱码久久久久久牛牛| 亚洲精品成人精品456| 国产东北露脸精品视频| 欧美一区二区播放| 亚洲国产精品久久久男人的天堂| 国产一区三区三区| 日韩限制级电影在线观看| 亚洲成人久久影院| 91美女蜜桃在线| 日本一二三四高清不卡| 激情综合五月婷婷| 88在线观看91蜜桃国自产| 亚洲乱码国产乱码精品精小说 | 国内精品在线播放| 欧美精品第一页| 亚洲国产cao| 欧美在线一区二区三区| 中文字幕一区二区不卡| 国产精品99久| 久久久精品2019中文字幕之3| 久久99国产乱子伦精品免费| 欧美日韩大陆在线| 石原莉奈在线亚洲三区| 欧美在线影院一区二区| 亚洲综合一二区| 91久久久免费一区二区| 亚洲视频你懂的| 91在线无精精品入口| ●精品国产综合乱码久久久久| jizzjizzjizz欧美| 中文字幕中文字幕一区二区| 福利一区福利二区| 国产精品网友自拍| 不卡一区二区三区四区| 欧美国产精品一区二区三区| 成人a级免费电影| 国产精品私人影院| 色综合天天综合网天天狠天天| 亚洲免费看黄网站| 欧美最猛黑人xxxxx猛交| 亚洲国产你懂的| 91精品麻豆日日躁夜夜躁| 日韩av一级电影| 26uuuu精品一区二区| 国产mv日韩mv欧美| 综合激情成人伊人| 欧美天天综合网| 蜜臀av性久久久久蜜臀av麻豆| 欧美不卡激情三级在线观看| 国产乱妇无码大片在线观看| 日本一区二区三级电影在线观看 | 一区二区三区四区av| 欧美性大战久久久久久久蜜臀| 午夜精品在线看| 26uuu成人网一区二区三区| 成人免费视频app| 亚洲成av人影院| 久久久亚洲欧洲日产国码αv| 成人av资源站| 天天射综合影视| 日本一区二区综合亚洲| 91精品福利在线| 久久99日本精品| 亚洲精品视频一区| 日韩女优av电影| 波多野洁衣一区|