تصف هذه المقالة تشفير BASE64 وفك التشفير التي تنفذها JS. شاركه للرجوع إليه ، على النحو التالي:
رمز كامل:
<html> <head> <title> base64 </title> <script language = javaScript> var base64encodechars = "abcdefghijklmnopqrstuvwxyzaBcDefghijklMnopQrstuvWxyz0123456789+ -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، 1 ، 1 ، 1 ، 1 ، 1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، 62 ، -1 ، -1 ، -1 ، -1 ، 63 ، 52 ، 54 ، 56 ، 56 ، 57 ، 58 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، 0 ، 0 ، 1 ، 2 ، 3 ، 4 ، 5 ، 6 ، 7 ، 8 ، 9 ، 10 ، 11 ، 12 ، 14 ، 14 ، 15 ، 16 ، 17 ، 18 ، 19 ، 20 ، 21 ، 22 ، 24 ، 25 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، 2 ، 2 ، 2 ، 2 ، 2 22 ، 30 ، 31 ، 32 ، 33 ، 34 ، 35 ، 36 ، 37 ، 38 ، 39 ، 40 ، 41 ، 42 ، 43 ، 44 ، 45 ، 46 ، 47 ، 48 ، 49 ، 50 ، 51 ، -1 ، -1 ، -1 ، -1 ، -1) ؛ "abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz0123456789+/" ؛ var base64decodechars = -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، 1 ، 1 ، 1 ، 1 ، 1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، 62 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، 62 ، -1 ، -1 ، -1 ، -1 ، -1 ، 1 ، 1 ، 1 ، 53 ، 54 ، 55 ، 56 ، 57 ، 58 ، 59 ، 60 ، 61 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، -1 ، 0 ، -1 ، 26 ، 27 ، 28 ، 29 ، 30 ، 31 ، 32 ، 33 ، 34 ، 35 ، 36 ، 37 ، 38 ، 39 ، 40 ، 41 ، 42 ، 43 ، 44 ، 45 ، 46 ، 47 ، 48 ، 49 ، 50 ، 51 ، -1 ، -1 ، -1 ، -1) ؛ var c1 ، c2 ، c3 ؛ len = str.length ؛ أنا = 0 ؛ Out = "" ؛ بينما (i <len) {c1 = str.charcodeat (i ++) & 0xff ؛ if (i == len) {out += base64encodechars.charat (c1 >> 2) ؛ Out += base64encodechars.charat ((C1 & 0x3) << 4) ؛ Out += "==" ؛ استراحة؛ } c2 = str.charcodeat (i ++) ؛ if (i == len) {out += base64encodechars.charat (c1 >> 2) ؛ Out += base64encodechars.charat ((C1 & 0x3) << 4) | ((C2 & 0xf0) >> 4)) ؛ Out += base64encodechars.charat ((C2 & 0xf) << 2) ؛ Out += "=" ؛ استراحة؛ } c3 = str.charcodeat (i ++) ؛ out += base64encodechars.charat (c1 >> 2) ؛ Out += base64encodechars.charat ((C1 & 0x3) << 4) | ((C2 & 0xf0) >> 4)) ؛ Out += base64encodechars.charat (((C2 & 0xf) << 2) | ((C3 & 0xc0) >> 6)) ؛ Out += base64encodechars.charat (C3 & 0x3F) ؛ } return Out ؛} Function Base64Decode (str) {var c1 ، c2 ، c3 ، c4 ؛ var i ، len ، out ؛ len = str.length ؛ أنا = 0 ؛ Out = "" ؛ بينما (i <len) { / * c1 * / do {c1 = base64decodechars [str.charcodeat (i ++) & 0xff] ؛ } بينما (i <len && c1 == -1) ؛ إذا (C1 == -1) استراحة ؛ / * c2 */ do {c2 = base64decodechars [str.charcodeat (i ++) & 0xff] ؛ } بينما (i <len && c2 == -1) ؛ إذا (C2 == -1) استراحة ؛ Out += string.fromcharcode ((C1 << 2) | ((C2 & 0x30) >> 4)) ؛ / * c3 */ do {c3 = str.charcodeat (i ++) & 0xff ؛ إذا (C3 == 61) العودة ؛ C3 = BASE64DECODECHARS [C3] ؛ } بينما (i <len && c3 == -1) ؛ إذا (C3 == -1) استراحة ؛ Out += string.fromcharcode (((C2 & 0xf) << 4) | ((C3 & 0x3C) >> 2)) ؛ / * c4 */ do {c4 = str.charcodeat (i ++) & 0xff ؛ إذا (C4 == 61) العودة ؛ C4 = BASE64DECODECHARS [C4] ؛ } بينما (i <len && c4 == -1) ؛ إذا (C4 == -1) استراحة ؛ Out += string.fromcharcode (((C3 & 0x03) << 6) | C4) ؛ } return Out ؛} function utf16to8 (str) {var out ، i ، len ، c ؛ Out = "" ؛ len = str.length ؛ لـ (i = 0 ؛ i <len ؛ i ++) {c = str.charcodeat (i) ؛ if ((c> = 0x0001) && (c <= 0x007f)) {out += str.charat (i) ؛ } if if (c> 0x07ff) {out += string.fromcharcode (0xe0 | ((c >> 12) & 0x0f)) ؛ Out += string.fromcharcode (0x80 | ((C >> 6) & 0x3f)) ؛ Out += string.fromcharcode (0x80 | ((C >> 0) & 0x3f)) ؛ } آخر {out += string.fromcharcode (0xc0 | ((c >> 6) & 0x1f)) ؛ Out += string.fromcharcode (0x80 | ((C >> 0) & 0x3f)) ؛ }} return Out ؛} function utf8to16 (str) {var out ، i ، len ، c ؛ var char2 ، char3 ؛ Out = "" ؛ len = str.length ؛ أنا = 0 ؛ بينما (i <len) {c = str.charcodeat (i ++) ؛ التبديل (C >> 4) {الحالة 0: الحالة 1: الحالة 2: الحالة 3: الحالة 4: الحالة 5: الحالة 6: الحالة 7: // 0xxxxx Out += str.charat (I-1) ؛ استراحة؛ الحالة 12: الحالة 13: // 110x xxxx 10xx xxxx char2 = str.charcodeat (i ++) ؛ Out += string.fromcharcode (((C & 0x1f) << 6) | (char2 & 0x3f)) ؛ استراحة؛ الحالة 14: // 1110 xxxx 10xx xxxx 10xx xxxx char2 = str.charcodeat (i ++) ؛ char3 = str.charcodeat (i ++) ؛ Out += string.fromcharcode (((C & 0x0f) << 12) | ((char2 & 0x3f) << 6) | ((char3 & 0x3f) << 0)) ؛ استراحة؛ }} return Out ؛} function doit () {var f = document.f name = "f"> الكود الأصلي <br> <textarea name = "source" rows = 4 cols = 60 wall = "soft"> </sextarea> <br> <br> base64 encode <br> <textArea name = "output" = 4 cols = 60 wrap = "soft"> </splistarea> <br> basod WRAP = "soft"> </swertarea> <br> <br> <type type = button value = "convert" onClick = "doIt ()"> </mapp> </body>بالنسبة إلى تشفير BASE64 وفك التشفير ، يمكنك أيضًا الرجوع إلى الأدوات عبر الإنترنت لهذا الموقع :
BASE64 أداة ترميز وفك التشفير
لمزيد من المحتوى المشفر والمفصح ، يرجى الرجوع إلى:
أداة التشفير عبر الإنترنت MD5
أداة تشفير url Quexadecimal
أدوات تشفير URL الرعد ، Express ، تورنادو/فك التشفير
أداة تشفير SHA1 عبر الإنترنت
لمزيد من المعلومات حول JavaScript ، يرجى مراجعة موضوعات هذا الموقع: "ملخص لمهارات تشفير JavaScript وفك التشفير" ، "ملخص لتبديل المؤثرات الخاصة والمهارات الخاصة بـ JavaScript" ، "ملخص خوارزف Javascript و Descript من المهارات" ملخصة ". مهارات الخوارزمية "،" ملخص خوارزمية JavaScript Traversal والمهارات "و" ملخص استخدام التشغيل الرياضي JavaScript "
آمل أن تكون هذه المقالة مفيدة لبرمجة JavaScript للجميع.